BPMN Notation

BPMN NOTATIONS

A major goal for the development of BPMN was to create a simple and understandable notation for creating Business Process models, while providing the semantics and underlying mechanisms to handle the complexity inherent in Business Processes.

The approach taken to handle these two conflicting requirements was to organize the graphical aspects of the notation into specific categories. This provides a small set of notation categories so that the reader of a BPMN diagram can easily recognize the basic types of elements and understand the diagram. The various basic BPMN shapes are shown in the table below:

Within the basic categories of elements, additional variation and information can be added to support the requirements for complexity without dramatically changing the basic look and feel of the diagram. In the following sections, we will illustrate how the BPMN shapes are used in various end-to-end BPMN models.

Flow and Connecting Objects

Flow elements refer to elements that are connected together to form a complete process flow. Connectors that connect the flow elements are called connecting objects. Readers of BPD follow the flow of elements to see how a business process gets executed and completed.

As mentioned before connecting objects are used to define the information flows that link processes. There are two main types of flow, namely sequence flow and message flow.

Sequence Flow

A Sequence Flow is used to show the order that activities will be performed in a Process.

In a process model, the connection between tasks shows a logical sequence. It is not a work schedule that describes how a task is carried out in time and the start/finish relationships that can exist between tasks.

Sequence is generally defined for an actor (or actor role) and so typically, it is not expected that sequence flows will cross the boundary of a pool (although they can cross the boundaries of lanes within a pool).

Message Flow

A Message Flow however is generally used to pass a message, or a set of information, across a pool boundary.

Since BPMN aims to show the flow of activities, it uses four different kinds of connecting objects that show how the activities are related to each other:

Task Markers

In addition to those various types of tasks, we can mark tasks as loops, multiple instances, or compensations. Markers can be combined with the assigned types.

Data Objects and Artifacts

One of the common characteristics of traditional modeling techniques is to allow the modeling of data to be created, read and updated during the execution of a process. A classical example would be Data Flow Diagram (DFD). Although BPMN is not primarily designed for data modeling, there is still a set of notations that lets you model the data involved in a business process.

Artifacts

Artifacts are used to provide additional information about the Process. They can be used either to elaborate a process or the connection between processes by identifying the data provision (through a data object) or to annotate a process or connection with firther useful description.

Artifacts are associated with a process or connection by an association connection which is a dashed line. Associations may be directed with a direction arrow or not. In the case of IDM, the convention is that data objects represent functional parts and should therefore be directed.

Data Objects

Data Objects are considered to be artifacts because they do not have any direct effect on the Sequence Flow or Message Flow of the Process, but they do provide information about what activities require to be performed and/or what they produce.

BPMN Event and Event Triggers

Event are signals that something happens – this includes the start and end of a process as well as any interaction with the process’ environment.

Events

An event is something that “happens” during the course of a business process. These events affect the flow of the process and usually have a cause (trigger) or an impact (result). Events are circles with open centers to allow internal markers to differentiate different triggers or results. There are three types of Events, based on when they affect the flow: Start, Intermediate, and End.

Event Triggers

Events can include triggers that define the cause for the event. There are multiple ways that these events can be triggered. End Events may define a “Result” that is a consequence of a Sequence Flow ending.

BPMN Gateway Description

Gateways are used to control how Sequence Flows interact as they converge and diverge within a Process. Like Activities, they are capable of consuming or generating additional tokens, effectively controlling the execution semantics of a given Process.

Thus, gateway will determine branching, forking, merging, and joining of paths. Divergence and convergence occur as a result of behavior control; essentially the result of taking a decision. Thus, a gateway can be seen as equivalent to a decision in conventional flow charting and is similarly described as a diamond shape.

Gateway Markers

Gateways can include markers that further elaborate the type of behavior control. A marker is a symbol that is placed inside the diamond gateway shape.

Swimlanes - Pools and Lanes

Swimlanes

Swim Lanes are used to represent the various Parties and Roles involved in a Process. They are represented on the Collaboration and Process Diagrams by Pools and Lanes.

The analogy of a Swimming Pool demonstrates each Pool is independent of another, and can also contain one or more Lanes. This is extended to show a Process may flow from one Lane to another within a single Pool, but it is not allowed to flow across Pools, although information (in the form of messages) is allowed to flow from one Pool to another.

Consequently, a key issue in understanding what to represent with a Pool or a Lane is to understand the relationships between the Parties and Roles being documented and the degree of influence the management of one Party or Role has over another Party or Role.

Actor

Although the key concept is that of process, the definition of actors is considered first. This is because all processes are owned by (performed by) a particular, identifiable actor.

Actors are identified on process models by boxes in which processes are contained. These boxes are known as either ‘pools’ or ‘lanes’.

Pools

A Pool represents a Participant in a Process. It is also acts as a graphical container for a set of processes performed by the participant that can be described in sequence.

Pools can be documented and shown as either a “White Box” or “Black Box”:

  • A White Box Pool contains all the details of a Process contained within it; whereas

  • A Black Box Pool does not, i.e. the details are shown to the reader in a “White Box” Pool but hidden from the reader in a “Black Box” Pool.

Lanes

A Lane is a partition within a Pool that extends over its entire length. Lanes are used to organize processes. In particular, lanes can be used to categorize processes within the participant role e.g. by representing sub-actors or departments of an organization.

Last updated