BPMN is a graphical way of representing your processes. Let's see how we can represent a simple process in BPMN.
Example 1
What do I do in a restaurant when I'm hungry? First I check what's on the menu, then I order a steak and finally I pay for the meal.
How would this process be described graphically in BPMN?
The diagram shown above is a very simple representation of a process, but is correct BPMN notation. I used 2 basic elements of the language: activities connected by sequence flows.
These elements have a precise meaning in BPMN:
Sequence flows specify the logical order of a process. In this example I can’t order steak until the “check out the menu” is completed. There is a defined sequence of activities.
In the simplest case, such a diagram will be sufficient, but let's add more elements to it to make it more professional.
Example 2
These two additional circles at the beginning and end of the diagram are called Events.
Events in BPMN are depicted as circles.
The term “event” is general enough to cover many things: the start or end of an activity, the change of state of a document, a message that arrives, etc.
In this example I have added two events: the start event (thin circle) and the end event (thick circle).
Events are optional but I highly recommend adding them on diagrams.
In order to better understand how a process is performed, the concept of a token was introduced. A token is a theoretical concept which can be sometimes visualized, as follows:
A token traverses the sequence flows and passes through the elements in the process. This simulation is powered by bpmn.io.
In real life, things are more complicated. How would the process change if I want to add a meal option for vegetarians?
Example 3
A Gateway is depicted as a diamond and may include a marker inside.
Gateways are used to control the splitting and merging of sequence flows within a Process. The first gateway (diverging) allows splitting the flow into two separate conditional flows - one of which can be chosen. I can order either a nonvegeterianGateways are used to control the splitting and merging of sequence flows within a Process. The first gateway (diverging) allows splitting the flow into two separate conditional flows - one of which can be chosen. I can order either a nonvegetarian meal or a vegetarian meal, but not both. Conditions specify which path can be taken. The second gateway brings flows back together.
Let’s see the simulation of these two distinct scenarios:
Activities, Events and Gateways are called Flow Objects. Flow Objects connected by Sequence Flows are the main graphical elements to define the behavior of a Business Process.
Flow objects are the main graphical elements to define the behavior of a Business Process. There are three types of Flow Objects:
Activities represent points in a process flow where work is performed.
An Event is something that “happens” during the course of a process and affects the flow.
A Gateway is used to control the splitting and merging of Sequence Flows.
Sequence Flows are used to connect Flow Objects.
A Token can help you understand where you are and which paths of a process can be taken next.
Take the BPMN 2.0 Lesson 2 Quiz