基本控制流模式之2 : 平行分支
描述
分支成一个分支成两个或两个以上并行的分支,每个分支是并行进行的。
同义词
AND分支,并行路由, 平行分支/分叉
示例
比如,某高校完成招生活动后,同时开办学生档案和确认报名活动。又如,当一个入侵警报收到并触发派遣巡逻活动,并通知警方立即活动。再如,当客户一旦为货物付款,那么商家就将发出帐单,并同时为客户包寄货物。
动机
平行分支模式允许单个节点被分叉成两个或两个以上的同步执行,而且 ,这些分支在将来的一段时间内将可能或者不会再同步。
背景
图 2 描述了平行分支的执行,活动A完成后,两个不同线程的执行被初始化成活动B和C,它们能够并发执行。

图2:平行分支
实现
在所有评审过的产品中,平行分支模式存在着隐式和显式两种流程模型。如果它是显式的, 那么平行分支是通过一个前驱和两个或两个以上的节点来构造的。 如果它是隐式的, 则是通过如下两种方式之一来实现:
1 )控制流可以分成两个(或两个以上)不同分支。
2 )平行分支所触发的活动,并没有任何附带条件。
在下列已经评审或的产品中, Staffware、 WebSphere MQ、 FLOWer、 COSA and iPlanet代表着隐式构造模式 ,SAP Workflow、 EPCs and BPEL则通过显示的分支构造器来实现, UML 2.0 ADs、 BPMN and XPDL则允许以上两种实现方式。
问题
尚未定义
解决方案
N/A.
评价标准
任何产品都全力支持这一模式,均提供了一种构建方式(不论明示或暗示),允许在某个流程节点的线程控制模型,它可以被分成两个或两个以上分支,并且是并行地分支。
产品评价
•达到某+评级,在工作流引擎必须证明它符合每一个具体的标准。
•实现+ / -评级,它至少必须符合所列标准之一。
•以上二者评级如果能不能达到,则被评定为级别- 。
