Transcript BPMN

Business Process Management
Lecture 2: Essential Process
Modelling in BPMN
Marlon Dumas
University of Tartu
[email protected]
Business Process
Lifecycle
2
Purposes of Process Modeling
Organizational
Analysis
“AS IS”
Process
Models
Business-level Models
Process
Metrics
Process
Enactment &
Monitoring
Process
Implementation
Executable
Process Models
Process
Evaluation
Target Values
Measures for
Improvement
“TO BE”
Process
Analysis & Design Process Models
Communication,
simulation, activitybased costing…
Detailed Models
including
Data types, conditions, data
mappings, fault handling…
3
Business Process Modeling Notation
(BPMN)
• OMG Standard (nowadays version 2.0)
• Both for business-oriented and executable models
• Supported by a wide range of tools, e.g.
–
–
–
–
–
–
–
Bizagi Process Modeller (free)
Signavio (http://www.signavio.com/) - SaaS
Oracle BPA – “kind of free”
ARIS – very sophisticated, the opposite of free
Logizian
MS Visio
Paper and pen! - No excuse not to start
4
BPMN from 10 000 miles…
• A BPMN process model is a graph consisting of
four types of elements (among others):
5
Order Management Process in BPMN
First Try
Reject order
Check stock
availability
Send invoice
Confirm order
Ship goods
6
A little bit more on Gateways …
• Exclusive Decision (XOR-split) / Merge (XOR-join)
– Indicates locations within a business process where the
sequence flow can take two or more alternative paths.
– Only one of the paths can be taken.
– Depicted by a diamond shape that may contain a marker
that is shaped like an “X”.
• Parallel Fork (AND-split) / Join (AND-join)
– Provide a mechanism to synchronize parallel flow and to
create parallel flow.
– Depicted by a diamond shape that must contain a marker
that is shaped like a plus sign.
7
Revised Order Management Process
8
Beware: Beginner’s Mistake…
9
BPMN Exercise:
Simplified Insurance Claim Registration
When a claim is received, we first check if the claimant has a valid
insurance policy. If not, the claim is rejected and the claimant is
informed.
Otherwise, we assess the severity of the claim. Based on the outcome
(simple or complex claim), we send the corresponding form to the
claimant.
Once the form is returned, we check it for completeness.
If the form is complete, we register the claim in the Claims
Management system and the evaluation of the claim may start.
Otherwise, we ask the claimant to update the form. When we receive
the updated forms, we check them again and continue.
10
Guidelines: Naming Conventions
1. Give a name to every event and task
2. For tasks: verb followed by business object
name and possibly complement
– Issue Driver Licence, Renew Licence via Agency
3. For message events: object + past participle
– Invoice received, Claim settled
4. Avoid generic verbs such as Handle, Record…
5. Label each XOR-split with a condition
– Policy is invalid, Claim is inadmissible
11
Poll: Which model do you prefer?
12
One more guideline…
• 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 XOS-split leads to two end
events – different outcomes (cf. order management
example)
13
Process Modelling Viewpoints
Organization
Who?
Lanes &
Pools
What?
Tasks
Events
When?
Flows
Gateways
Which?
Data / Materials
Data Objects,
Stores
14
Organizational Modelling in BPMN
• Pools – Independent organizational entities, e.g.
• Customer, Supplier, East-Tallinn Hospital, South
Eastern Clinic
• Lanes – Classes of resources within the same
organizational and collaboration space
• Sales Department, Marketing Department
• Roles: Clerk, Manager, Engineer
15
Running Example with
Pools and Lanes
16
BPMN Exercise: Lanes, Pools
• Claims Handling process at a car insurer
A customer submits a claim by sending in relevant
documentation. The Customer Service department
checks the documents for completeness and registers
the claim. The Claims Handling department picks up
the claim and first checks the insurance policy. Then,
an assessment is performed. If the assessment is
positive, a garage is phoned to authorise the repairs
and the payment is scheduled (in this order). In any
case (whether the outcome is positive or negative),
an e-mail is sent to the customer to notify the
outcome.
17
Data in BPMN
Data
Object
Data
Store
• Data Objects: logical data units required,
created or modified by activities.
– Input and output of a process activity
• Data stores: containers of data objects
that need be persisted beyond the
duration of a process instance
• Associations are used to link artifacts
Directed association
such as data objects and data stores
with flow objects (e.g. activities).
Undirected association
18
Running Example with Data Object
19
BPMN Exercise 3: Artifacts
When a claim related to a major car accident is evaluated, a clerk
first retrieves the corresponding car accident report from the Police
Reports database. If the report is retrieved, it is attached to the claim
file. The claim file and the police report serve as input to a claims
handler who calculates an initial claim estimate. Then, an “action
plan” is created based on a “checklist”. Based on the action plan
and the initial claims estimate, a claims manager negotiates a
settlement with the customer. After this negotiation, the claims
manager makes a final decision, updates the claim file to record this
decision, and sends a letter to the claimant to inform him/her of the
decision.
Please depict all relevant documents in the model.
20
BPMN Main Elements - Recap
Swimlanes
Pool
Connections
Message
Lane
Association
Flow
Flow Elements
Artifacts
Text Annotation
Activity
Gateway
Event
Data
Object
Data
Store
21
BPMN Flow Elements – Recap
Start Event
Task
End Event
Flow
AND-Join
c
~c
AND-Split
XOR-Decision
XOR Merge
22
What’s wrong with this model?
X
23
BPMN Gateways
Exclusive (XOR)
Parallel (AND)
Inclusive (OR)
• Exclusive decision
• Parallel split
take all branches
• Parallel join
proceed when all
incoming
branches have
completed
• Inclusive
decision take
one or several
branches
depending on
conditions
• Inclusive merge
proceed when all
active incoming
branches have
completed
take one branch
• Exclusive merge
Proceed when
one branch has
completed
24
Example: OR gateways
25
How can we fix this model?
X
26
Exercise
Model the following fragment using OR gateways:
When a claim is received, it is registered. After
registration, the claim is classified leading to two
possible outcomes: simple or complex. If the claim is
simple, the policy is checked. For complex claims, both
the policy and the damage are checked independently.
Check also the self-test quiz available at: http://www.proprofs.com/quizschool/story.php?title=essentials-of-process-modeling
27