Michael zur Muehlen, Ph.D.
Stevens Institute of Technology
Howe School of Technology Management
Center for Business Process Innovation
Hoboken, New Jersey
Introduction to BPMN 2.0
Part 1: Basic Constructs
At the end of this module you will know
The core components of BPMN 2.0
Start and End Events
Strategies for model layout
Common modeling pitfalls
BPMN stands for Business Process Model & Notation
Developed by Object Management Group (OMG)
BPMN 1.0 specification released in May, 2004
BPMN 2.0 specification released in January 2011
Based on the leading graphical flowcharting techniques
e.g., UML, IDEF, Flowcharts, EPCs …
What does BPMN do?
BPMN specifies a Business Process Diagram (BPD)
Easy to model BPDs and easy to understand the result
(must be understandable to non-technical audiences)
Able to depict complex business processes
(must be translatable to process execution languages)
BPMN uses shapes that are familiar to most modelers
(e.g., rectangles for functions, diamonds for gateways).
Each of the shapes can be used in a simplistic manner or can be
embellished to refine its semantics
(e.g., further subtypes of events, activities, gateways).
A BPMN Model
Tasks are units of work that are
performed within a process.
The same task may be enacted
in different processes and on
Thus, tasks should be
designed in a reusable fashion.
Tasks are depicted by rounded
rectangles and represent any work
performed in a process.
Task vs. Sub-Processes
BPMN Elements – Gateways
Exclusive OR Split/Merge
Indicates locations within a business process where the
sequence flow can take two or more alternative paths and only
one of the paths can be taken.
In a merge, the first path to arrive at the gateway triggers the
gateway, all other incoming paths are ignored.
Provides a mechanism to synchronize parallel flow and to
create parallel flow.
All outgoing paths must be taken and all incoming paths must
Provides a mechanism to model situations in which one or
more alternatives can be taken or where one or more
alternatives can trigger subsequent action. 7
Core BPMN Elements (ctd.)
Events are used to link otherwise unrelated activities and
processes with each other.
Events are especially useful to model the behavior of external
Events should be thought of as interfaces to the process context
Events are depicted by circles and represent something that
“happens” during the course of a process.
Events depict the cause (trigger) and impact (result) of business
Start, Intermediate, End
Different types of Events
BPMN Elements - Pools
Pools represent business process par#cipants. They are used to partition a set of activities from
Pools can be a system, a business entity or a business role
Each process diagram contains at least one pool (even if it is not shown)
A Pool can be labeled with the name
contained therein or the name
par#cipant it represents
A Pool acts as the container for the sequence flow between activities.
Sequence flow must
cross the boundaries of a Pool.
The interaction between Pools, e.g., between two collaborating organizations, is shown through
BPMN Elements - Lanes
Lanes represent sub-partitions within a pool. They are used to organize and
Lanes can be nested (common)
Example: An outer set of Lanes for Business Units and then an inner set of Lanes for roles
within each Business Unit.
Lanes can be used to represent participant roles (e.g., Manager, Associate),
systems (e.g., SAP), business units (e.g., Marketing, Sales), etc.
Both sequence flow and message flow can cross the boundaries of Lanes.
Now let’s start modeling…
The Order Management process is triggered by the receipt of a
purchase order from a customer.
The purchase order is checked against inventory levels for the
Depending on inventory availability the purchase order may be
confirmed or rejected.
If the purchase order is confirmed, the goods requested are
shipped and an invoice is sent to the customer.
A Potential Solution
The Loan Request process starts when the customer submits a
loan application. The bank then reviews the application.
Whether the loan request is approved or not, a letter is sent to
inform the customer of the decision. If the request is approved,
the loan is underwritten.
Hint: Keep it simple, and
focus on the “happy path”
of loan approval.
Loan Example – Simple Sequence
The customer applies for a loan, the bank reviews the
application, notifies the customer, then underwrites the loan.
Loan Example – Split
The customer applies for a loan, then the bank reviews the
application. If the loan is approved, an acceptance letter is
sent and the loan is underwritten, otherwise a rejection letter is
Note: A Gateway does not
actively decide anything. It
evaluates the outcome of the
preceding review activity.
Gateways are passive elements
that just route the flow.
No Branching without Decisions
Gateways do not make decisions -
they just evaluate the results of
decision-making activities to route
the flow of work
Always model the decision-making
task before you split the sequence
flow with an XOR or OR gateway
Loan Example – Parallel Activities
While the applicant’s employment records are verified, a credit report is requested
and then reviewed, and the property title is obtained and evaluated.
Once these activities have been completed, the final review is performed and the
loan application is eventually approved or rejected.
Modeling Error – Parallel Activities
An XOR join after an AND split will
result in duplicate tokens
downstream. Everything after the
XOR join will be executed twice.
An AND join after an XOR split will
result in a deadlock. The process
cannot progress beyond the merging
The complete process
BPMN Elements – Artifacts
Text Annotations are a mechanism for the modeler
to provide additional text information to the
Text annotations do not affect the flow of the
Groups are a visual mechanism to logically group
diagram elements informally.
The grouping does not affect the sequence flow
and does not change the meaning of the elements
contained within the group.
BPMN has four main classes of symbols:
Avoid modeling mistakes, in particular with gateways
Artifacts are used for embellishing the model