Lecture3 ProcessModeling
Lecture3 ProcessModeling
231
Business Process Management
Marlon Dumas
marlon.dumas ät ut . ee
1
Business Process
Lifecycle
1. Introduction
2. Process Identification
3. Essential Process Modeling
4. Advanced Process Modeling
5. Process Discovery
6. Qualitative Process Analysis
7. Quantitative Process Analysis
8. Process Redesign
9. Process Automation
10.Process Intelligence
Purposes of process modeling
• Communication
• Documentation
• Analysis (e.g. simulation) Conceptual
Executable
• Automation
• Testing
Conceptual 4
Business Process Model and Notation (BPMN)
• OMG standard (nowadays BPMN 2.0)
• Both for conceptual and executable models
• Supported by numerous tools: bpmn.org lists over 70 tools, incl.
• Signavio (we’ll use the academic edition – academic.signavio.com)
• Bizagi Process Modeler
• Cameo Business Analyst
BPMN from 10,000 miles…
start end
activity event gateway sequence
flow
Let’s start modeling
Order-to-cash
Check stock
availability
Purchase
order
received
10
Let’s start modeling – break it down
Order-to-cash
end
Reject order
activity Items not in
Order
event
stock
rejected
Check stock
availability
split gateway end
Purchase
order Items in event
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: verb + noun (e.g. assess credit risk)
12
Execution of a process model
The “token 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
13
A little bit more on events…
14
Order-to-cash example revisited…
[…] If the purchase order is confirmed, an invoice is emitted
and the goods requested are shipped (in any order). The
process completes by archiving the order. […]
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
15
First try
Order-to-cash
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
16
A little more on gateways: XOR Gateway
17
Example: XOR Gateway
Invoice checking process
5
A little more on gateways: AND Gateway
20
Revised order-to-cash process model
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
21
Between XOR and AND
Order distribution process
A company has two warehouses that store different products:
Amsterdam and Hamburg. When an order is received, it is
distributed across these warehouses: if some of the relevant
products are maintained in Amsterdam, a sub-order is sent
there; likewise, if some relevant products are maintained in
Hamburg, a sub-order is sent there. Afterwards, the order is
registered and the process completes.
22
Solution 1
Order distribution process
XOR-split XOR-join
AND-split AND-join
23
Solution 2
Order distribution process
AND-split AND-join
XOR-split XOR-join
24
OR Gateway
cond1
26
What join type do we need here?
27
Beware: Beginner’s Mistake…
Guidelines: Naming Conventions
• Model in blocks
• Pair up each AND-split with an AND-join and each XOR-split with a XOR-
join, whenever possible
• Exception: sometimes a XOR-split leads to two end events – different
outcomes (cf. order management example)
Rework and repetition
Address ministerial correspondence
In the minister’s office, when a ministerial inquiry has been received, it is
registered into the system. Then the inquiry is investigated so that a
ministerial response can be prepared.
The finalization of a response includes the preparation of the response itself
by the cabinet officer and the review of the response by the principal
registrar. If the registrar does not approve the response, the latter needs to
be prepared again by the cabinet officer for review. The process finishes only
once the response has been approved.
32
Quick Note: Implicit vs. explicit gateways
B B
A
= A
C C
33
How this process starts? How it ends?
Collect Sort
mail mail
New mail Document
arrived requisition
Not compiled
Check acceptable Compile
Register
mail for document
mail
compliance requisition
Document
New email Acceptable response
arrived
prepared
Prepare
Capture
document
matter details
response
Physical
file
printed
Capture party Print
Pay fee
details physical file
34
What’s wrong with this model? How to fix it?
X
Process Modelling Viewpoints
Organization
Who?
Lanes &
Pools
What?
Tasks When?
Events
Flows
Gateways
Which?
Data Objects,
Data / Materials Stores
Organizational Elements in BPMN – Pools & Lanes
Pool
Captures a resource class. Generally used to model a business party
(e.g. a whole company)
Lane
A resource sub-class within a pool. Generally used to model
departments (e.g. shipping, finance), internal roles (e.g.
Manager, Associate), software systems (e.g. ERP, CRM)
Pool
37
Order-to-cash process with lanes
Message Flow
A Message Flow represents a flow of information between
two process parties (Pools)
Message
Pool 2
Pool 2
Receive
Pool 1
39
Order-to-cash process with a black-box customer pool
40
Pools, Lanes and Flows: syntactic rules
1. A Sequence Flow cannot cross the boundaries of a Pool
(message flows can)
2. Both Sequence Flow and Message Flow can cross the
boundaries of Lanes
3. A Message Flow cannot connect two flow elements within
the same pool
One more guideline…
Which?
Data Objects,
Data / Materials Stores
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
Model with information artifacts
Purchase Invoice
Order
Purchase
Purchase Purchase Send Order
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 Purchase Shipment
Order notice
Warehouse DB
Purchase Purchase
Order Order
[rejected] [approved]
45
BPMN Information Artifacts
46
Quick Note: BPMN Text Annotations
A Text Annotation is a mechanism to provide additional text
information to the model reader
• Doesn’t affect the flow of tokens through the process
Clear vendor
Ship goods
line items
47
BPMN Poster (link in “Readings” page)
48