工作流与k2bpm的实现1.docxVIP

  • 1
  • 0
  • 约3.81千字
  • 约 8页
  • 2018-12-29 发布于上海
  • 举报
工作流与k2bpm的实现1

背景 ??? 工作流产品众多,而它们之间又缺乏统一的标准,使得不同的产品之间很难实现协同工作。为了解决这一问题,工作流管理联盟(WFMC)于1993?年成立,并提出了工作流参考模型,制定了五个标准接口。 其中有一个接口是过程定义接口。几乎每个工作流产品都有自己的过程定义语言(也称为工作流语言),可以从四个方面(控制流、数据流、资源、操作)来研究流程,工作流模式(Work Flow Pattern)只是涉及到其中的控制流部分。控制流(control flow)描述了活动在不同结构中的执行顺序。控制流对我们有效认识、理解工作流规范具有很大帮助。工作流规范需要不断地扩展,以便满足新的需求,因此有必要对控制流进行基础的认识和分析。 模式总述 ????工作流模式系统化地表述了基本的和复杂的结构。模式(pattern)是从具体形式中抽象出来的。面向对象的设计模式,规定了不依赖于具体的实现技术,同时也不依赖于所在领域的基本需求。 Carl Adam Petri基于Petri网原理提出的21个工作流模式,用于工作流过程建模和分析。这些模式,仅限于静态控制流,而不考虑资源分配、实例控制、异常处理和事务管理。 ? 支持工作流模式 过程种类 基础控制过程 (Basic Control Patterns) 顺序(Sequence) 并行分支(Parallel Split) 同步(Synchronization) 排他选择(Exclusive Choice) 简单合并(Simple Merge) 高级分支和同步过程 (Advanced Branching and Synchronization Patterns) 多路选择(Multiple Choice) 多路合并(Multiple Merge) 同步合并(Synchronizing Merge) 鉴别器(Discriminator) M中N鉴别(N out of M) 结构化过程 (Structural Patterns) 任意循环(Arbitrary Cycles) 隐式终止(Implicit Termination) 多实例过程 (Patterns Involving Multiple Instances) 非同步多实例(MI-without Sync) 在设计期间预先确定的多实例(MI with a Priori Design Time Knowledge) 在运行期预先确定的多实例(MI with a Priori Runtime Knowledge) 无法在运行期预先确定的多实例(MI without a Priori Runtime Knowledge) 过程状态 (State-based patterns) 延期选择(Deferred Choice) 交叉并行路由(Interleaved Parallel Routing) 里程碑(Milestone) 过程取消 (Cancellation Patterns) 取消任务(Cancel Activity) 取消流程(Cancel Case) ?? K2 Blackpearl ???????K2 Blackpearl?是SourceCode公司基于.NET WF构建的流程开发平台的核心产品。代码可支持生成WF代码,流程设计环境使用WPF构建,并完全嵌入到VS 2005中,与微软产品紧密结合。 ????K2 blackpearl?包括业务流程管理与工作流性能。可以通过建立应用来管理业务流程并使其自动化,或者集业务流程、人员、服务、信息和系统于单一的应用,从而帮助推动业务发展。 ? 基础控制过程? ? 这五个模式的共同点在于:模式所涉及流程的执行路径是在 HYPERLINK /kongxincai008/admin/javascript:; \t _self 设计时即可确定的,不需运行时的信息。包括:Sequence(顺序模式)、Parallel split(并行分支模式) 、Synchronization(同步模式)、Exclusive choice(排他选择) 、Simple merge(简单合并模式)。? ??1?顺序(Sequence)? 描述:? ? ? ? ? ? 工作流中的各个活动在同一个进程中按顺序依次执行。 案例:? ? ? ? ? ? “用户付款”后才能进行“发送货物”。 ?K2实现: ? 2?平行拆分(Parallel Split)? 描述: ? ? ? ? ? 工作流中从一个线程中的一个点拆分为在多个线程中平行执行的多个活动。这些平行的活动之间没有关联,执行没有顺序关系。 案例:? ? ? ? ? ?“用户付款”后激活了“发送货物”以及“通知用户”的执行。 K2实现: ? ?3?同步(Synchronization)?

文档评论(0)

1亿VIP精品文档

相关文档