Web Services Choreography Description Language (WS-CDL)

Download Report

Transcript Web Services Choreography Description Language (WS-CDL)

MTAT.03.231
Business Process Management (BPM)
(for Masters of ETM)
Lecture 1: Introduction
Marlon Dumas
marlon.dumas ät ut . ee
Course Objective
The objective of this course is to introduce the principles
and methods of business process management.
The course emphasises the role of business process
modelling as an instrument to understand and analyse
business operations, and to drive the design of
Information Technology solutions to support the
automation of business processes.
2
Structure of the Course
• Four sessions
1.
2.
3.
4.
17.02 – Introduction to BPM and BPMN
17.03 – Process Analysis & Improvement
14.04 – Process Lifecycle Management
09.06 – Project Presentations and Exam
• Two homeworks worth 10 points each
• Project (30 points) – to be released on 14.04
• Exam (50 points)
3
Readings and Resources
• Recommended textbook
– Manuel Laguna and Johan Marklund. Business Process
Modeling, Simulation and Design, Prentice Hall, 2004. (esp.
Chapters 1, 2 and 3)
• Other readings & resources listed in the course pages:
– http://courses.cs.ut.ee/2011/bpm
• For communication, we will use this message board:
– http://www.quicktopic.com/45/H/pv4JEGjkKTG
4
Agenda for Today
Time
Contents
10.00-11.30
Introduction to BPM
11.30-11.45
Break
11.45-13.15
The BPM Lifecycle
13.15-14.15
Lunch Break
14.15-17.30
BPMN – with a coffee break at 15:45-16:00
5
Part I
Introduction to Business Process
Management
BPM: What is it?
Body of methods to design, analyze, execute
and monitor business operations involving
humans, software, information and physical
artifacts using process models.
7
So What is a (Business) Process
Collection of logically-related events, activities and
decisions, that involve a number of actors and
resources, and that collectively lead to an outcome
that is of value to an organization or its customers.
Examples:
• Order-to-Cash
• Procure-to-Pay
• Claim-to-Settlement (Insurance)
• Fault-to-Resolution
8
“My washing machine won’t work!”
Warranty?
Call Centre
Technician
Customer
Customer
VALUE
Service
Dispatch
Parts
Store
fault-report-to-resolution process
© Michael Rosemann
9
Background to BPM
Organisational Management
- Adam Smith (1776)
Observation: “a number of specialized workers, each
performing a single step in the manufacture of a pin,
could make far more pins in a day than the same
number of generalists.”
Quoted from Hammer &
Champy 1993
10
Limitations of Functional
Organisation
• Focus on skills and resource utilization rather than
outcomes
• Reward systems tailored to functional units, not
the overall firm
• Group behavior and cultures fostering an “us
versus them” mentality (silos)
11
Complementarity of Functional and
Process Views
Business Environment
Economy
Regulatory
Culture
Organisation System
Resources
Performance Planned
Performance Managed
Other
Stakeholders
Financial
Human
Resources
Function
A
Function
B
Function
C
Materials
Technology
[after Rummler 1984]
Business Processes
Customers
12
Why BPM?
“The first rule of any technology used in a business
is that automation applied to an efficient operation
will magnify the efficiency.
The second is that automation applied to an
inefficient operation will magnify the inefficiency.”
13
Why BPM?
Improving Business Processes = #1 business
priority for CIOs internationally, 4 years in a row…
Top 10 Business Priorities 2009
Please select the top five business priorities for your
enterprise/business unit in 2009?
Improving business processes
1
Cutting enterprise costs
2
Improving enterprise w orkforce effectiveness
3
Attracting and retaining new customers
4
Increasing the use of information/analytics in decision making
5
Creating new products or services (innovation)
6
Managing enterprise change initiatives
7
Targeting customers and markets more effectively (more effective service delivery) 8
Expanding current customer relationships (expanding “w allet share”)
Consolidating business operations
9
10
© Gartner Group, 2009 CIO Survey
14
Why BPM?
Information
Technology
Yields
Business
Value
Enables
Yields
Process
Change
Index Group (1982)
15
How to engage in BPM?
Two complementary BPM approaches:
1. Continuous Process Improvement (CPI)
– Does not put into question the current process design, but rather
seeks to identify issues and resolve them incrementally, one
step at a time and one fix at a time
2. Business Process Re-Engineering (BPR)
– Put into question the fundamental assumptions and principles of
the existing process design
– Aims to achieve breakthrough, for example by removing costly
tasks that do not directly add value
16
The Ford Case Study (Hammer 1990)
Ford needed to review its procurement process to:
• Do it cheaper (cut costs)
• Do it faster (reduce turnaround times)
• Do it better (reduce error rates)
Accounts payable in North America alone employed
> 500 people and turnaround times for processing
POs and invoices was in the order of weeks
17
The Ford Case Study
• Automation would bring some improvement
(20% improvement)
• But Ford decided not to do it… Why?
a) Because at the time, the technology needed to
automate the process was not yet available.
b) Because nobody at Ford knew how to develop the
technology needed to automate the process.
c) Because there were not enough computers and
computer-literate employees at Ford.
d) None of the above
18
The correct answer is …
Mazda’s Accounts Payable Department
19
How the process worked? (“as is”)
20
How the process worked? (“as is”)
21
How the process worked? (“as is”)
22
How the process worked? (“as is”)
23
How the process worked? (“as is”)
24
How the process worked? (“as is”)
25
Reengineering Process (“to be”)
26
Reengineering Process (“to be”)
27
Reengineering Process (“to be”)
28
Reengineering Process (“to be”)
29
Reengineering Process (“to be”)
30
Reengineering Process (“to be”)
31
The result…
• 75% reduction in head count
• Material control is simpler and financial
information is more accurate
• Purchase requisition is faster
• Less overdue payments
 Why automate something we don’t need to do?
