理论Petri网和BPMN工作流之间到底有什么区别?

9

有理论的Petri网:

http://en.wikipedia.org/wiki/Petri_net

还有以BPMN 2.0表示的工作流程。

它们之间到底有什么区别?我问这个问题是因为我们想简化用BPMN建模的业务流程(普通人不关心/不使用它),并将其更改为在智能手机上使用的“一维”形式(如清单),并具有大量基于图形的钩子连接到清单中的其他步骤。我们的风险投资名为Tallyfy - https://tallyfy.com

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

3个回答

11

彼得里网(Petri nets)是建模地点/转移流程的基本概念。如今,据维基百科所述,彼得里网在描述分布式系统方面可能主要用于学术界和/或低级计算机科学/软件开发。

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网(或:工作流网)可以有助于确定数学属性,如可达性(reachability)


4
Petri网是用网络元素描述系统的一种方法。有四种类型的网络元素:位置、变迁、输入和输出。输入将一个位置连接到一个变迁。输出将一个变迁连接到一个位置。网络元素可能有零个或多个注释。注释可以是任何类型的信息。
例如,考虑具有以下属性注释的Petri网:1)每个位置元素都有一个标记(可以是大于或等于零的任意数量),2)每个变迁都有一个状态(可以是真或假),3)每个输入都有一个状态(可以是真或假)和一个权重(可以是大于或等于零的任意数量),以及4)每个输出都有一个权重(可以大于零)。
此外,每个输入都有一个状态更新逻辑:如果输入的权重大于或等于位置的标记,则状态为真;否则,状态为假。每个变迁也有一个状态更新逻辑:如果变迁的每个输入的状态都为真,则变迁的状态也为真。
此外,每个输入都有一个位置标记更新逻辑:(输入)位置的标记等于位置的标记减去输入的权重。每个输出都有一个位置标记更新逻辑:(输出)位置的标记等于位置的标记加上输出的权重。每个变迁都有一个位置标记更新逻辑:调用变迁的每个输入和输出的位置标记更新。
此外,每个网络元素都有一个图形显示注释:位置是圆形,变迁是正方形,输入是从圆形到正方形的箭头,输出是从正方形到圆形的箭头。如果位置的标记为1,则为一个黑点;如果位置的标记为2,则为两个黑点;等等。如果变迁的状态为真,则为绿色。如果变迁的状态为假,则没有颜色。
上述大部分注释是在几年内由多位Petri网研究人员定义的。Carl Adam Petri确定了网络元素,提出了注释系统,并定义了具有实际应用的第一组注释。Anatol Holt创造了“位置”、“变迁”、“输入”、“输出”和“Petri网”的术语。Holt在许多方面也对“Petri网”的发展做出了贡献。
我使用网络元素来组织需求或计算机程序。需求或计算机程序作为注释添加到网络元素中。
可以将BPMN的符号视为可用于查看Petri网的“高级”符号。

2

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接