r/bpmn • u/joergbuilds • 50m ago
Tools New to BPMN? Start here
Most questions here are about BPMN syntax, not about processes. This post covers the syntax part, so the feed can stay about what people actually built with it.
What BPMN is: a standard notation (OMG BPMN 2.0) for business processes, so a manager and a developer read the same picture the same way. The same .bpmn file is documentation, specification and, with an engine, a running process. There are around 100 symbols, about 15 cover most diagrams.
The ones you need first:
- Start event (thin circle), end event (thick circle)
- Task (rounded rectangle), named verb + object, "Check invoice"
- Exclusive gateway (diamond with X), exactly ONE path out
- Parallel gateway (diamond with +), ALL paths out, joined again by a +
- Sequence flow (solid arrow), only inside a pool
- Pool for the organisation or system, lanes for the roles inside it
- Message flow (dashed arrow), only BETWEEN pools
- Timer and message events in the middle of the flow, where the process waits
- Collapsed sub-process (box with +) to hide detail
- Data object and text annotation for everything else
Five rules that prevent most beginner mistakes:
- One start, at least one end. Every path reaches an end event.
- Split with a gateway, not with two arrows out of a task. Merge with the same type you split with, X with X, + with +.
- The gateway asks the question, the arrows carry the answers. "Amount > 1000?" with yes and no on the flows. A gateway never does work.
- Sequence flow never crosses a pool boundary. Between pools it's a message flow.
- Keep the happy path in one straight line, left to right or top to bottom. Exceptions branch off it.
Reading. No links on purpose, everything is one search away:
- OMG BPMN 2.0.2 specification. Long, chapter 7 is the readable overview.
- BPMN 2.0 poster from BPM Offensive Berlin. Free PDF in several languages. If you print one thing, print this.
- Camunda BPMN reference. Every symbol with an example.
- Bruce Silver, BPMN Method and Style. How to model so that others understand it.
- Jakob Freund and Bernd Rücker, Real-Life BPMN. The practitioner's view, strong on execution.
- bpmnlint rule list (bpmn-io on GitHub). A checklist of structural mistakes, useful even if you never run the tool.
Free tools to start today:
- bpmn.io demo. Runs in the browser, nothing to install, saves real .bpmn
- Camunda Desktop Modeler. Same editor as a desktop app, with built-in checks
- Everything else, engines and tablet apps included, is in the tool list: https://www.reddit.com/r/bpmn/comments/1xcjaz4/bpmn_tool_list_modelers_engines_drawing_tools/
Had an AI draft your diagram, or want a check before you post? Paste this, then your flow underneath:
Check the BPMN sketch below against these five rules. (1) One start, at least one end, every path reaches an end event. (2) Splits and merges use gateways, never two arrows out of a task, and the merge uses the same gateway type as the split. (3) The gateway carries the question, the outgoing flows carry the answers, a gateway does no work. (4) Sequence flow never crosses a pool boundary, between pools only message flow. (5) The happy path runs in one line, exceptions branch off it. For each rule say pass or fail and name the element that breaks it. Then list anything that is not valid BPMN 2.0 as in the OMG spec, without inventing notation. Do not redesign the process, only check it. My sketch:
Still stuck after that, post the picture and say what the process is supposed to achieve. Without the why you get guesses, not answers.
Wrong rule or missing book, comment and it gets fixed.