32
Principles of BPR
1. Have those who use the output of the process
perform the process
2. Subsume information-processing work into the
real work that produces the information
3. Treat geographically dispersed resources as if
they were centralized
4. Link parallel activities instead of integrating their
results
5. Capture information once and at the source
33
Part II
The BPM Lifecycle
How to engage in BPM?
The BPM Lifecycle
1. Opportunity assessment
2. Process modelling (as-is)
3. Process analysis
4. Process re-design (to-be)
5. Process implementation
6. Process monitoring/controlling
Process
Modeling
Tools
Process
Management
Systems
35
How to engage in BPM?
Phase 1: Opportunity assessment
Define the strategic goals, link them to measurable
objectives and quantify the benefits
Profit maximizing firms
Overarching goal is usually to
maximize long term shareholder value
Maximize revenues and
minimize costs
Non-profit organizations
A common goal is survival and
growth while satisfying customer needs
Must use resources efficiently while
understanding customer needs
Satisfying customer needs in an efficient way
© Laguna & Marklund
36
Classification of process metrics
Cost
Time
Quality
Cost per
execution
Cycle time
Error rates
(negative
outcomes,
wrong info)
Resource
utilization
Waiting time /
time spent in
non-valueadded tasks
Missed
promise
Waste
37
Phase 2: Process Identification and
“As Is” Modeling
Receive info
Request info
No
Deliver card
accept
Notify acceptance
Check for
completeness
Yes
Perform checks
Make decision
Start
End
complete?
Decide
reject
Notify rejection
Time out
review request
reviiew
Receive review
request
38
Phase 3: Analysis
Qualitative analysis
• Scenario analysis
• Cause-Effect-Analysis
• Issue Register
Quantitative Analysis
•
•
•
•
Cycle Time Analysis
Capacity Analysis
Queuing Theory
Process Simulation
39
Phase 4: Re-design
As Is
Guidelines
• Issues
• Barriers
Capabilities
Strategy / Goals
To-Be
• IT
• Knowledge
• People
• Ability to
change
• Culture
Best Practice
Reference
Models
Bench
marking
Ideal
models
Study
tours
40
The Devil’s Rectangle
Costs
Time
Flexibility
Quality
41
Basics of Process Re-Design:
Activity Classification
 A key step in process re-design is classifying of the
