Process Model Complexity
Explanation
Section titled “Explanation”A process model is a diagram that shows how work flows through an organization. Its job is to help people discuss and remember a process. So it must be easy to read and understand. A model can be correct and complete and still fail at this, because it is too complicated.
Where complexity comes from
Research shows that larger process models are harder to understand. Measures of a model, such as its size and structure, correlate with how well people understand it. Data objects are one example of clutter. Too many of them overload a diagram, so show only the most important data aspects.
How to reduce it
- Decompose. Split a large model into smaller subprocess models. This makes the model easier to understand.
- Choose participants carefully. For operational models, Camunda recommends a collaboration diagram with a separate pool for each participant, instead of lanes. See BPMN Collaboration Diagram and BPMN Swimlane (Pool and Lane).
- Follow guidelines. The Seven Process Modeling Guidelines (7PMG) come from research on how model structure relates to errors and comprehension. They are aimed at casual modelers.
- Limit data objects. Use them sparingly.
Example
Section titled “Example”Imagine a collaboration with three participants: a customer, a bank, and a registration office. One diagram shows every task, every check, and every document. Nobody can follow it. The team keeps a top-level diagram with one step per phase. Each phase opens into its own smaller subprocess diagram. Only the few data objects that matter, such as a payment confirmation, appear.
Trade-offs
Section titled “Trade-offs”Simplification must be weighed, not applied blindly. Structuredness, meaning a clean and regular model structure, is not an absolute rule for understandability. Trade-offs with other model properties exist. Splitting a model also gives you several diagrams to keep consistent.
Diagram source
<?xml version="1.0" encoding="UTF-8"?><definitions xmlns="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" targetNamespace="http://example.com/bpmn"> <process id="enrollment" isExecutable="false"> <startEvent id="s" name="Request received"> <outgoing>f1</outgoing> </startEvent> <subProcess id="pay" name="Handle payment"> <incoming>f1</incoming> <outgoing>f2</outgoing> <startEvent id="ps"> <outgoing>p1</outgoing> </startEvent> <task id="pt" name="Check payment"> <incoming>p1</incoming> <outgoing>p2</outgoing> </task> <endEvent id="pe"> <incoming>p2</incoming> </endEvent> <sequenceFlow id="p1" sourceRef="ps" targetRef="pt" /> <sequenceFlow id="p2" sourceRef="pt" targetRef="pe" /> </subProcess> <task id="reg" name="Register"> <incoming>f2</incoming> <outgoing>f3</outgoing> </task> <endEvent id="e" name="Done"> <incoming>f3</incoming> </endEvent> <sequenceFlow id="f1" sourceRef="s" targetRef="pay" /> <sequenceFlow id="f2" sourceRef="pay" targetRef="reg" /> <sequenceFlow id="f3" sourceRef="reg" targetRef="e" /> </process> <bpmndi:BPMNDiagram id="BPMNDiagram_enrollment"> <bpmndi:BPMNPlane id="BPMNPlane_enrollment" bpmnElement="enrollment"> <bpmndi:BPMNShape id="BPMNShape_s" bpmnElement="s"> <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_pay" bpmnElement="pay"> <dc:Bounds x="216" y="80" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_reg" bpmnElement="reg"> <dc:Bounds x="416" y="80" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_e" bpmnElement="e"> <dc:Bounds x="616" y="102" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="617" y="143" width="34" height="14" /> </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:BPMNEdge id="BPMNEdge_f3" bpmnElement="f3"> <di:waypoint x="516" y="120" /> <di:waypoint x="616" y="120" /> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> <bpmndi:BPMNDiagram id="BPMNDiagram_pay"> <bpmndi:BPMNPlane id="BPMNPlane_pay" bpmnElement="pay"> <bpmndi:BPMNShape id="BPMNShape_ps" bpmnElement="ps"> <dc:Bounds x="80" y="102" width="36" height="36" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_pt" bpmnElement="pt"> <dc:Bounds x="216" y="80" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_pe" bpmnElement="pe"> <dc:Bounds x="416" y="102" width="36" height="36" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="BPMNEdge_p1" bpmnElement="p1"> <di:waypoint x="116" y="120" /> <di:waypoint x="216" y="120" /> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="BPMNEdge_p2" bpmnElement="p2"> <di:waypoint x="316" y="120" /> <di:waypoint x="416" y="120" /> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram></definitions>Checks
Section titled “Checks”- Large process models are split into smaller subprocess models.
- Data objects are limited to the most important data aspects.
- Operational models use separate pools per participant rather than lanes.
- Modeling guidelines such as 7PMG are applied or consciously deviated from.
Related
Section titled “Related”- BPMN 2.0 Model Quality
- BPMN Modeling Guidelines
- Levels of Process Modeling
- BPMN Collaboration Diagram
- Complexity Reduction
- Core BPMN Element Subset
- BPMN Data Element
- Fitness for Purpose
Sources
Section titled “Sources”- AIS Electronic Library (AISeL) - ICIS 2014 Proceedings: Testing the Impact of Wand and Weber’s Decomposition Model on Process Model Understandability — aisel.aisnet.org, accessed 2026-11-09
- Creating readable process models | Camunda 8 Docs — docs.camunda.io, accessed 2026-11-09
- Understanding business process models — Eindhoven University of Technology Research Portal — research.tue.nl, accessed 2026-11-09
- Seven process modeling guidelines (7PMG) — Eindhoven University of Technology Research Portal — research.tue.nl, accessed 2026-11-09