是否允许BPMN sequenceFlow引用另一个进程/子进程中的特定活动?

时间:2015-06-09 05:29:20

标签: bpmn

我正在使用BPMN 2.0对复杂流程进行建模 我已将流程拆分为多个全局流程,这些流程可以通过调用活动相互引用。

但是,在一两个特殊情况下,我想实际上直接调用其他一个进程的中间。我不想创建一个完全重复的[sub]进程,只缺少前几个节点,并且也不希望将这些节点分成它们自己的小进程。

我不认为常见的BPMN 2.0工具支持这一点,但规范明确禁止它吗?例如,我通读http://www.omg.org/spec/BPMN/2.0.2/PDF并且我没有看到它声称sequenceFlow的targetRef必须位于同一个FlowElementsContainer中的任何地方。也许这只是暗示?

1 个答案:

答案 0 :(得分:1)

这样做的正确方法是创建几个" none"在全局进程中启动事件,然后通过传入调用活动的序列流的targetRef属性引用正确的事件。该规范在p。 239:

  

"如果Process被用作全局进程(一个可调用的进程)   可以从其他进程的Call Activities中调用)   多个无启动事件,然后从流传输流   parent进程到全局进程,只有全局进程之一   将触发启动事件。 Sequence的targetRef属性   传入Call Activity对象的流可以扩展为识别   适当的开始活动。"