FBPM2 Chapter03 EssentialProcessModeling
FBPM2 Chapter03 EssentialProcessModeling
Contents
1. First Steps with BPMN
2. Branching and Merging
3. Business Objects
4. Resources
5. Process Decomposition
6. Process Model Reuse
7. Recap
1
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
2
How novices model
Recker et al., How novices model business processes, Proceedings of BPM, Springer, 2010
Some other ways of modelling...
Recker et al., How novices model business processes, Proceedings of BPM, Springer, 2010
Some other ways of modelling...
Recker et al., How novices model business processes, Proceedings of BPM, Springer, 2010
Some other ways of modelling...
Recker et al., How novices model business processes, Proceedings of BPM, Springer, 2010
Issues?
?
11
no right/wrong, but…
relevant/irrelevant model
12
Concepts and roles of BP design and modelling
14
15
Process models – conveying transparency
Invoice DB Invoice
Senior Finance Officer
mismatch Block
exists Invoice
Invoice
blocked
16
Key ingredients of a process model
Objectives, goals
to link with corporate strategy
Risks
to risk-profile the process
Policies, rules
to check process compliance
Knowledge
to depict expertise required
…
Concepts and roles of BP design and modelling
19
Concepts and roles of BP design and modelling
20
Concepts and roles of BP design and modelling
Types of process models
Process Flow chart
21
Concepts and roles of BP design and modelling
Process charts
22
Concepts and roles of BP design and modelling
Activity diagrams
23
Steps to design and model business process
List/
split Identify Select
Define the actors the
process process respon langua
Draft Comple
start into sible ge/
the te the
and specific for model
model model
end tasks/t perfor type to
event asks/ac ming be
tivities tasks used
to do
1. Identify the process boundaries
2. Identify activities and events
3. Identify resources and their handovers
4. Identify the control flow
5. Identify additional elements (e.g. data objects, different types
of events, exception handling…)
24
BPMN language in Business Process Design
25
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
26
Business Process Model and Notation (BPMN)
BPMN 2.0 is the latest version of this BPMN standard, developed by the
Object Management Group (OMG®) with the aim of producing a unified
modeling language that is understandable to all business users. It bridges
the gap between business process design and implementation. This
simplifies the user task by setting out a clear software diagram.
27
BPMN
28
BPMN from 10,000 miles…
start end
activity event gateway sequence
flow
29
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.
30
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
start end
event event
32
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
33
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
34
A little bit more on events…
35
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
36
Solution: Order-to-cash
An
wi ythin
th
t h i g wr
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
37
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
38
A little more on gateways: XOR Gateway
39
Example: XOR Gateway
5
Exercise 3.1
41
A little more on gateways: AND Gateway
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
45
Business Process Modeling Tools
Standalone
E.g. Visio, Camunda Modeler
Repository-based
E.g. ARIS, Signavio, Apromore
46
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
51
What join type do we need here?
52
When should we use an OR-join?
53
Exercise 3.3
54
Rework and repetition
56
Exercise 3.4
57
Components of a modeling language
Modelling Language
Vocabulary
58
Components of a modeling language: Vocabulary
Modelling Language
Vocabulary: set of modeling elements of
the language (BPMN: activities, gateways,
Vocabulary events…)
59
Components of a modeling language: Syntax
Modelling Language
Syntax: set of rules to govern how these
elements can be combined (BPMN: start
Vocabulary events only have outgoing sequence flows
whereas end events only have incoming
sequence flows).
Syntax Semantics Notation
60
Components of a modeling language
Modelling Language
Semantics: bind these elements, including
their textual descriptions, to a precise
Vocabulary meaning (in BPMN: activities model
something actively performed during the
business process, while XOR gateways
Syntax Semantics Notation
model exclusive decisions and simple
merging points).
61
Components of a modeling language: Notation
62
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
63
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)
64
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
66
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.
67
Exercise 3.5
Is there any missing data
object or data store in the
example below?
68
Do we always need to model data objects?
69
BPMN Text Annotations
Clear vendor
Ship goods
line items
70
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.
71
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
72
Resources
73
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.
74
Resources in the order-to-cash example
75
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
76
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.
78
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.
79
BPMN Elements – Message Flow
Pool 2
Pool 2
Receive
Pool 1
Pool 1
Send Receive
Send
80
BPMN Elements – Start Message Event
Message
Message
received
81
Solution: Order-to-cash
82
Pools, Lanes and Message Flows: syntax
19
Black box or white box?
84
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
85
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
86
Process (or Orchestration) Diagram
Auctioning Service
Private view (white box)
Conduct auction
Auctioning Service
87
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
88
Exercise 3.8
89
90
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
91
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
94
Identify possible sub-processes
95
Ship and invoice
Solution
96
The refactored model
97
Exercise 3.9
Hint. Use the building blocks that you created throughout Exercises
3.1–3.4.
98
Imposing order of messages via subprocess
99
Example: Modelling process hierarchies
Clear Order
Credit
Level 5 Check Credit
Record
available
...
Contact
customer
Credit not
available
account rep.
100
Value chain modelling
Business
process
“is predecessor
of”
101
Linking value chains with process models
Process
model for
this process
is available
102
When should we decompose a process model into sub-
processes?
103
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)
104
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
105
Embedded or global sub-processes?
106
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.
109
Sub-processes: syntax
Quote-to-order
111
Exercise 3.10
112
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
113
Recap