理论Petri网和BPMN工作流程之间究竟有什么区别?

时间:2014-08-13 05:33:07

标签: workflow bpm flowchart bpmn petri-net

有理论上的petri网: http://en.wikipedia.org/wiki/Petri_net

然后那里的工作流程表示为BPMN 2.0。

究竟有什么区别?我问的原因是我们想要简化在BPMN中建模的业务流程(没有普通人关心/使用),并使其更多" 1维"用于智能手机(如清单),其中有大量额外的基于图表的钩子,用于清单中的其他步骤。我们的合资企业名为Tallyfy - https://tallyfy.com

此外 - 我们希望看看我们是否可以使用petri网作为在我们的应用程序中执行流程的更严格方式

3 个答案:

答案 0 :(得分:10)

Petri网是建模场所/过渡流的一个非常基本的概念。如今,根据维基百科描述的分布式系统,Petri网可能主要用于学术界和/或低级计算机科学/软件开发。

BPMN 2.0是一个定义业务流程建模符号及其在XML中的表示的规范。因此,BPMN 2.0超出了计算机科学/软件开发的范围。 BPMN流程在某种程度上类似于Petri网的行为。但是,BPMN 2.0提供了更全面的元素集,远远超出了单纯的位置/转换流的定义,并提供了更多的元素来表达流行为。

通过简单的元素集,Petri网被设计为在数学上形式化,而BPMN 2.0在XML中形式化(见上文)。

虽然BPMN 2.0可用于建模分布式信息系统(通常在没有人会考虑使用Petri网的情况下),但人们永远不会使用Petri网来建模业务流程。 值得注意的是,对于不了解BPMN的人来说,一个模型良好的BPMN流程是可以理解的,因为BPMN 2.0是一种高级符号,并且对流程流的直观理解相对接近。

所以:

Petri网=低级,计算机科学,数学形式化

BPMN =高级业务流程管理,以XML格式化

编辑:在BPM模拟或执行上下文中,(自动)将BPMN图映射到Petri网(或:Workflow Nets)以确定数学属性(如可达性

答案 1 :(得分:3)

Petri网是根据网络元素描述的系统。网元有四种类型:位置,转换,输入和输出。输入将位置连接到转换。输出将过渡连接到场所。网元可以具有零个或多个注释。注释可以是任何类型的信息。

例如,考虑具有以下属性注释的Petri网1)每个place元素都有一个标记(数量可以是任何大于或等于零的数字),2)每个过渡都有一个状态(一个数量,可以是真或假)3)每个输入都有一个状态(一个数量可以是真或假)和一个权重(一个数量可以是任何数字大于或等于零),和4)每个输出都有一个权重(数量可以大于零)。

此外,每个输入都有一个状态更新逻辑:如果输入的权重大于或等于该地点的标记,则状态为真;否则,状态为false。每个转换也都有一个状态更新逻辑:如果转换的每个输入的状态都为真,那么转换的状态也是如此。

此外,每个输入都有位置标记更新逻辑:(输入)位置的标记等于该位置的标记减去输入的重量。每个输出都有一个位置标记更新逻辑:(输出)位置的标记等于该位置的标记加上输出的权重。每个转换都有一个位置标记更新逻辑:调用每个输入的位置标记更新和转换的每个输出。

此外,每个网元都有一个图形显示注释:一个地方是一个圆圈,一个过渡是一个正方形,一个输入是一个圆圈到一个正方形的箭头,一个输出是一个从正方形到圆形的箭头。如果一个地方的标记是1,那就是一个黑点;如果这个地方的标记是2,那就是两个黑点;如果转换的状态为true,则为绿色。如果转换的状态为false,则它没有颜色。

上面的大部分注释都是由几位Petri Net研究人员在几年内定义的。 Carl Adam Petri确定了网元,提出了注释系统,并定义了第一组具有实际应用的注释。 Anatol Holt创造了术语“地点”,“过渡”,“输入”,“输出”和“Petri网”。霍尔特还在很多方面为“Petri网”的发展做出了贡献。

我使用网络元素来组织需求或计算机程序。要求或计算机程序作为注释添加到网络元素中。

可以将BPMN的符号视为可用于查看Petri网的“高级”符号。

答案 2 :(得分:2)

我想补充一点,您可以使用图形和Petri网理论从数学角度分析BPMN模型。