process activities into value-adding and non-value
adding
– Crucial in identifying waste and inefficiencies in
existing processes
Value-Adding
Activity
Non-Value Adding
Handoff
Delay
Rework
Business Value Adding
Control
Policy compliance
© Laguna & Marklund
42
Activity Classification
•
•
•
Customer value-adding activities
– Essential in order to meet customer expectations
– Activities the customer would be willing to pay for
– Involves doing the right things right
– Performing the right activities
– Doing them correctly, with high efficiency
Business value adding activities
– Control activities
– Do not directly add customer value but are essential to
conducting business
Non-value adding activities
– Activities the customer is not willing to pay for
© Laguna & Marklund
43
Activity Classification
•
•
Elimination of non-value adding activities is a key
first step in redesigning business processes
– Often achieved through task or activity
consolidation
Task and activity consolidation reduces
– Hand-offs
– Need for control activities
– Process complexity
© Laguna & Marklund
44
Phases 5-6. Automation & Monitoring –
When Technology Kicks in..
45
Exercise – Claims Handling in a
Large Insurance Company
•
•
Claims handling for replacement of automobile glass
Set up procedure
1. The CEO appoints an executive sponsor to lead the
project
2. Team members are handpicked by the CEO and the
sponsor
3. The team creates a flowchart of the existing process
• Under the existing process the client may have to wait 1-2
weeks before being able to replace the damaged auto glass
 Goal – A radical overhaul and improvement of the process
