BPMN in Practice - creative-adit.de · 35" The camunda BPMN Framework Level 2 Operational process...
Transcript of BPMN in Practice - creative-adit.de · 35" The camunda BPMN Framework Level 2 Operational process...
2
Master of Science Wirtschaftsinformatik Master of Science Computer Science Consultant and Trainer for Business Process Modeling Specialization of Applying the Business Process Model and Notation (BPMN)
Process Modeling with BPMN in different application scenarios
Creating & Adapting Modeling Guidelines (Modeling Conventions)
Requirements Engineering & Business-IT-Alignment
Matthias Schrepfer [email protected]
3
1. What you should already know
2. Some more advanced stuff!
3. Some more realistic processes!
4. Real-world examples!
5. Challenges in practice!
6. Live Demo!
Agenda
5
Shop for groceries Eat mealPrepare meal
Hunger noticed Meal prepared Hunger
satisfied
None start event
Task None intermediate event
None end event
Sequence flow
Tasks and Events
6
XOR-Gateways can also merge Paths
Hungernoticed
Data-based exclusive gateway
(merging)
Choose recipe
Desired dish?
Cook pasta
Cook steak
Pasta
Steak
Prepare saladSalad
Eat meal
Hunger satisfied
7
Preparing Salad and Main Course at the same time
Hunger noticed
Choose recipe
Desired dish?
Cook pasta
Cook steak
Pasta
Steak
Eat meal
Hunger satisfied
Prepare salad
3 minutes 15 minutes
10 minutes
20 minutes
Parallel gateway (parallelized)
Parallel gateway (synchronizing)
10 minutes
8
Hungernoticed
Choose recipe
Desired dish?
Cook pasta
Cook steak
Pasta
Steak
Eat meal
Hunger satisfied
Prepare saladSalad
Desired components?
Somethingreal
Flat
-sha
ring
com
mun
ity
Chr
istia
n
Eat meal
Hunger satisfied
Eat meal
Hunger satisfied
Falk
oR
ober
tFormal vs. Practice The pool controls the process
The process controls the humans!
9
Events in BPMN
NEW in BPMN 2.0
Start events
None: Untyped events; none intermediate events can mark a change of status.
Message: Receiving and sending of messages.
Timer: Cyclic timer event, points in time, or time spans.
Error: Triggering and treatment of defined errors
Conditional: Reacting to changed conditions and relation to business rules.
Signal: Signaling across different processes. A signal can be reacted to several times.
Terminate: Triggers the immediate termination of the process.
Cancel: Reaction to canceled transactions or triggering of cancelations.
Compensation: Handling or triggering of a compensation.
Multiple: Occurence of one of several events; triggering of all events.
Link: Two associated link events represent a sequence flow.
Escalation: Reporting to the next higher level of responsibility.
Parallel multiple: Occurence of all events.
? ?
The process is started by the engine.
The process continues only, if the event occurs.
The process triggers the event at the end of the process path.
The event is reacted to, the activity is canceled.
The event subprocess is started, the parent process canceled.
The event subprocess is started, the parent process is not canceled.
The event is reacted to, the activity is not canceled.
The process triggers the event and continues immediately.
Intermediate events End eventsCatching events Throwing events
? ? ????
Symbols of BPMN (following the BPMN poster of the Berlin BPM offensive: www.bpmb.de/poster)Taken from "Praxishandbuch BPMN" by Jakob Freund and Bernd Rücker; © 2010 Carl Hanser Verlag Munich
10
Throwing Message Event
Choose pizza Eat pizza
Hunger noticedPizza
orderedHunger satisfied
Pizza received
11
After Splitting the Paths At the Event-Based Gateway, the
one That Produces the First Result Is Taken
Choose pizza Eat pizza
Hunger noticed Hunger satisfied
Pizza received
Order pizza
60 minutes
Inquire at pizza delivery service
Pizza received
Event-based exclusive Gateway
(splitting)
14
The Process Orchestration P
roce
ss c
ondu
ctor
Start
Task 1
Task 2
Task 3
Task 4
End
Rob
ert
Falk
oC
hris
tian
Ste
fan
Each Process Participant Has his Own Pool
Start
Task 1
Task 2
Task 3
Task 4
Foward to Falko
Forward to Christian
Forward to Stefan
Rob
ert
Falk
oC
hris
tian
Ste
fan
Separate pool
Message flow
16
Two Processes How Do They Work Together? Pi
zza
Cus
tom
er
Choose pizza Eat pizza
Hunger satisfied
Pizza received
Order pizza
60 minutes
Inquire at pizza delivery service
Pizza received
Hungernoticed
Pay for pizza
Bake pizza
Order received
Pizz
a D
eliv
ery
serv
ice
Pizz
a ba
ker
Del
iver
y pe
rson
Deliver pizza Collect money End
17
The Collaboration Diagram
Bake pizza
Order received
Piz
za D
eliv
ery
serv
ice
Piz
za b
aker
Del
iver
y pe
rson
Deliver pizza Collect money End
Piz
za C
usto
mer
Choose pizza Eat pizza
Hunger satisfied
Pizza received
Order pizza
60 minutes
Inquire at pizza delivery service
Pizza received
Hungernoticed
Pay for pizza
18
The Perspective of the Customer Pi
zza
Cus
tom
er
Choose pizza Eat pizza
Hunger satisfied
Pizza received
Order pizza
60 minutes
Inquire at pizza delivery service
Pizza received
Hungernoticed
Pay for pizza
Delivery serviceCollapsed poolExpanded pool
19
The Timeout for the Choose pizza Is 30 Minutes
Choose pizza
Hungernoticed
30 minutes
Order pizza
Pizza received
Eat meal
Cook pasta
Hungersatisfied
20 NEW in BPMN 2.0
Start events
None: Untyped events; none intermediate events can mark a change of status.
Message: Receiving and sending of messages.
Timer: Cyclic timer event, points in time, or time spans.
Error: Triggering and treatment of defined errors
Conditional: Reacting to changed conditions and relation to business rules.
Signal: Signaling across different processes. A signal can be reacted to several times.
Terminate: Triggers the immediate termination of the process.
Cancel: Reaction to canceled transactions or triggering of cancelations.
Compensation: Handling or triggering of a compensation.
Multiple: Occurence of one of several events; triggering of all events.
Link: Two associated link events represent a sequence flow.
Escalation: Reporting to the next higher level of responsibility.
Parallel multiple: Occurence of all events.
? ?
The process is started by the engine.
The process continues only, if the event occurs.
The process triggers the event at the end of the process path.
The event is reacted to, the activity is canceled.
The event subprocess is started, the parent process canceled.
The event subprocess is started, the parent process is not canceled.
The event is reacted to, the activity is not canceled.
The process triggers the event and continues immediately.
Intermediate events End eventsCatching events Throwing events
? ? ????
Symbols of BPMN (following the BPMN poster of the Berlin BPM offensive: www.bpmb.de/poster)Taken from "Praxishandbuch BPMN" by Jakob Freund and Bernd Rücker; © 2010 Carl Hanser Verlag Munich
Events in BPMN
22
The Subprocess Reports an Error To its Parent
Order received
End
Check availability
Ord
er p
roce
ssin
g
Item procurement
Dispatch item Financial processing
Yes
No
Item available?
Sto
ck m
aint
enan
ce
Below minimum stock level of
item
Item procurement
Item procured
Item
pro
cure
men
t
Start
Place order
Not available
Not available
Inform customer
Available?
Expect deliveryYes
No
Not available
...
End
Delete item from catalog
Item deleted
Delete item from catalog
23
The Difference Between Error and Escalation
Order received
End
Check availability
Ord
er p
roce
ssin
g Item procurement
Dispatch item Financial processing
Yes
No
Item available?
Item
pro
cure
men
t
Start
Place order
Not available
Inform customer
Available?
Expect delivery
in >2 days
No
Not available
...
End
Delete item from catalog
Late delivery
Inform customer
End
Late delivery
in 2 days
24
Manage Business Rules in Process Diagrams?
Check delivery date
Fax order confirmation
Ord
er p
roce
ssin
g
Check order details Check creditNew
customer
Class A customer
Customer?
Order value?
Order value?
Other regularcustomer
50,000
> 300,000
otherwise
otherwise
Order received
26
Referencing the Rule Set in the BPD
Check delivery date
Fax order confirmation
Ord
er p
roce
ssin
g
Check order details Check credityes
no
Credit to be checked?
Apply set of rules
Set of rules Credit to
Order received
33
Different Application Scenarios
IT Projects Organizational Projects
Requirements Management
Process Execution
Technical Implementation
Business-IT-Alignment
Process Design
Process Documentation
34
camunda BPM Lifecycle
Process survey Process documentation
Process conception
Process implementation
Process controlling
Process analysis
Existing process
New process
Yes
No
Weak points?
Current state process model
Target state process model
Current state process model
BPM governance
Continuous until process improvement is required
Workshops, interviews, monitoring
Modeling, process maps, flow diagrams
Change management, conventional IT projects, process automation
Modeling target state design, process simulation, assessment of alternatives, ROI estimate
Diagnose problems, search for causes, estimate potential
Process Design
35
The camunda BPMN Framework
Level 2Operational process model
Level 3aTechnical
process model
Level 1Strategic
process model
Level 3bIT specification
Level 4bImplementation
Process landscape
Content: Process overviewGoal: Fast comprehensionSemantics: Logically abstract
Content: Operational processesGoal: Coordination detailsSemantics: Physically specific
Content: Technical detailsGoal: ImplementationSemantics: Physically specific
Functional(business)
Technical(IT)
With process engine
Without process engine
37
Roles and Tools
Analyst Developer End user
problems, wishes, priorities...
TO-BE-processes, requirements, ...
feasibility, effort, ...
suggestions, roadmaps, costs...
38
Invoice Inbound
Executable process
End user 2
3 a
1
3 b
4
Biz
IT
BPMN framework ( c ) camunda services GmbH