Chapter 3-Essential Process Modeling
Chapter 3-Essential Process Modeling
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
Process Modeling in the BPM Lifecycle
Process
Management Processes
Support Processes
Process Process
monitoring analysis
Executable Insights on
process weaknesses and
model their impact
Process Process
implementation To-be process redesign
model
Essential Process Modeling
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
Business Process Model and Notation (BPMN)
start end
activity event gateway sequence
flow
Let’s start modeling
Order-to-cash
A typical order-to-cash process is triggered by the receipt of a purchase order from a
customer. The purchase order has to be checked against the stock regarding the
availability of the item(s) requested. Depending on stock availability the purchase order
may be confirmed or rejected.
If the purchase order is confirmed, an invoice is emitted and the goods requested are
shipped. The process completes by archiving the order or if the order is rejected.
Solution in BPMN: Order-to-cash
end
Reject order
activity Items not in
event
Order
stock
rejected
Check stock split gateway end
availability
Purchase
order
event
Items in
received stock Confirm Emit Archive
Ship goods
start order invoice order
Order
event fulfilled
Naming conventions
• Event: noun + past-participle verb (e.g. insurance claim lodged)
• Activity: imperative verb + noun (e.g. assess credit risk)
BPMN core elements
activity
8
BPMN core elements
gateway
Sequence flows represent the order in which activities and events
will be performed.
They can be assigned a condition to distinguish between alternative
branches.
sequence
Different types of flows
flow
9
Process model vs process instances: The tokens game
Order #1
Order #2
Order #3
Reject order
Items not in
Order
stock
rejected
Check stock
availability
Purchase
order Items in
received stock Confirm Emit Archive
Ship goods
order invoice order
Order
fulfilled
10
A little bit more on events…
11
Let’s reconsider our order-to-cash example
Reject order
Items not in
Order
stock
rejected
Check stock
availability
Purchase
order Items in
received stock Confirm Emit Archive
Ship goods
order invoice order
Order
fulfilled
12
Solution: Order-to-cash
An
wi ythin
th
thi g w r
s m on
od g
el ?
Reject order
Items not in
Order
stock
rejected
Check stock
availability split Emit invoice
Purchase
order Items in
received stock Confirm Emit Archive
Ship goods
order invoice order
Order
split join fulfilled
Ship goods
13
Mapping, Abstraction, and Purpose of a Model
?
15
Essential Process Modeling
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
A little more on gateways: XOR Gateway
17
Example: XOR Gateway
5
Exercise 3.1
Order-to-cash
Reject order
Items not in
stock Order
rejected
Check stock
availability XOR-split Send invoice
Purchase
order Items in
received stock
Archive
Confirm order
order
Order
AND-split AND-join fulfilled
Ship goods
Exercise 3.2
Haptic
Standalone
E.g. Visio, Camunda Modeler
Repository-based
E.g. ARIS, Signavio, Apromore
24
XOR / AND are not always what we need...
XOR-split XOR-join
AND-split AND-join
Solution 2
AND-split AND-join
XOR-split XOR-join
OR Gateway
29
What join type do we need here?
30
When should we use an OR-join?
Exercise 3.3
Modelling Language
Vocabulary
36
Components of a modeling language: Vocabulary
Modelling Language
Vocabulary: set of modeling
elements of the language (BPMN:
Vocabulary activities, gateways, events…)
37
Components of a modeling language: Syntax
Modelling Language
Syntax: set of rules to govern how
these elements can be combined
Vocabulary (BPMN: start events only have
outgoing sequence flows whereas
end events only have incoming
Syntax Semantics Notation
sequence flows).
38
Components of a modeling language
Modelling Language
Semantics: bind these elements,
including their textual
Vocabulary descriptions, to a precise meaning
(in BPMN: activities model
something actively performed
Syntax Semantics Notation
during the business process, while
XOR gateways model exclusive
decisions and simple merging
points).
39
Components of a modeling language: Notation
40
Essential Process Modeling
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
Business Objects (aka artifacts)
Can be:
Physical or digital information artifacts (e.g. an order on paper, an invoice on PDF)
Physical material (e.g. a box containing the ordered goods)
42
Our Order-to-cash process, again
Send
invoice
Confirm Archive
Items in order order
stock Order
fulfilled
Check stock
Ship goods
availability
Purchase
order Items not in
received stock
Reject order
Order
rejected
44
Solution
Invoice
Purchase
Purchase
Order
Order
[approved]
Purchase Purchase Send [approved]
Order Order invoice
[checked]
Confirm Archive
Items in order order
stock Order
fulfilled
Check stock
Ship goods
availability
Purchase
order Items not in
received stock
Reject order
Order Orders DB
rejected Shipment
notice
Warehouse DB
Purchase
Order
[rejected]
The purchase order document serves as an input to the stock availability check against the
Warehouse DB. Based on the outcome of this check, the status of the document is updated, either to
“approved” or “rejected”. If the order is approved, an invoice and a shipment notice are produced. The
order is then archived on the Orders DB.
45
Do data objects affect the token flow?
Exercise 3.5
Is there any missing data
object or data store in the
example below?
Do we always need to model data objects?
BPMN Text Annotations
Clear vendor
Ship goods
line items
49
Exercise 3.6
Put together the four fragments of the loan assessment process that
you created in Exercises 3.1–3.4.
Hint. Look at the labels of the start and end events to understand the order
dependencies among the various fragments. Then extend the resulting
model by adding all the required business objects. Moreover, attach
annotations to specify the business rules behind i) checking an application
completeness, ii) assessing an application eligibility, and iii) verifying a
repayment agreement.
Essential Process Modeling
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
Resources
52
Resources
Active resources:
Process participant
Software system
Equipment
Resource class:
A group of (active) resources that are interchangeable, e.g. a role, an
organizational unit or the whole organization.
53
Resources in the order-to-cash example
54
BPMN Elements – Pools & Lanes
Pool
Captures a resource class. Generally used to model a business party (e.g. a
whole company)
Pool
Lane
Captures a resource sub-class within a resource class by partitioning a pool.
Generally used to model departments (e.g. shipping, finance), internal roles (e.g.
Manager, Associate), software systems (e.g. DBMS, CRM) or equipment (e.g.
Manufacturing plant)
Lane
Pool
Lane
Lane
Lane
55
Solution: Order-to-cash
14
Exercise 3.7
The process for assessing loan applications is executed by four roles within
the loan provider: a financial officer takes care of checking the applicant’s
credit history; a property appraiser is responsible for appraising the property;
an insurance sales representative sends the home insurance quote to the
applicant if this is required. All other activities are performed by the loan
officer who is the main point of contact with the applicant.
Exchanging information between business parties
Order-to-cash
The purchase order sent by the Customer is received by the Seller and
checked against the stock. This is done via an ERP module within the
Warehouse & Distribution department. If the purchase order is not
confirmed, the Sales department sends an order rejection to the
Customer, otherwise it sends an order confirmation.
Next, the Warehouse & Distribution department ships the goods and sends
a shipment notification to the Customer. Meantime, the Sales department
emits the invoice and sends it to the Customer. The process concludes
with the order being archived by the Sales department.
58
BPMN Elements – Message Flow
Pool 2
Pool 2
Receive
Pool 1
Pool 1
Send Receive
Send
59
BPMN Elements – Start Message Event
Message
Message
received
60
Solution: Order-to-cash
61
Pools, Lanes and Message Flows: syntax
19
Black box or white box?
When are messages sent or received?
Pool 2
Pool 2
Receive
Pool 1
Pool 1
Send Receive
Send
Note: the order of the message flows w.r.t. an activity is irrelevant, the
above rules always hold
64
When are messages sent or received?
• Message B is first received
before Activity can start.
• Message A is sent after,
upon Activity’s completion
• First, message B is
received, before Activity can
start.
• Then, message A is sent,
upon Activity’s completion
65
Process (or Orchestration) Diagram
Auctioning Service
Private view (white box)
Conduct auction
Auctioning Service
66
Collaboration Diagram
Models a global business process between at least two business parties (each
modelled by a Pool)
Send delivery
notification
Seller
Auction
Bid Bid
completion
acknowledgement
notification
Bidder
Public
process
67
Exercise 3.8
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
Process decomposition
Process decomposition
Expanded Sub-process
Collapsed
Task
Sub-process
Activities
Process Invoice
no
mismatches
Enter Invoice /
Check Invoice
Credit Note
Mismatches
Details
mismatch
exists
Block Invoice
72
Identify possible sub-processes
73
Ship and invoice
Solution
74
The refactored model
75
Exercise 3.9
Hint. Use the building blocks that you created throughout Exercises
3.1–3.4.
Imposing order of messages via subprocess
77
Example: Modelling process hierarchies
Clear Order
Credit
Level 5 Check Credit
Record
available
...
Contact
customer
Credit not
available
account rep.
78
Value chain modelling
Business
process
“is predecessor
of”
79
Linking value chains with process models
Process
model for
this process
is available
80
When should we decompose a process model into sub-
processes?
Guidelines: modeling levels
Use sub-processes when the model becomes too large:
Hard to understand
Increased error probability
Decomposition drivers:
Logical: group elements meaningfully (e.g. common business object)
Structural: up to 30 nodes (activities, events, gateways)
82
Essential Process Modeling
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
Embedded or global sub-processes?
Process Reuse
Such a sub-process is called “global” model, and is invoked via a “call” activity
(normal) Call
activity activity
Example: process reuse
Hint. Use the building blocks that you created throughout Exercises
3.1–3.4.
Sub-processes: syntax
Quote-to-order
89
Exercise 3.10
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
Recap