to shorten the client waiting time
© Laguna & Marklund
46
Overview of the existing claims
process
Request additional information
Pay
Notify agent
Client
Give instructions
File claim
Local
independent
agent
Forward
claim
Claims
processing
center
Request quote
Provide quote
Pay
© Laguna & Marklund
Approved
glass
vendor
47
Existing claims process
1.
2.
3.
4.
5.
Client notifies a local agent that she wishes to file a claim. She is
given a claims form and is told to obtain a cost estimate from a local
glass vendor.
When the claims form is completed the local agent verifies the
information and forwards the claim to a regional processing center.
The processing center logs the date and time of the claim’s arrival.
The data is entered into a computer-based system (for record
keeping only) by a clerk. The claim is then placed in a hard copy file
and passed on to a claims representative.
a) If the claims representative is satisfied with the claim it is passed
along to several others in the processing chain and eventually a
check is issued and sent to the client.
b) If there are problems with the claim the representative mails it
back to the client for necessary corrections.
When the client receives the check she can go to the local glass
vendor and replace the glass.
© Laguna & Marklund
48
Exercise: Value-Adding Activity
Identification
• June 2009 exam, question 5(b)
• http://courses.cs.ut.ee/2009/bpm/uploads/Main/
RegularExam.pdf
49
Part II
Introduction to Business Process
Modeling
Process Modeling: Why?
Process
Documentation
Process
Improvement
Compliance /
Risk Management
Process Cost
Analysis/Simulation
Enterprise
Systems
Workflow
Management
© Michael Rosemann
Knowledge
Management
Enterprise
Architecture
Document
Management
Software
Evaluation/
Selection
51
Popular Process Modelling Purposes
Selection of ERP software
Process costing
Configuration of ERP software
Process simulation
Process benchmarking
Certification
Knowledge Management
other
Workflow management
Supporting Continuous Process Management
Requirements specification for software development
Process re-design
Recker et al. (2005)
0.
00
%
%
10
.0
0
%
90
.0
0
%
80
.0
0
%
70
.0
0
%
60
.0
0
%
50
.0
0
%
40
.0
0
%
30
.0
0
%
20
.0
0
10
0.
00
%
Process documentation
52
Process Modeling Languages
• For business analysts
–
–
–
–
–
Business Process Modelling Notation (BPMN)
Event-driven Process Chains (EPC)
IDEF0, IDEF3
Flowcharts, data-flow diagrams (system analysis)
UML Activity Diagrams (system analysis)
• For business programmers
– Business Process Execution Language (BPEL)
– Yet Another Workflow Language (YAWL)
And many, many more…
53
Modelling Purpose vs. Detail
Organizational
Analysis
Abstract Models
“AS IS”
Process
Models
EPC, BPMN
Process
Metrics
Process
Enactment &
Monitoring
Process
Implementation
Detailed Models
Executable
Process Models
Process
Evaluation
Target Values
Measures for
Improvement
“TO BE”
Process
Process
Models
Analysis & Design
Communication,
simulation, activitybased costing…
Data types, conditions, data
mappings, fault handling…
BPEL, YAWL…
Integration, testing,
deployment…
54
Business Process Modeling Notation
(BPMN)
• OMG Standard, supported by many tools:
–
–
–
–
–
–
–
–
–
Bizagi Process Modeller (free download for Windows)
Signavio (http://www.signavio.com/)
TIBCO Business Studio (free download, quite large)
IBM Websphere Business Modeler
ARIS
Oracle BPA
Business Process Visual Architect (Visual Paradigm)
Metastorm ProVision
Savvion Business Modeller (Progress Software).
• For simple drawing, you can use:
– Visio (available through MS Academic Alliance)
– yEd (http://www.yworks.com/en/products_yed_about.html )
55
BPMN from 10 000 miles…
• A process model in BPMN is called a Business
Process Diagram (BPD)
• A BPD is essentially a graph consisting of four
types of elements (among others):
56
Example
An Order Management process is triggered by the
reception of a purchase order from a customer. The
purchase order has to be checked against the stock re
the availability of the product(s) requested. Depending
on stock 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.
57
Order Management Process in BPMN
Reject order
Check stock
availability
Send invoice
Confirm order
Ship goods
58
A little bit more on gateways …
• Exclusive Decision / Merge
– 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 / 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.
59
Revised Order Management Process
Reject order
Check stock
availability
Send invoice
Confirm order
Ship goods
60
BPMN Exercise 1:
Claims Notification process at a car insurer
When a claim is received, it is first checked whether the claimant is
insured by the organization. If not, the claimant is informed that the
claim must be rejected. Otherwise, the severity of the claim is
evaluated. Based on the outcome (simple or complex claims),
relevant forms are sent to the claimant. Once the forms are
returned, they are checked for completeness. If the forms provide all
relevant details, the claim is registered in the Claims Management
system, which ends the Claims Notification process. Otherwise, the
claimant is informed to update the forms. Upon reception of the
updated forms, they are checked again.
61
Process Modelling Viewpoints
Organization
Who?
What?
Function
When?
Process
Which?
Data / Service / Product
62
Process Modelling Viewpoints
Functional perspective
What tasks/function are happening in the process?
Control-flow perspective
In what order do they occur?
Resource perspective (also called organisational perspective)
Who performs which activity?
Data perspective
What data are created/produced by the process?
63
Organisational Elements in Process
Models
Basic abstractions:
• Resource (participant, actor, user, agent)
A resource can execute certain tasks for certain cases.
Human and/or non-human (e.g. printer).
• Resource class: Set of resources with similar characteristics
A resource class is typically either a:
• Role (skill, competence, qualification)
Classification based on what a resource can do or is
expected to do (Manager, Finance Officer, etc.)
• Group (department, team, office, business unit)
Classification based on the organization (Sales Dept.,
Accounts Payable, Accounts Receivable, etc.)
64
Resource Modelling in BPMN
• In BPMN, resource classes are captured using:
– Pools – independent organisations or organizational
units (e.g. customer, supplier, East-Tallinn Hospital,
Tartu Clinic)
– Lanes – tightly connected roles or groups (e.g. Sales
Department, Marketing Department, Clerk, Manager,
Engineer, …)
65
BPMN Elements – Pools
Pool
 Pools represent business process
participants. They are used to
partition a set of activities.
 Can be a business entity or a
business role.
 Sequence flows cannot cross the
boundaries of a Pool.
 Interaction between Pools are
captured through Message Flow
(dashed lines with an arrow)
66
Order Management example (ctd.)
• The Order Management process now includes
the customer as a process participant...
The Order Management process is started when a
customer places a purchase order. The purchase
order has to be checked against the stock re the
availability of the product(s). Depending on stock
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. The customer makes then makes the
payment.
67
Customer
Order Management BPD with Poola
Place
purchase
order
Make
payment
Invoice
Order Rejection Notification
Purchase
order
Order confirmation
notification
Shipment notification
Send invoice
Supplier
Confirm order
Check stock
availability
Ship goods
Reject order
68
BPMN Elements – Swimlanes
Lane
 Lanes represent sub-partitions within a
pool. They are used to organize and
categorize activities.
 Horizontal vs. vertical
 Meaning is not specified by BPMN, Lanes are
often used for internal roles (e.g., Manager,
Associate), systems (e.g., an enterprise
application), an internal department (e.g.,
shipping, finance), etc.
 Both Sequences Flow and Message Flow
can cross the boundaries of Lanes.
 Lanes can be nested:
 E.g., an outer set of Lanes for company
departments and then an inner set of Lanes
for roles within each department.
69
Order Management example (ctd.)
• The process now includes two departments
within the supplier organization...
The purchase order received by the Sales &
Distribution department has to be checked against the
stock. The order details are sent to the Warehouse
department that returns an availability notification. If
the purchase order is confirmed, the Warehouse
department collects the shipping details from the
customer and ships the goods. The Sales &
Distribution department sends an invoice to the
customer who then makes the payment.
70
Customer
Corresponding BPMN Model
Order rejection
notification
Sales & Distribution
Supplier
Purchase order
Order confirmation
notification
Invoice
Send invoice
Confirm order
Check stock
availability
Availability
notification
Reject order
Warehouse
Order details
Check
product
availability
Ship goods
Note: Strictly applied, BPMN does not allow message flows to happen across
the same pool, but in practice, it’s not uncommon
71
BPMN Exercise 2: Lanes, Pools
• Claims Handling process at a car insurer
A customer submits a claim by sending in relevant
documentation. The Notification department checks
the documents for completeness and registers the
claim. The Handling department picks up the claim
and checks the insurance. 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), a letter is sent to the
customer and the process is considered to be
complete.
72
BPMN Artifacts
Data
Object
• Data Objects are a mechanism to show
how data is required or produced by
activities.
– Represent input and output of a process
activity.
Text Annotation
• Annotations are a mechanism for the
modeller to provide additional text
information to the diagram reader.
– Text annotations do not affect the flow of the
process.
Group
• Groups are a visual mechanism to
logically group diagram elements
informally.
73
BPMN Connections
Directed association
•
Associations are used to link artifacts such as text
or data objects with flow objects.
– Are depicted by a dotted line.
– Can be directed or undirected.
Undirected association
•
They can be used to show inputs and outputs of
activities.
74
Order Management example (ctd.)
• Let’s have a look at some artifacts...
The Purchase Order document serves as an input to the stock
availability check. Based on the outcome of this check, the
status of document is updated, either to “approved” or “rejected”.
Include the relevant documents in the process model. Also, for
visualization purposes, all parts of the processes that use or
update the purchase order should be highlighted.
75
Order Processing Model with Artifacts
Send invoice
Purchase
Order
Confirm order
Check stock
availability
Update PO: [approved]
Ship goods
Update PO: [rejected]
Reject order
Order handling
76
BPMN Exercise 3: Artifacts
The report related to the car accident is searched within the Police
Report database and put in a file together with the claim
documentation. This file serves as input to a claims handler who
calculates an initial claim estimate. Then, an action plan is created
based on a checklist available in the Document Management
system. Based on the action plan, a claims manager tries to
negotiate a settlement on the claim estimate. The claimant is
informed of the outcome, which ends the process.
Please depict all relevant documents in the model. Also visualize
activities that are performed by the claims handler.
77
Part III
BPMN Continues
BPMN Main Elements - Recap
Swimlanes
Pool
Connections
Message
Lane
Association
Flow
Flow Objects
Artifacts
Text Annotation
Activity
Gateway
Event
Data
Object
Group
Check the BPMN Poster: http://www.bpmb.de/index.php/BPMNPoster
79
BPMN Flow Elements – Recap
cond 1
Start Event
Task
End Event
Flow
cond 2
default
OR-Split
AND-Join
c
D
~c
AND-Split
XOR-Decision
XOR Merge
OR-Join
80
BPMN Gateways – Recap
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
81
Example: Exclusive and Parallel
Gateways
Reject order
Check stock
availability
Send invoice
Confirm order
Ship goods
82
Example: Inclusive gateways
83
Alternative: Conditional flows
International Travel
Head of Division
Receive Travel
Request
Domestic Travel
Head of Office
Financial Officer
Approval
84
BPMN Exercise 4
Map the following process fragment using inclusive
gateways and/or conditional flows:
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.
85
Complex gateways
• Sometimes, it is not necessary to wait for all
active branches to complete:
In an order placement process, a quote is sought
from two preferred suppliers in parallel. As soon as
one of them provides a quote, the order placement
process may proceed. The second quote, if any, is
ignored.
86
Complex gateway example
Obtain Quote
from Supplier A
QuoteA
Proceed to
place order...
Obtain Quote
from Supplier B
QuoteB
QuoteA or QuoteB
87
Sub-processes
• A task in a process can be decomposed into a
“sub-process”.
• Use this feature to:
– Break down large models into smaller ones, making
them easier to understand and to explain
– Identify parts of a process model that should be:
•
•
•
•
repeated
executed multiple times in parallel
cancelled, or
compensated.
88
Sub-processes: example
Order Handling Process
Payment
OK
...
Check Purchase
Order
...
...
Payment Process
Issue Invoice
to Customer
Receive Payment
Notice from Bank
Confirm
Payment to
Customer
89
Process hierarchies
Level 3
Process
Inquity and
Quote
Receive and
Validate
Order
...
Receive
Order
Level 4
Enter Order
Credit
Available?
Level 5
Access Credit
Record
Check Credit
...
Clear Order
Contact
customer
account rep.
...
Fragment
of the
SCOR
model
90
Repeated Subprocess: Example
Until no line items pending
Send PO
Receive PO
Response
pending
line items
Receive PO
Update
default
91
Alternative: Arbitrary cycles
• Another way of capturing “repetition” is through “cycles”
• Choice between looping or cycles is often a matter of taste, but if
it is possible to meaningfully cluster the activities to be repeated
as a sub-process, looping is more suitable.
92
Exercise 5: Repetition
After a claim is registered, it is examined by a
claims officer. The claims officer then writes a
“settlement recommendation”. This
recommendation is then checked by a senior
claims officer who may mark the claim as “OK”
or “Not OK”. If the claim is marked as “Not OK”,
it is sent back to the claims officer and the
examination is repeated. If the claim is OK, the
claim handling process proceeds.
93
Event types
Start/End Event – Indicates that an instance of the
process is created/terminated when an event occurs
without specifying the cause of this event
Intermediate event – Indicates that an event is
expected to occur during the process, without
indicating the cause of the event
Start Message Event – Indicates that an instance of
the process is created when a message is received
End Message Event – Indicates that the process is
terminated when a message is received
Intermediate Message Event – Indicates that an
event is expected to occur during the process the
event is triggered when a message is received.
94
Event types (cont.)
Start Timer Event – Indicates that an instance of the
process is created at certain date(s)/time(s), e.g. start
process at 6pm every Friday
Intermediate Timer Event – Triggered at certain date(s)/
time(s), or after a time interval has elapsed since the
moment the event is “enabled”
End Link Event – Indicates that the process flow continues
elsewhere (e.g. in a separate diagram)
Start/Intermediate Link Event – Indicates that the process
flow is being picked up from a “previous” diagram”.
Intermediate/End Exception Event – Indicates an error: the
“end” version generates the exception event while the
“intermediate” version consumes it
Intermediate/End Compensate Event – Indicates that the
enclosing process must be compensated: the end version
generates the compensation event while the “intermediate”
version consumes it
95
Modelling with events - Example
A PO handling process starts when a PO is received.
The PO is first registered. If the current date is not a
working day, the process waits until the following
working day before proceeding.
Otherwise, an availability check is performed and a
“PO response” is sent back to the customer.
Anytime during the process, the customer may send a
“PO change request”. When such a request is
received, it is just registered, without further action.
96
Modelling with events - Example
Next working day
weekend/holiday
Receive PO
Check
Availability
Register PO
Send PO
Response
Receive PO
Change
Register PO
Change
97
Event-based decision
• With the XOR-split gateway, a branch is chosen
based on expressions that evaluate over
available data
 The choice can be made immediately after the
incoming flow fires
• Sometimes, the choice must be delayed until
something happens  choice is based on a race
between events
• This is why BPMN distinguishes data-driven and
event-driven XOR-splits
98
Event-based decision – Example
After a purchase order is sent, a customer can
receive either a “PO Response” or an error
message. It may happen that no response is
received at all. If no response is received after
24 hours or if an error message is received, the
purchasing officer should be notified. Otherwise,
the PO Response is processed normally.
99
Event-based decision – Example
Receive PO
Response
Process PO
Response
Receive Error
Message
After 24 hours
Notify
Purchasing
Officer
100
Exercise 5
In the context of a claim handling process, it is
sometimes necessary to send a questionnaire to the
claimant to gather additional information. The claimant is
expected to return the questionnaire within five days. If
no response is received after five days, a reminder is
sent to the claimant. If after another five days there is still
no response, another reminder is sent and so on until
the completed questionnaire is received.
101
Exception handling
• Exceptions are events that deviate a process from its
“normal” course
• Handling exceptions often involves stopping a subprocess and performing a special activity
• Achieved using two event nodes:
– An “end error event” that stops the enclosing
subprocess execution
– An “intermediate error event” attached to the enclosing
subprocess – this is where the process execution will
continue after the error
102
Exception handling – Example
Consider the previous “PO Change Request”
example with the following variation: When a PO
Change Request is received, it is first checked to
determined if it can be accepted. If it is accepted,
any processing related to the PO must be
stopped. The PO change request is then
registered. Thereafter, the process proceeds as it
would after a “normal” PO is registered.
103
Exception handling – Example
Next working day
weekend
Handle PO
Receive
PO
Check
Availability
Send PO
Response
Register
PO
Receive PO
Change
Check PO
Change
OK
PO
Changed
default
PO
Changed
...
Register
Modified PO
104
Exercise 6
Extend the claim handling process as follows:
After checking the insurance policy, a possible outcome is
that the insurance is invalid. In this case, any processing
is cancelled and a letter is sent to the customer. In the
case of a complex claim, this implies that the damage
checking is cancelled if it has not yet been completed.
105
Modelling conventions
Why use modelling conventions?
– To reduce variety
– Increase the comparability of models
– Support the analysis (with clear syntax, sematic and layout
standards)
– Acceleration and simplification (just start and ‘Go’)
– …
Different types of modelling conventions?
– Organisational level
– Project level
– …
106
Modelling Guidelines
Typical categories of guidelines:
• Naming conventions for processes, tasks and
events
• Guidelines for layout and usage of tasks,
events, lanes and pools
• Process elements “to be avoided”
107
Naming conventions for
processes and tasks
• Names should be 1-3 words long
• Begin with a verb followed by business object
name and possibly an adjective (e.g. Issue
Driver Licence, Renew Driver Licence via Offline
Agencies)
• Avoid generic verbs such as Handle, Record…
• Avoid prepositions (to, from, for)
• Avoid naming business areas which are already
named in a lane/pool
108
Verbs to avoid
• Update, Create, Read, Delete, Record, Download,
Transmit: Too technical. Try Amend, change,
generate, retrieve, remove, capture, register, forward
• Send: Could merely be a message flow from one
business process to another.
• Process, Handle, Manage: Too generic, would not
reflect the specific objective of the process. Try
disseminate, distribute, etc.
• Input: Why do we have to input data? Maybe there is
an opportunity for process optimisation here…
109
Naming conventions for events
• For start/intermediate message events:
indicate what is being sent or received (e.g.
Invoice Received)
• For end message events indicate what is
being sent (e.g. Order Sent)
• For time events, indicate frequency or
deadline, e.g. Monthly, Weekly, Invoice Due.
• Event names (except for timer events): should
begin with a noun followed by a past participle
110
Usage and layout guidelines
• A task must always have at least one incoming and
one outgoing flow
• Input flows should come from the left or from the top
• Output flows should come out of the right or the
bottom
• A process model should contain at least one pool
• Pools must be laid out horizontally
• A pool may appear multiple times in a diagram to
improve presentation, but the name of the repeated
pool must be italicised.
• Use link events to split large diagrams across multiple
pages
111
Homework (10 points)
• See homework in course web page:
– http://courses.cs.ut.ee/2011/bpm/Main/Lectures
• Can be completed in teams of up to 4 members
• To be submitted by e-mail by 14 March at
9:00am (hard deadline)
112