Petri Nets
A mathematical model of concurrent systems that underlies the theory behind many modern BPM notations.
Origins
Petri nets were developed by the German mathematician Carl Adam Petri in his 1962 doctoral dissertation. Originally this was a purely mathematical model of concurrent distributed systems, not meant for business modeling.
In the 1990s, however, Petri nets became the theoretical basis for formalizing many BPM notations, including parts of UML and BPMN.
The basic model
A Petri net consists of:
- Places — drawn as circles, representing states
- Transitions — drawn as rectangles, representing events
- Arcs — connecting places to transitions and vice versa
- Tokens — drawn as dots inside places, representing the presence of conditions
A transition “fires” when all of its input places hold tokens. After firing, the tokens move to the output places.
Relationship with BPMN
The token semantics in BPMN is borrowed directly from Petri nets. A formal proof of the correctness of a BPMN model often requires transforming it into an equivalent Petri net.
There are extensions of Petri nets — Coloured Petri Nets (CPN), Workflow Nets (WF-nets) — specifically adapted for modeling business processes.
Use in BPM
Direct use of Petri nets in industrial projects is rare. Their niche is the theoretical basis of process mining (process discovery), the formal verification of models, and academic research. The well-known ProM platform for process mining works precisely with Petri nets.
Limitations
- A high entry barrier for a non-technical audience
- Not meant for communicating with the business
- Weak tooling support for applied tasks