Aalst提出了工作流有20种基本模式。
如果不知道的可参考附件《Workflow Patterns-2002.pdf》
(当然了,后人陆续扩展、变化,模式数量不断变化,但万变不离其宗,可从这些基本模式看起)
下面是我的初步分析:
模式名称
|
模式关键字
|
模式说明
|
Basic Control Patterns
|
Sequence
|
Sequence
|
1
|
Parallel Split
|
AND Split
|
2
|
Synchronization
|
AND Join
|
3
|
Exclusive Choice
|
XOR Split
|
4
|
Simple Merge
|
XOR Join
|
5
|
ADVANCED BRANCHING AND SYNCHRONIZATION PATTERNS
|
Multiple Choice
|
OR Split
|
6
|
Synchronizing Merge
|
AND Join
|
7
|
Multi-merge
|
OR Join(+Multi)
|
8,
|
Discriminator
|
OR Join(+Reset/Ignore)
|
9
|
N-out-of-M-join
|
OR Join(+Multi M)
|
9a,N分支,M聚合即可
|
STRUCTURAL PATTERNS
|
Arbitrary Cycles[自由循环]
|
XOR Split
|
10
|
Implicit Termination
|
Multi(OR/AND) Split End
|
11
|
PATTERNS INVOLVING MULTIPLE INSTANCES
|
MI without synchronization
|
Runtime independent thread by condition
|
12,在运行期创建独立实例(线程、程序等)
|
MI with a priori known design time knowledge
|
Design time priori Instance
|
13,设计期多实例,且需全部完成
|
MI with a priori known runtime knowledge
|
Runtime multi Instance by condition/free
|
14,运行期可基于条件创建多实例
|
MI with no a priori runtime knowledge
|
Runtime multi Instance free by people
|
15,运行期可手工随意创建多实例
|
STATE-BASED PATTERNS
|
Deferred Choice
|
XOR Split(By choice)
|
16,“推着走”流程,或基于既定条件分支
|
Interleaved Parallel Routing
|
OR Split + OR Join, Parallel
|
17,多分支聚合,分支执行顺序由运行期确定
|
Milestone
|
Wait by Milestone
|
18,在“里程碑”节点等待
|
CANCELLATION PATTERNS
|
Cancel Activity
|
Cancel in specified Activity
|
19,在指定的活动取消
|
Cancel Case
|
Cancel Anywhere/Anytime
|
20,任意时候可取消
|
可以看到,其实很多是类似的,这为下一步的工作流引擎需求、设计打下基础。
抛砖引玉,供大家参考。
分享到:
相关推荐
1. **顺序流模式**:这是最基本的工作流模式,任务按照预定义的顺序依次执行。例如,一个文档从创建到审批,再到发布,每个步骤按顺序进行。 2. **分支/合并模式**:当决策点出现时,流程可能根据特定条件分支到...
顺序、分支、汇聚是 FireWorkflow 3 中三种基本的工作流模式。 1. 顺序流程 顺序流程指的是流程元素之间的顺序关系,例如 Activity A -> Activity B -> Activity C。 2. 分支流程 分支流程指的是流程元素之间的...
首先,我们来了解一下工作流的基本概念。工作流是指在组织内部或跨组织之间,通过定义、执行和控制一系列任务或活动的有序流程,这些任务或活动通常涉及不同角色的人或系统。工作流管理系统(Workflow Management ...
本文档基于《工作流管理联盟规范WFMC——工作流参考模型》的部分内容,旨在深入探讨工作流的基本概念、发展历程及其在实际中的应用模式。通过本篇分析,读者可以更全面地理解工作流系统的构建原理以及其在业务自动化...
1. **支持20种工作流模式**:研究结果表明,基于着色Petri网的工作流建模语言能够很好地支持由Wil van der Aalst提出的20种工作流模式。这其中包括了基本的控制流模式(如顺序执行、并行执行)以及高级模式(如多重...
首先,我们要理解工作流的基本概念。工作流通常由一系列任务组成,这些任务按照特定顺序执行,并可能涉及不同角色或部门的交互。在PHP中实现工作流,需要设计数据模型来存储流程状态、任务信息以及参与者信息。这个...
首先,我们需要理解工作流的基本概念。工作流是指一系列相互关联并有特定顺序的任务,这些任务由一个或多个参与者执行,以完成一个明确的目标。在C#中,我们可以使用设计模式如状态机或者活动图来表示和执行工作流。...
工作流回退是一种在工作流管理系统中常见的操作,它允许用户将流程实例回滚到先前的状态,以便纠正错误或响应业务需求...通过理解这些模式,开发者和业务分析师能够更好地设计和优化工作流,以适应各种复杂的业务场景。
工作流是一种组织内业务流程自动化的方法,用于定义、执行和管理一系列有顺序的活动,这些活动可以是人或系统执行的。在IT行业中,工作流技术广泛应用于企业信息系统,如ERP、CRM等,以提高效率,减少错误,并实现...
工作流是一种用于自动化业务流程的技术,它在IT领域中扮演着至关重要的角色,尤其是在企业级应用中。本资源集合提供了一份详细的工作流实例,包括完整的C#工作流系统源码和一篇研究生毕业论文,这对于深入理解和实践...
首先,我们需要理解工作流的基本概念。工作流是指一系列相互关联的任务或活动,这些任务按照一定的规则和顺序进行,以完成一个特定的业务过程。在Web应用中,工作流通常用于审批流程、订单处理、项目管理等场景。...
Git作为一种流行的版本控制系统,被...对于Git初学者来说,理解这些工作流的基本概念和操作实践是快速融入团队并参与项目的前提。对于有经验的开发者,也可以从中得到灵感,优化现有的工作流程,提升团队协作的效率。
在提供的压缩包文件"Workflow"中,可能包含了C#源码实现的工作流示例,这些示例可以帮助我们更好地理解上述知识点,并在实际项目中应用工作流技术。通过学习这些源码,开发者可以进一步掌握如何在C#环境中设计、实现...
首先,理解工作流(Workflow)的基本概念至关重要。工作流是指一个组织内或跨组织的业务过程,由一系列相互关联的任务组成,这些任务可能涉及不同的人员、部门或系统。工作流引擎则是驱动这个过程自动化的核心组件,...
工作流系统是现代企业信息化管理中的重要组成部分,它主要用于自动化业务流程,提高工作效率,确保...通过深入研究这些文件,不仅可以掌握工作流管理的基本概念,还能获得实践经验,提升开发和实施工作流系统的技能。