BPMN Motivation
Explanation
Section titled “Explanation”BPMN (Business Process Model and Notation) is a standard way to draw business processes. Its notation builds on flowcharting. It looks very similar to UML activity diagrams (see the article on the Unified Modeling Language).
Why the notation aims at software
OMG, the standards body that maintains BPMN, sets a clear goal. A BPMN diagram must be precise enough to translate into software process components. A diagram is therefore more than a picture. Software can act on it.
One artifact for drawing and running
A BPMN process is an XML document with a visual representation. XML is a plain, structured text format. Because the diagram sits in this document, tools can exchange it and engines can execute it.
BPMN 2.0 came out in January 2011 and added execution semantics. In plain terms, it defined what a process means when software runs it.
Standards and ownership
BPMI first developed BPMN. OMG has maintained it since the two organizations merged in 2005. BPMN is also ratified as ISO standard 19510. The article on the history of BPMN has more.
Relation to other notations
An EPC model (event-driven process chain, another process notation) can be transformed into BPMN with only a slight loss of information. The article on process notations compares EPC, BPMN and UML activity diagrams.
Example
Section titled “Example”A company draws its order process in a BPMN tool. Business staff review the diagram. The tool saves it as an XML file. Another tool opens the same file, and a workflow engine runs it. Nobody redraws the process for each audience.
Trade-offs
Section titled “Trade-offs”BPMN is very close to UML activity diagrams, so the two can look alike. The choice between them needs a closer comparison (see the article on process notations). Moving from EPC to BPMN loses a little information. Execution only became part of BPMN with version 2.0, so older models may lack it.
Diagram source
<?xml version="1.0" encoding="UTF-8"?><bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_1" targetNamespace="http://example.org/bpmn"> <bpmn:process id="Process_1" isExecutable="true"> <bpmn:startEvent id="Start" name="Order received"> <bpmn:outgoing>F1</bpmn:outgoing> </bpmn:startEvent> <bpmn:task id="Check" name="Check order"> <bpmn:incoming>F1</bpmn:incoming> <bpmn:outgoing>F2</bpmn:outgoing> </bpmn:task> <bpmn:endEvent id="End" name="Order checked"> <bpmn:incoming>F2</bpmn:incoming> </bpmn:endEvent> <bpmn:sequenceFlow id="F1" sourceRef="Start" targetRef="Check" /> <bpmn:sequenceFlow id="F2" sourceRef="Check" targetRef="End" /> </bpmn:process> <bpmndi:BPMNDiagram id="BPMNDiagram_Process_1"> <bpmndi:BPMNPlane id="BPMNPlane_Process_1" bpmnElement="Process_1"> <bpmndi:BPMNShape id="BPMNShape_Start" bpmnElement="Start"> <dc:Bounds x="80" y="102" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="68" y="143" width="60" height="28" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_Check" bpmnElement="Check"> <dc:Bounds x="216" y="80" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_End" bpmnElement="End"> <dc:Bounds x="416" y="102" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="408" y="143" width="53" height="28" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="BPMNEdge_F1" bpmnElement="F1"> <di:waypoint x="116" y="120" /> <di:waypoint x="216" y="120" /> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="BPMNEdge_F2" bpmnElement="F2"> <di:waypoint x="316" y="120" /> <di:waypoint x="416" y="120" /> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram></bpmn:definitions>Checks
Section titled “Checks”- The document states which BPMN version is used, and execution is only assumed for version 2.0 or later.
- Process models are stored as BPMN XML so tools can exchange them.
- Models that are meant to run are precise enough to translate into software process components.
Related
Section titled “Related”- History of BPMN
- Process Notations Comparison (EPC, BPMN, UML Activity Diagram)
- BPMN 2.0 Notation
- Unified Modeling Language (UML)
- Foundation for Execution
- BPMN Modeling Tool
- BPMN as Modeling Language, Not Method
Sources
Section titled “Sources”- Business Process Model and Notation - Wikipedia — en.wikipedia.org, accessed 2026-11-08
- About the Business Process Model and Notation Specification Version 2.0.2 — omg.org, accessed 2026-11-09
- BPMN primer | Camunda 8 Docs — docs.camunda.io, accessed 2026-11-08