**Business Process Modeling Notation** - a graphical approach to modeling & representing business processes. BPMN is a standard by the [[Standards Groups]]. It is very descriptive and can be used to model very complicated processes.
A good example, from [[Fundamentals of Business Process Management|Fundamentals of BPM]] book, illustrating the use of:
- Labeled start & end event
- Main 3 [[#Gateways]]
- [[#Business Objects]] & stateful objects
- Textual annotation (the left bracket syntax)
![[IMG_6187.jpg]]
Part of this power comes at the cost of [[simplicity]], as there are **116 unique elements to the most-current standard** (2.0), which makes BPMN difficult to interpret, thereby undermining a primary value proposition for the technique. There are a couple different [[Modeling Purposes]], and BPMN sits in a bad spot.
Unless you're building machine-interpretable BPMN flows, I don't really see value in learning anything but the absolute basics of BPMN. However, using a small subset of the standard in conjunction with an on-diagram legend could be a valid method for representing processes to those not well-versed in the language.
BPMN is functionally similar to [[IDEF0]] and [[IDEF3]] from the [[IDEF]] family ([[IDEF]]), or [[Activity Diagrams]] from the world of [[UML]]/[[SysML]].
# High Value Symbology
## Control Flow
Similar to learning to code, the first things shown to you in the [[Fundamentals of Business Process Management]] book is the basics of control flow.
### Gateways
- Gateways exist to make **and**, **or**, and **xor** explicit when processes fork (or join)
- Similar to [[XML]], gateways are used on opening & closing forks in the pathway - and their types must match[^1]
![[Pasted image 20250824222257.png]]
### Loops
- Loops are drawn using **XOR**s and literally drawn _loops_
![[IMG_1546.png]]
## Objects & Resources
### Business Objects
- Physical and data artifacts may be input to a process or an output of a process
- Unlike [[IDEF0]] there is no semantics as to the role of the needed input (e.g. no indication of its a mechanism that will endure or an input that will be consumed/modified)
- When you include objects, BPMN diagrams become more like [[Data Flow Diagram|DFD Diagrams]]
### Resources (Swimlanes)
- The only way BPMN represent what [[IDEF0]] calls [[IDEF0#Mechanisms]] are via Swimlanes (and pools[^2])
## Sub-processes & Calls
- [[Decomposition Understanding]]
- The little boxed "+" indicates you could "drill into" the process which is defined elsewhere in this model
- A boxed "+" and bold outline on the process indicates you can "drill into" the process but that it's owned by another model
![[Pasted image 20250824233415.png]] [^3]
## Annotations
- Exist. Textual. Dotted line with left bracket.
- Carry no semantic meaning - not interpretable by machines
## Events
- Events are denoted with circles, often with [[Arbitrary Distinction|arbitrary symbols]] in them that carry a semantic but completely non-obvious meaning
- Symbols cheat sheet / demonstration of uninuitiveness:
![[IMG_1547.jpeg|600]]
## Other Mechanisms Included
- Alternative ways of depicting loops
- Throwing & catching of exceptions
- Activity timeout nomenclature (i.e. how one event should affect the execution of processes it occurs during)
- Boundary events - placement of event markers on the bounding box of an activity (like a port in [[SysML]]) to indicate "if this event occurs during the execution of this process, follow these lines"
- I don't mind this one. Seems useful.
- "Compensation" in BPMN does not mean "payment", it's more like "make up for a thing that went wrong"
****
# More
## Source
- [BPMN Specification - Business Process Model and Notation](https://www.bpmn.org/)
- [[Fundamentals of Business Process Management]]
- https://camunda.com/bpmn/reference/
## Related
- [[UML]]
- [[Diagram Types (index)]]
[^1]: unless you hit a "end of process" in one of the forks before they re-join
[^2]: which are just swimlanes. They don't get credit for both of these things.
[^3]: Fun fact: in this note I included images using 4 separate techniques