What is the difference between a theoretical Petri net and a BPMN workflow?

There are theoretical Petri nets: http://en.wikipedia.org/wiki/Petri_net

And then there are workflows expressed as BPMN 2.0.

What is the difference? The reason I ask is because we want to simplify the business processes modeled in BPMN (which no average person cares about / uses) and make it more "1 dimensional" for use on smartphones (for example, the control list) with a ton of additional graphic bindings to other stages of the checklist. Our company is called Tallyfy - https://tallyfy.com

In addition, we want to find out if we can use Petri nets as a more rigorous way to execute processes in our application.

+5
source share
3 answers

Petri nets are a very simple concept of modeling place / transition flows. Currently, Petri nets are probably mainly used in academia and / or low-level computer science / software development, according to Wikipedia, for describing distributed systems.

BPMN 2.0 is a specification that defines the notation of modeling business processes and its presentation in XML. Thus, BPMN 2.0 surpasses the field of development of computer science / software. The BPMN process process is somewhat similar to the behavior of Petri nets. However, BPMN 2.0 provides a more complete set of elements and goes far beyond defining simple place / transition flows and offers a wider set of elements to express flow behavior.

With their simple set of elements, Petri networks are designed for mathematical formalization, while BPMN 2.0 is formalized in XML (see above).

Although BPMN 2.0 can be used to model distributed information systems (usually in a situation where no one will look at Petri networks), it will never use Petri networks to model business processes. It is important to note that a well-designed BPMN process is understandable to people who do not know BPMN, since BPMN 2.0 is a high-level notation and is relatively close to an intuitive understanding of the process flow.

So:

Petri nets = low, computer science, mathematically formalized

BPMN = high-level business process management formalized in XML

Edit: In a BPM simulation or execution context, it may be useful (automatically) to display BPMN diagrams in Petri Nets (or: Workflow Nets ) to determine mathematical properties, such as availability.

+9
source

A Petri Net is a description of the system in terms of network elements. There are four types of network elements: location, transition, entry and exit. An entrance connects the place with the transition. An exit connects the transition to a place. The net element may have zero or more annotations. Annotation can be any type of information.

For example, consider a Petri net with the following annotations of properties: 1) each element of a place has a sign (an amount that can be any number greater than or equal to zero), 2) each transition has a status (an amount that can be true or false), 3 ) each input has a status (an amount that can be true or false) and weight (an amount that can be any number greater than or equal to zero), and 4) each output has a weight (a value that can be greater than zero).

In addition, each input has a state update logic: if the input weight is greater than or equal to the location value, the status is true; otherwise the status will be false. Each transition also has a state update logic: if the state of each transition input is true, then the transition state is also true.

In addition, each input has a logic for updating the place label: the location mark (input) is equal to the value of the place minus the weight of the input. At each exit there is a logic for updating the place label: the label of the (output) place is equal to the sign of the place plus the weight of the exit. Each transition has a logic for updating the place label: call the update of the place label of each entrance and each exit of the transition.

In addition, each network element has an annotation of the graphic display: the place is a circle, the transition is a square, the input is an arrow from a circle to a square, and the output is an arrow from a square to a circle. If the place sign is 1, this is one black dot; if the place sign is 2, these are two black dots; etc. If the transition status is correct, it is green. If the transition status is incorrect, it has no color.

Most of the above annotations have been identified by several Petri Net researchers over the course of several years. Karl Adam Petri defined the elements of a network, proposed a system of annotations, and defined the first set of annotations that have practical applications. Anatol Holt coined the terms "place", "transition", "entrance", "exit" and "petri net." Holt also contributed greatly to the development of Petri nets.

I use network elements to organize requirements or computer programs. Requirements or computer programs are added as annotations to network elements.

You can consider BPMN notation as a โ€œhigh levelโ€ notation that you can use to view your Petri net.

+3
source

I would add that you can use graphs and theories of Petri nets to analyze BPMN models from a mathematical point of view.

+2
source

Source: https://habr.com/ru/post/1200185/


All Articles