BPMN sequence and message flows

The two line types are the most commonly misused part of BPMN. A sequence flow is control within one pool; a message flow crosses between pools.

Getting this wrong makes a diagram that looks fine and is formally meaningless.


#When it matters

  • Any diagram with more than one pool.

  • Processes involving a customer, a supplier or an external system.


#The symbols

Symbol

Means

Sequence flow

Solid arrow, filled head. Order within a single pool.

Conditional flow

Solid arrow with a small diamond at its source.

Default flow

Solid arrow with a slash near its source.

Message flow

Dashed arrow, open head. Between pools, never within one.

Association

Dotted line. Links an artifact to a flow element.


#A few things that catch people out

  • Sequence flow can never cross a pool boundary. If you have drawn one that does, it should be a message flow.

  • Message flow can never connect two elements in the same pool.

  • The default flow is what happens when no condition matches. Without it, a gateway can stall.



Sequence flow stays inside the pool.