BPMN 2.0 Terms Explained – Process Flows

Published: September 5, 2013
Share on:

BPMN diagrams are graphs, which means that they consist of two basic types of elements: nodes and connections.

Nodes are represented with flow objects (activities, gateways, and events), data, and artifacts, whilst connections are represented with one of the BPMN connecting objects.

Most BPMN connections are directed, which means that they represent a type of flow. Graphically, a flow is represented with an arrow between elements in a process, collaboration, or choreography.

Sequence Flow

A ‘sequence flow’ is the most common BPMN flow. It is represented with a solid arrow and is used to show the order in which activities are performed in a process. Each sequence flow has only one source and only one target. A sequence flow can cross the boundaries between lanes of a pool but cannot cross the boundaries of a pool (Figure 1).

f1Normal Flow

Normal flow represents a subset of a process’s sequence flow (black arrows in Figure 2). It refers to sequence flow paths that do not start from an intermediate event attached to the boundary of an activity (red arrow in Figure 2). A normal flow originates from a start event and continues through activities on alternative and parallel paths until reaching an end event.

Exception Flow

An exception flow occurs outside the normal flow of a process and is based upon an intermediate event attached to the boundary of an activity that occurs during the performance of the process (see red arrow in Figure 2).

f2Uncontrolled Flow

Uncontrolled flows are sequence flows that proceed without dependencies or conditional expressions. They can also be flows that do not pass through a Gateway.

Accredited Training Courses

The simplest example of an uncontrolled flow is a single sequence flow connecting two activities. More commonly, an uncontrolled flow applies to multiple sequence flows that converge to (uncontrolled merge) or diverge from (uncontrolled split) an activity (Figure 3).

f3For each uncontrolled sequence flow, a token will flow from the source object, through the sequence flow, and to the target object.

Controlled Flow

Controlled flows are the opposite of uncontrolled flows. They are flows that proceed from one flow object to another via a sequence flow link but are subject to either conditions (red arrows in Figure 4) or dependencies from other flows as defined by a gateway (green arrows).


Typically, this is seen as a sequence flow between two activities, with a conditional indicator (mini-diamond) or sequence flow connected to a gateway.

Conditional Flow

A conditional flow is a subset of a controlled flow. It is a sequence flow with a condition expression that is evaluated at runtime to determine whether or not the sequence flow will be used.

If the conditional flow is outgoing from an activity, then the sequence flow will have a mini-diamond at the beginning of the connector. If the conditional flow is outgoing from a gateway, then the line will not have a mini-diamond.

Default Flow

The default flow is a special kind of sequence flow that is used in combination with conditional flows. It is ‘activated’ only if all the corresponding conditional flows are not ‘true’ at the runtime. The default flow is represented by a diagonal slash added to the beginning of a connector (Figure 5).

f5Information Flow

An information flow is not a sequence flow because it does not represent the order of activities but instead the flow of information in a process diagram.

It is modeled with a dotted arrow (data association). Alternatively, an information flow can be represented with an undirected association attached to the sequence flow (Figure 6). Information flows can be used only within a process. In the case of representing the flow of information between processes (or pools), message flows should be used.

f6Message Flow

A message flow is represented by a dashed arrow with a circle at the starting point (Figure 7). It is used to show the flow of messages between two processes ( or pools). It can be used in conjunction with BPMN elements that can send and receive messages (message events, send/receive activities, and pools).

f7Compensation Flow

A compensation flow defines the set of activities that are performed while the transaction is being rolled back to compensate for activities that were performed during the normal flow of the process (Figure 8).


Process flows represent an obligatory part of each business process diagram. Most commonly, they are used to represent the overall progression of how a process is performed. Flows can also represent how messages and information are processed in a business process.

f9The figure above represents a business process diagram, which includes different kinds of flows. Note that all solid arrows represent sequence flows.

More Free Resources