You are on page 1of 280

BPMN 2.

0 Training

Version 2021-02
2

2
Agenda

• Getting Started with BPMN • Data in BPMN Selected chapters from:


• BPMN in the context of • Boundary events • Introduction of BPMN
BPM Ÿ Process Documentation
• More event types
• More BPMN elements Ÿ Business-IT-Alignment
• Task types and markers
• Introduction to tooling • Process automation
• Event subprocesses
• BPMN events • Process controlling
• Last Symbols
• Orchestration and • BPMN Guidelines
collaboration
• DMN

3
Exercises and Trainingmaterial

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Important symbols
A first BPMN model…

8
Basic elements
Flow objects Connecting objects Artifacts

Activity Sequence flow Annotation Text

Event Message flow Group

Custom
Gateway Association ?
artifacts

Participants Data

Data object Data input


Lane
Pool

Lane

Data store Data output

9
What BPMN should be used for

BPMN at its best:


Ÿ Processes

BPMN is not suitable for:


Ÿ Process landscapes
Ÿ Organizational structures
Ÿ Data
Ÿ Strategies
Ÿ Business rules
Ÿ IT landscapes

10
Tasks and events

None start None intermediate None end


Task
event event event

Sequence
Flow

11
The XOR-gateway

Data-based
exclusive
gateway
(splitting)

12
XOR-gateways can also merge

Data-based exclusive
gateway (merging)

13
Don‘t be afraid of loops – they are welcome!

No need to
split “before“
merge

14
Combined merge/split

Data-based Data-based Data-based


exclusive gateway exclusive gateway exclusive gateway
(merging/splitting) (merging) (splitting)

15
What happens if no condition applies?

Default
flow

16
Preparing salad and main course

Association

Annotation

17
Preparing salad and main course at the same time

Parallel Gateway
(Parallelized) Parallel Gateway
(synchronizing)

18
What happens in this process?

19
What happens in this process?

20
Example: ATM

21
Syntactical correctness of process models

• Core Question: Is BPMN applied correctly?


• Typical misuse:
Ÿ “new“ symbols are used incorrectly
Ÿ Existing symbols are used incorrectly
Ÿ Symbols are combined incorrectly

place order

supply
start milestone
ordered

Synta
ct
corre ically
check order ct?

22
Semantic correctness of process models

• Check for consistency of models related to


a reality
• Knowledge about the reality must be
available (humans!) check
• Knowledge discovery often done in
discussions/workshops with process
participants reality process
• Tool support only partially possible model

23
BPMN in the context of BPM
The two faces of BPM
Organizational View

Business Process Organizational Business


Organization
Reengineering - BPR Process Management
since 1990 1990 - 2000 since 2000
Business
Business Process Management - BPM
IT
since 2004

Process Automation

since 2006
Human Service-oriented
Workflow Management Architectures (SOA)
since 2000 since 2005
Document-Management – Enterprise Application
Systems – DMS (i.a.) Integration – EAI

25
Do you know your processes?

26
The problem of functional organizations

27
Process-centered organizations

Clear focus on Business Processes

28
Business Process Maturity Levels

# Name Description
1 Initial Wherein business processes are performed in inconsistent sometimes adhoc
ways with results that are difficult to predict.
2 Managed Wherein management stabilizes the work within local work units to ensure that it
can be performed in a repeatable way that satisfies the workgroup‘s primary
commitments. However, work units performing similar tasks may use different
procedures.
3 Standardized Wherein common, standardizes processes are synthesized from best practices
identified in the work groups and tailoring guidelines are provided for supporting
different business needs. Standard processes provide an economy of scale and
a foundation for learning from common measures and experience.
4 Predictable Wherein the capabilities enabled by standard processes are exploited and
provided back into the work units.
5 innovative Wherein both proactive and opportunistic improvement actions seek innovations.

29
Business processes are different

Maturity Level Maturity Level Opportunites Real life


AS-IS TO-BE

2/3 2/3 AS-IS discovery & Support processes


documentation;
TO-BE transformation
1 2/3 TO-BE creation Core processes

1 1 - Management processes

30
Example: Damage adjustment ≠ Damage adjustment

For car insurance For personal insurance

Parameters • Occurs often, damages are relatively low • Mostly seldom, damages high
• Narrow possible bandwith • Wide range of damages (pensions etc.)
• Regulation must be efficient • Regulation must be effective
Consequences • Standardized work instructions • Less standardized flows, high dynamics
• Dynamic only for exceptions (suspected fraud) • Based on know–how of employees
Conclusion • Automation can just partially support the
• Automation possible and profitable
workflow

31
Roles in BPM
Scope Role
Entire Project Manager
Implements BPM as a methodology
organisation
CPO
Oversees the overall process architecture

Business Process expert


Is a process user, who actively involved in the process.
processes
Process owner
Manages the process performance and KPIs
Process modeler
Creates BPMN process models
External view Process consultant
Works on a project and its conception and on the
performance of processes
Process auditor
Audits processes

32
The process engine

Process Model Monitoring and


Process Engine
Reporting

Recording
cycle time
Modeling

Human Task Service-Call Service-Call Human Task

Human Workflow Service


Management Orchestration

Process participant IT-System IT-System Process participant

33
Human task management

34
BPEL (Business Process <?xml version="1.0" encoding="UTF-8"?>
<bpws:process name="SimpleBPEL"
targetNamespace="http://www.camunda.com/example" ... >
Execution Language) ...
<bpws:partnerLinks>
<bpws:partnerLink name="client"
myRole="SimpleBPELProvider"
partnerLinkType="tns:SimpleBPEL"/>
<bpws:partnerLink name="someWebservice"
partnerRole="ServiceProvider"
partnerLinkType="tns:SimpleService"/>
</bpws:partnerLinks>
<bpws:variables>
<bpws:variable messageType="tns:RequestMessage" name="input"/>
<bpws:variable messageType="tns:InvokeMessage" name="parameter"/>
</bpws:variables>
<bpws:sequence name="main scope">
<bpws:receive name="receive"
createInstance="yes"
operation="initiate"
variable="input"
partnerLink="client"
portType="tns:SimpleBPEL"/>
<bpws:assign name="assign" validate="no">
...
</bpws:assign>
<bpws:invoke name="invoke"
operation="methodName"
inputVariable="parameter"
partnerLink="someWebservice"
portType="tns:ServiceInvoke"/>
</bpws:sequence>
</bpws:process>

35
Development of BPMN

until 2002 Development


Stephen A. White, IBM

2002 First release


Business Process Management Initiative (BPMI)

2005 Development
Object Management Group (OMG)

2013 Further Standardization


International Standardization Organization

Current Version: BPMN 2.0.2 since January 2014

36
Proposed architecture with BPMN 1.2

BPEL
Engine
BPMN 1.2 as a model

37
Proposed architecture with BPMN 2.0

BPMN
Engine

38
Symbols and attributes

39
Models and their target groups

40
Different application scenarios

Business-IT- Technical
Alignment Implementation

Process Process Requirements Process


Documentation Design Management Execution

Organizational IT Projects
Projects

41
Let‘s continue with BPMN…..
How long does the process instance take to finish?

43
Various options in the combination of our meal

44
The OR-gateway enables a compact representation of
complex path variants

Data-based inclusive Data-based


gateway inclusive gateway
(splitting/ (merging/
parallelizing) synchronizing)

45
An incredibly (?) compact version

46
How long does the second OR-gateway need to wait?

Wait?

47
Eliminate the OR-Join
Exercise 2

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Implicit vs. explicit modeling

Implicit XOR Implicit AND

= =

Explicit XOR Explicit AND

49
OR-Split with conditional flows

Conditional
Flow =

50
The same process?

51
Responsibilities represented using lanes

Pool

Lane

52
Incorrect lane handling
Error: This
representation is not
permissible in BPMN

53
Correct lane handling

54
Formal vs. practical point of view
The pool controls
the process

The process Controlled by the pool


controls the
participants Controlled by humans

55
Interlacing lanes into sub-lanes

56
Some conventions: naming and layout

Object + Object + verb Question and


status (inf.) answer

57
Cawemo
Demo
Dispatch of Goods
Exercise 1

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
The complex gateway

Complex gateway

60
Events in BPMN
Start Event

When the start event


gets triggered, a new
process instance
starts with a new
token.

62
Most important events in BPMN

63
The process will wait for the message

Pizza

Pizza
restaurant
64
„Throwing“ message event

Not recommended!
Use Task instead

65
With this, multiple Start Events are possible!

If any of the events


get triggered, a new
process instance
starts
This is always a
deadlock

66
Examples for timer events

67
The conditional event

68
What happens if the pizza didn‘t arrive?

69
The first event that is triggered determines the sequence
flow
eventbased
exclusive gateway

70
Applying the event-based gateway

71
Recourse
Exercise 3

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
A task and a collapsed subprocess

73
The expanded subprocess

74
Reusing process models using call activities

75
Annotations and groups

Annotation Group Group

76
Custom artifacts

Custom Custom
artifact artifact

77
Search for Errors
Exercise 4

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Orchestration and collaboration
The process orchestration

80
For the orchestration, the conductor controls the process

1st flute
2nd Violine
2nd flute
1st Violine 2

3
1
Cello
4

81
82
For collaboration, the participants control their
processes and inform each other

Guitar Bass
2

Singing

3
Guitar
1

Drums
82
Each process participant operates in a separate pool

Separate Pools
Message Flow

83
Two processes – How do they work together?

84
The collaboration diagram

85
The customer‘s perspective

Expanded Pool

Collapsed Pool

86
Acceptable constructs for working with pools and
message flows

87
Forbidden constructs

88
Synchronous communication

• Synchronous means sending a


message and awaiting the answer
in a “short” time
• The sender waits until the
message arrives (blocking
possible!)
• The sender cannot perform any
actions between sending and
receiving the messages

89
Asynchronous communication

• Asynchronous means
Ÿ sending out a message
Ÿ optionally waiting for a reply to
the message
• Between sending and
receiving the message further
actions can be performed

90
Credit Scoring
Exercise 6

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Self Service Restaurant
Exercise 7

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Modeling Data
Using data objects

Data Association

Data Object

94
Input and output data object, collection, data store

Collection of
Data Inputs
Object

Output Data
Object

Data Store

95
Using data elements

Message Object

96
Pizza process with messages

97
Cooking with BPMN
Übung 5

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Attaching boundary events
Boundary events
Catching events Throwing events
Start events Intermediate events End events
The process triggers
The process is The event subprocess is The event subprocess is The process The process triggers the
The event is reacted to, The event is reacted to, the event and
started by the started, the parent process started, the parent process is continues only, if the event at the end of the
the activity is canceled. the activity is not canceled. continues
engine. canceled. not canceled. event occurs. process path.
immediately.

? ? ? ? ? ? ? ?

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.

Conditional: Reacting to
changed conditions and relation
to business rules.

Link: Two associated link events


represent a sequence flow.

Signal: Signaling across different


processes. A signal can be
reacted to several times.

Error: Triggering and


treatment of defined errors

Escalation: Reporting to the next


higher level of responsibility.

Terminate: Triggers the


immediate termination of the
process.

Compensation: Handling or
triggering of a compensation.

Cancel: Reaction to canceled


transactions or triggering of
cancelations.

Multiple: Occurence of one of


several events; triggering of all
events.

Parallel multiple:
Occurence of all events.

Symbols of BPMN (following the BPMN poster of the Berlin BPM offensive: www.bpmb.de/poster)
NEW in BPMN 2.0 Taken from "Praxishandbuch BPMN" by Jakob Freund and Bernd Rücker; © 2010 Carl Hanser Verlag Munich

100
The attached message event results in the cancellation of
the task “Search for error“

101
Model timeouts

102
The catching event cancels the entire subprocess

103
Non-interrupting boundary events

104
Pizza order - interrupting the inquiry
Exercise 9

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
More event types
More event types

Catching events Throwing events


Start events Intermediate events End events
The process triggers
The process is The event subprocess is The event subprocess is The process The process triggers the
The event is reacted to, The event is reacted to, the event and
started by the started, the parent process started, the parent process is continues only, if the event at the end of the
the activity is canceled. the activity is not canceled. continues
engine. canceled. not canceled. event occurs. process path.
immediately.

? ? ? ? ? ? ? ?

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.

Conditional: Reacting to
changed conditions and relation
to business rules.

Link: Two associated link events


represent a sequence flow.

Signal: Signaling across different


processes. A signal can be
reacted to several times.

Error: Triggering and


treatment of defined errors

Escalation: Reporting to the next


higher level of responsibility.

Terminate: Triggers the


immediate termination of the
process.

Compensation: Handling or
triggering of a compensation.

Cancel: Reaction to canceled


transactions or triggering of
cancelations.

Multiple: Occurence of one of


several events; triggering of all
events.

Parallel multiple:
Occurence of all events.

Symbols of BPMN (following the BPMN poster of the Berlin BPM offensive: www.bpmb.de/poster)
NEW in BPMN 2.0 Taken from "Praxishandbuch BPMN" by Jakob Freund and Bernd Rücker; © 2010 Carl Hanser Verlag Munich

107
Signal events

A signal can have


multiple recipients
(1:n relation)

108
The process always ends after 55 minutes

109
The process may be terminated after task 3

110
The subprocess reports an error to its parent

111
The difference between error and escalation

112
Handling problems
Exercise 10

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Task types and markers
Task types

Undefined Receive Script

Receive
Manual Service
(instantiating)

User Send Business rule

115
User Task

116
Service Task

117
Business Rule Task

118
Customer Onboarding

119
Adhoc subprocess

120
Loop marker

121
Loops

This is
functionally
similar to this

122
Multi instance marker

123
Multi instance

This is
functionally
similar to this
but allows for a
dynamic
number of
tasks or sub
processes

124
Multiple instance options

125
Multiple instance example: ordering pizza

126
Multiple instance example: pizza delivered

127
Allowed & forbidden markers

Loop Compensation Compensation Compensation


MI Task
Task Task Loop Task MI Task

Compensation Compensation
Loop MI Compensation
Loop MI
Sub-Process Sub-Process Sub-Process
Sub-Process Sub-Process

Compensation Loop MI
Adhoc
Adhoc Adhoc Adhoc
Sub-Process
Sub-Process Sub-Process Sub-Process
~ ~ ~ ~

Compensation Compensation
Loop Adhoc MI Adhoc
Sub-Process Sub-Process
Loop = Schleife
~ ~
MI = Multiple Instances = Mehrfachinstanz

Compensation = Kompensation

~ Adhoc = Adhoc

Adhoc Loop MI Loop MI


Task Task Sub-Process
~

128
Event Subprocesses
Calm Pizza Customer Down
Exercise 8 – Part 1

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Event Subprocesses

Catching events Throwing events


Start events Intermediate events End events
The process triggers
The process is The event subprocess is The event subprocess is The process The process triggers the
The event is reacted to, The event is reacted to, the event and
started by the started, the parent process started, the parent process is continues only, if the event at the end of the
the activity is canceled. the activity is not canceled. continues
engine. canceled. not canceled. event occurs. process path.
immediately.

? ? ? ? ? ? ? ?

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.

Conditional: Reacting to
changed conditions and relation
to business rules.

Link: Two associated link events


represent a sequence flow.

Signal: Signaling across different


processes. A signal can be
reacted to several times.

Error: Triggering and


treatment of defined errors

Escalation: Reporting to the next


higher level of responsibility.

Terminate: Triggers the


immediate termination of the
process.

Compensation: Handling or
triggering of a compensation.

Cancel: Reaction to canceled


transactions or triggering of
cancelations.

Multiple: Occurence of one of


several events; triggering of all
events.

Parallel multiple:
Occurence of all events.

Symbols of BPMN (following the BPMN poster of the Berlin BPM offensive: www.bpmb.de/poster)
NEW in BPMN 2.0 Taken from "Praxishandbuch BPMN" by Jakob Freund and Bernd Rücker; © 2010 Carl Hanser Verlag Munich

131
How can we handle a cancellation?

132
The way we already know: With boundary events!

133
The way we already know: Subprocess and a boundary
event!

134
The new way: With an event subprocess!

135
Event subprocess: timeouts

136
Event subprocess: global error handling

137
Calm Pizza Customer Down
Exercise 8 – Part 2

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Attaching events to subprocesses

139
Local event subprocesses

Non interupting
event sub-
process

Interupting
event sub-
process

140
Collapsed event subprocesses

Dinner preparation

Choose recipe Prepare meal

Start End
Invite friends
Eat meal
for dinner
Start End
Provide for
Procure food
guest

141
…now the last symbols
Associated link events can replace a sequence flow

143
Event type: multiple

Buy pizza Eat pizza

Seen pizza TV ad In the mood Rated pizza on


or a friend has for pizza Pizzatest.de
recommended a new and sent rating to
pizza friends

Important:
Different semantics

144
Alternative for multiple event

145
Event type: multiple parallel

Buy pizza Eat pizza

Seen pizza TV ad In the mood for Rated pizza on


and a friend has pizza Pizzatest.de
recommended a new and sent rating to
pizza friends

146
Instantiating gateways

NOT RECOMMENDED!

DEADLOCK!

147
Compensation

148
Compensation event

149
Transactions

150
BPMN Roulette
Exercise

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Reservation System
Exercise 14

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Coupling of processes
Types of coupling

Direct coupling Indirect coupling


• Message flows • System status
• Signal events • Process data
• Call activities
• Decomposition (Sub-process)

154
Direct Coupling

Characteristics:
• The linked process is called / started directly
• Coupling is obvious in the model
• Synchronous calls are possible

155
Direct coupling: message flows

See also:

Orchestration and
collaboration

156
Coupling with message flows in practice

• Typically, each model describes one process


• Collapsed pools are used to point out the coupling

157
Direct coupling: signal event

158
Difference: message vs. signal

A signal can have


multiple recipients
(1:n relation)

A message flow
always has one
sender and exactly
one recipient
(1:1 relation)

159
Difference: escalation

• Escalation and error events just allow a vertical


communication (within one process hierarchy)
• They can only be received by attached boundary
events or in an event sub process.

160
Direct coupling: call activity

• The call activity is started directly by


the main process

161
Direct coupling: decomposition (collapsed subprocess)

Disadvantage: By using
= • The subprocess is
started directly by
the main process
the decomposition, the
sub process is not
visible

162
Indirect coupling

Characteristics:
• The linked process is not called / started directly
• Usually requires gathering of status data from the linked process
• Coupling is not obvious in the model
• Is necessary for coupling batch and non-batch processes

163
Indirect coupling: system status

Often the coupling is


not obvious in the
process

164
Indirect coupling: process data

165
Introducing BPMN on a broad base
Different application scenarios

Business-IT- Technical
Alignment Implementation

Process Process Requirements Process


Documentation Design Management Execution

Organizational IT Projects
Projects

167
The camunda BPM lifecycle

Current state
process model
New process
Diagnose problems,
Workshops, interviews, search for causes,
monitoring estimate potential

Weak points?

Process Process
Process survey Yes
Modeling target state design,
documentation analysis
process simulation, assessment
Existing of alternatives, ROI estimate
No
process Current state
process
Modeling, process maps,
flow diagrams
model
Process Process
Process
controlling Design
conception

Continuous until process


improvement is required

Process
implementation

Change management, Target state


conventional IT projects, process model
process automation

BPM governance

168
Clarifying goals is critical

Roles

Methods
Goals Tools

Processes

169
Knowledge allocation for BPMN

External
Gurus consultants

Followers

Non-Users

170
Assignment In larger organizations

Top management

BPM CC

Division A Division B Division C Division D

171
Camunda house

Strategic process model

Operational process model bird's eye view


vs.
worm's-eye view
Human Technical
process flow process flow

172
Camunda house

• Fast comprehension
• Logically abstract
Strategic process model

Operational process model • Precise description


• Physically specific
• Human process flow
• Work procedures
• User Experience
Human Technical
process flow process flow
• Automated control flow
• Code
• Interaction flow
• Interaction between
user and system

173
Strategic level on a broad scale, operational only if
needed
Process modelling on strategic level
(Usually in context of AS-IS discovery)
Detailed modeling
on operational
level
(in context of

Process 6
Process 1

Process 2

Process 3

Process 7
process 4

process 5
process design/
optimization)
Technical
modeling on
operational level
(in context of
process
execution)

174
Top-Down-Bottom-Up: continuous improvement

Inspect and adapt

Process owner

(Cross-functional)
Process team

“BPMM Level 3: Wherein common, standardizes processes are synthesized


from best practices identified in the work groups [...]”

175
BPM – agile or classic

ROI
BPM
agile project
return
classic

ROI
BPM
project

ROI
ROI
BPM
project
ROI

BPM
project BPM project

time

176
CIP in the BPM lifecycle
Current state
process model
New process
Diagnose problems,
Workshops, interviews, search for causes,
monitoring estimate potential

Weak points?

Process Process
Process survey Yes
Modeling target state design,
documentation analysis
process simulation, assessment
Existing of alternatives, ROI estimate
No
process Current state
process
Modeling, process maps,
flow diagrams
model
Process Process
Process
controlling Design
conception

Continuous until process


improvement is required

Process
implementation

Change management, Target state


conventional IT projects, process model
process automation

BPM governance

177
Success factors for CIP
Modeler

• Correct process models


• Comprehensible process models

• Omnipresent process models

• Known and constant assignee for improvement


Responsible
executive

• Transparent consideration of suggestions


• Fast and consistent introduction and enforcement of suggestions

178
The alternative?

Annoyed
divisions and Dissatisfied
domain experts modelers

“Dead“
process documentation

“Yes, there once was a project


documenting the processes, but I
guess it was canceled for some
reason. The process models were only
"Tupperware“ used for the ISO audits anyway.“

179
Process documentation
Different application scenarios

Business-IT- Technical
Alignment Implementation

Process Process Requirements Process


Documentation Design Management Execution

Organizational IT Projects
Projects

181
The Camunda BPM lifecycle

Current state
process model
New process
Diagnose problems,
Workshops, interviews, search for causes,
monitoring estimate potential

Weak points?

Process Process
Process survey Yes
Modeling target state design,
documentation analysis
process simulation, assessment
Existing of alternatives, ROI estimate
No
process Current state
process
Modeling, process maps,
flow diagrams
model
Process Process
Process
controlling Design
conception

Continuous until process


improvement is required

Process
implementation

Change management, Target state


conventional IT projects, process model
process automation

BPM governance

182
Clarifying goals is critical

Roles

Methods
Goals Tools

Processes

183
Systematic clarification of all aspects: Goals

• Achieving visibility of the company processes Roles

• Increase the comprehensibility of processes for employees


• Achieving an ISO certification Methods Goals Tools

Processes

184
Systematic clarification of all aspects: Roles

Center of excellence (BPM CoE) Roles

• Definine the methodology, tools, and meta-processes


Methods Goals Tools
• Support the departments (dezentralized teams)
• Establish QA Processes

Departments:

• Dezentralized documentation (business analysis)

185
Systematic clarification of all aspects: Processes

• Process discovery and documentation Roles

• Maintenance and housekeeping of the model repository


• Approval of process models (based on content / based on Methods Goals Tools
underlying methodology)
Processes

186
Systematic clarification of all aspects: Methods

• BPMN + Guidelines (conventions) Roles

• Define the process architecture (e.g., process landscapes)


• Textual descriptions Methods Goals Tools

Processes

187
Systematic clarification of all aspects: Tools

• Collaborative BPMN-modeling Roles

• Support for adminstration of extensive documentation


• Support for customization (e.g, custom artifacts and attributes) Methods Goals Tools

• Integration of the BPMN tool with other business applications (e.g.


Wiki, Sharepoint) Processes

188
Relation to the Camunda House

Strategic process model • Fast comprehension


• Logically abstract
• Human process flow Operational process model
• Work procedures
• User Experience
• Precise description
Human process Technical process • Physically specific
flow flow

• Automated control
flow
• Interaction flow • Code
• Interaction between
user and system

189
“Sick leave process“ at strategic level

190
“Sick leave process“ at operational level

191
“Procurement process“ at strategic level

192
“Procurement process“ at operational level

193
Strategic level on a broad scale, operational only if
needed

Process modeling on strategic level


(usually in the context of an AS-IS discovery)

Detailed modeling
Process 1

Process 2

Process 3

Process 4

Process 5

Process 6

Process 7
on operational
level
(in the context of
process design/
optimization)

194
The Camunda BPM lifecycle

Current state
process model
New process
Diagnose problems,
Workshops, interviews, search for causes,
monitoring estimate potential

Weak points?

Process Process
Process survey Yes
Modeling target state design,
documentation analysis
process simulation, assessment
Existing of alternatives, ROI estimate
No
process Current state
process
Modeling, process maps,
flow diagrams
model
Process Process
Process
controlling Design
conception

Continuous until process


improvement is required

Process
implementation

Change management, Target state


conventional IT projects, process model
process automation

BPM governance

195
Invoice Receipt
Exercise 11 – Part 1

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Business-IT-Alignment
Different application scenarios

Business-IT- Technical
Alignment Implementation

Process Process Requirements Process


Documentation Design Management Execution

Organizational IT Projects
Projects

198
The Camunda BPM lifecycle

Current state
process model
New process
Diagnose problems,
Workshops, interviews, search for causes,
monitoring estimate potential

Weak points?

Process Process
Process survey Yes
Modeling target state design,
documentation analysis
process simulation, assessment
Existing of alternatives, ROI estimate
No
process Current state
process
Modeling, process maps,
flow diagrams
model
Process Process
Process
controlling Design
conception

Continuous until process


improvement is required

Process
implementation

Change management, Target state


conventional IT projects, process model
process automation

BPM governance

199
Systematic clarification of all aspects

Roles

Methods
Goals Tools

Processes

200
Systematic clarification of all aspects: Goals

• Generating the business and IT requirements Roles

• Process execution with a process engine


• Achieving Business-IT-alignment Methods Goals Tools

Processes

201
Systematic clarification of all aspects: Roles

• Centre of excellence (BPM CoE) Roles

• Define the methodology, tools, and meta-processes


Methods Goals Tools
• Support of the departments (dezentralized teams)
• Establish QA Processes

• Departments:
Roles: possibly setting up a BPM
• Decentralized documentation (business analysis) Center of Excellence, Subject
Matter Experts, Process Modelers,
Process Engineers, Technical
• IT:
Consultants, Quality Assurance
• Requirements engineering by IT experts
People
• Technical implementation of the requirements by IT experts

202
Systematic clarification of all aspects: Processes

• Process discovery and documentation Roles

• Maintenance and housekeeping of the model repository


• Approval of process models (based on content / based on Methods Goals Tools
underlying methodology)
• Software development, distribution, tests Processes

203
Systematic clarification of all aspects: Methods

• BPMN Roles

• Definine the process architecture (e.g., process landscapes)


• Textual descriptions Methods Goals Tools

• Guidelines (conventions) for BPMN models and source code


• Requirements engineering, software and system architecture Processes

• UI/UX- Design

204
Systematic clarification of all aspects: Tools

• Collaborative BPMN- modeling Roles

• Support for adminstration of extensive documentation


• Support for customization (e.g, custom artifacts and attributes) Methods Goals Tools

• Integration of the BPMN tool with other business applications (e.g.


Wiki, Sharepoint) Processes

• Process engine for the execution of technical process models

205
A customer‘s AS-IS situation

Analytical
model
(ADONIS)

Executable
model
(Sungard IPP)

206
Analytical model in BPMN 2.0 (BPMN-modeling Tool X)

207
Executable model in BPMN 2.0 (Camunda Modeler)

208
The real world is slightly more complex …

• Complex processes => large and comprehensive process models


• Individual requirements of stakeholders about how a model should look like and what it should
contain:
Ÿ analytical coarse grained
Ÿ analytical fine grained
Ÿ executable fine grained
• Individual expectations about what parts the model should contain:
Ÿ Human view: “What parts are done by human process participants?“
Ÿ Technology-driven view: “What part is performed by the process engine?“
Ÿ Or both and: “How do they interact?“

209
Camunda House

Strategic process model

Operational process model bird's eye view


vs.
worm's-eye view
Human Technical
process flow process flow

210
Relation to the Camunda House

Strategic process model • Fast comprehension


• Logically abstract
• Human process flow Operational process model
• Work procedures
• User Experience
• Precise description
Human process Technical process • Physically specific
flow flow

• Automated control
flow
• Interaction flow • Code
• Interaction between
user and system

211
Example "Incident Management“

• Support process of a software vendor

• Part of the ”BPMN 2.0 by Example“ document of the OMG (www.BPMN.org)

• Completely modeled using the Camunda House

• Implemented as a showcase on the Camunda Platform

https://github.com/camunda-consulting/code/tree/master/one-time-examples/incident-management

213
Core idea #1: Move ”problems“ to an upper level

Strategic process model

Operational process model

Human Technical
process flow process flow

214
Incident management at strategic level

215
Core idea #2: operational level provides different views

Role Process Participant Process Analyst Process Engineer

What is the engine


Objective How should I work? How is the work done?
doing exactly?

Orchestration of the
View Own orchestration Whole collaboration
process engine

Operational process model

216
The call center agent‘s process

217
The 1st level support agent process

218
2nd level support agent and software developer

219
Invoice Receipt
Exercise 11 – Part 2

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
How to create the technical flow

Strategic process model

Operational process model

Human Technical
process flow process flow

221
Deriving the technical process model

Process Process-Engine
participants

222
The executable process model

223
Invoice Receipt
Exercise 11 – Part 3

https://training.camunda.com/bpmn/
user: bpmn
password: camundarocks
Process automation
Example invoice receipt

226
Process automation

Human Task System


Management Integration

227
How to automate a BPMN 2.0- process?

Current state
process model
New process
Diagnose problems,
Workshops, interviews, search for causes,
monitoring estimate potential

Weak points?

Process Process
Process survey Yes
Modeling target state design,
documentation analysis
process simulation, assessment
Existing of alternatives, ROI estimate
No
process Current state
process
Modeling, process maps,
flow diagrams
model
Process Process
Process
controlling Design
conception

Continuous until process


improvement is required

Process
implementation

Change management, Target state


conventional IT projects, process model
process automation

BPM governance

228
Process automation

XML

+ Code + UI

229
Technical attributes of a BPMN model

230
Live Demo
Automation with Camunda Plattform
The process is in the center

GUI

User
Data
Stories

Process
Tests Rules

NFRs

232
Process automation – which tool?

• Process automation can be done in different


ways
• This offers different advantages and
disadvantages
• Therefore a general recommendations is
difficult
• In the following we like to describe a real life
customer scenario
Ÿ Big energy supplier
Ÿ Strong growth
Ÿ Invoice receipt process

233
Possible alternatives

1. No automation
2. To program for themselves
3. To use standard-Software
4. Classical BPM Suite
5. Developer- friendly BPM

234
Alternative 1: No automation

Process is done manually


(Basic tools like paper, folders,…)

Advantages Pain points Cost drivers

• No IT expense • Not scalable • High personnel cost for running


the process
• Slow process run
• High number of process errors
• No process visibility
• Process agility is limited

235
Alternative 2: Custom programming

Software solution designed inhouse


(e.g. Java, .NET, ...)

Advantages Pain points Cost drivers

• Faster process executions • No process visibility • Costs for development and


maintenance
• Lower process costs • Process agility is limited strongly
• Less process errors • Project costs for modification
(processes hidden inside the
implementation)

236
Alternative 3: Off-the-shelf-software

Purchased software with e.g. invoice receipt module, document management systems

Advantages Pain points Cost drivers

• Faster process executions • Processes in standard software • Costs for license


aren‘t customizable for own company
• Less process costs • Proprietary know-how
• Less process errors • Software is a foreign body in the (specialized consultants)
company‘s IT landscape
• Agility of process is limited
• Dependence on software supplier

237
Alternative 4: Classical BPM-Suite

Black-Box-BPM-Suite with ”Zero-Code“-promise


(e.g. BPM-Suites of big software producers)

Advantages Pain points Cost drivers

• Faster process executions • Software is a foreign body in the • Costs for license
• Less process costs company‘s IT landscape • Proprietary know-how (specialized
• Dependence on software supplier consultants and developers)
• Less process errors
• Improvement of process visibility
(dependent on software producer)
• End-to-End-processes possible

238
Alternative 5: Developer-friendly BPM

Open Source Platform with a ”developer-friendly“ approach


(e.g. Camunda Plattform)

Advantages Pain points Cost drivers

• Faster process executions • Taking a risk on doing it differently • Cost for development and
• Need for developers integration
• Less process costs
• Less process errors
• Improved process visibility
• End-to-End-processes possible
• Embeddable in IT- landscape
• Standard technology and
procedures (e.g. Java, CI, Scrum)

239
Summary of the alternatives See also
Whitepaper:
Camunda in comparison
with other alternatives

Custom Off-the-shelf- Classical Developer-


No automation
programming software BPM-Suite friendly BPM

Low process cost X X X X

Faster process executions X X X X

Less process errors X X X X

Real process visibility possible possible X

High agility of process possible X

Less programming cost X X X

Custom-tailored processes X X X X

Embeddable with existing IT X X

No special developers needed X X X

No dependence on software
X X X
supplier/ producer

End-to-End-processes possible X X

240
The energy supplier

• Started with manual processes (alternative 1) • Evaluated standard software (alternative 3)


• Got by with self made little helpers (alternative 2) and decided not to buy it because of missing
when the load increased features and therefore high involved
customizing costs
• Introduced a development friendly BPM
(alternative 5) because:
• The end-to-end process
• With all its special characteristics,
• With BPMN 2.0 synchronized, implemented and
monitored as well as
• Could be implemented with existing inhouse
developers
• The solution is growing along company
growth.

241
Process Controlling
Do you know your processes?

243
Process controlling as a result of automation

Current state
process model
New process
Diagnose problems,
Workshops, interviews, search for causes,
monitoring estimate potential

Weak points?

Process Process
Process survey Yes
Modeling target state design,
documentation analysis
process simulation, assessment
Existing of alternatives, ROI estimate
No
process Current state
process
Modeling, process maps,
flow diagrams
model
Process Process
Process
controlling Design
conception

Continuous until process


improvement is required

Process
implementation

Change management, Target state


conventional IT projects, process model
process automation

BPM governance

244
Transparency means quality
Instance-based (Cockpit) Process-based (Optimize)

Typical questions: Typical questions:


• Why isn‘t the invoice paid yet? Ÿ Do we keep our service-promise/ SLA?
• Where is my application? • Capacity, overload, weak points?
• When does my shipment arrive? • Where is potential for improvement?
• Does the reality reflect the expectations?

245
Benefits - Reporting based on automated processes
Improved
business sucess

Guidance where and how to improve your processes

Indications of strengths & weaknesses

Transparency over your business processes

Data on how your processes run

246
Camunda Platform and Optimize

Business Analyst /
Developer Task Worker Operator Administrator Process Owner

Custom
Modeler Tasklist Cockpit Admin Optimize
Application

REST REST / Java REST REST

Java / REST API

Engine
File (BPMN, CMMN, DMN)

SQL DB Elastic Search

Model
Modeling Execute
Execution Improvement

247
Live Demo
Reporting with Optimize
Methods: BPMN Guidelines
Question: For which scenario do I want to use BPMN?

Business-IT- Technical
Alignment Implementation

Process Process Requirements Process


Documentation Design Management Execution

Organizational IT Projects
Projects

250
Why do I need a modeling guideline?

• BPMN is complex
• BPMN has many degrees of freedom
• A guideline provides a framework and orientation
• It helps to model faster and with better quality
• It helps to make models more consistent and
therefore better comparable and easier to
understand

In total: better readability and acceptance and at


the same time formal quality and usability is
assured.

Important: The guideline depends on your goals.

251
Important parts of a BPMN guideline

Subset of

symbols

Design Patterns BPMN Guideline Naming

Modeling
Layout
alternatives

252
Aspects for describing a guideline element

Specification

Counter-example Guideline Explanation


Element

Example

253
Subset of Symbols …
Subset of
symbols

Design BPMN
Naming
Patterns Guideline
• Define a subset of BPMN symbols
Modeling
alternatives Layout
• Extend with own artefacts, if needed

254
Naming …
Subset of
symbols

Design BPMN
Naming
Patterns Guideline
• Helps to make models more consistent
Modeling
alternatives Layout
• Supports better readablility

• Minimizes room for misinterpretation

255
Example: Naming

• Specification: For naming elements in a BPMN model following rules shall apply:
Task: [object] + [verb]
Event:[object] + [state]
• Explanation: Consistent naming significantly improves readability and can prevent errors.

• Example:
• Counterexample:

256
Layout …
Subset of
symbols

Design BPMN
Naming
Patterns Guideline
• The layout deals with the visual appearance of process
diagrams
Modeling
alternatives Layout

• It makes diagrams more uniform and more readable

257
Example: Layout

• Specification: Always model in a grid layout


• Explanation: The arrangement of the elements in a grid layout increases the readability
• Example: • Counterexample:

258
Modeling alternatives …
Subset of
symbols

Design BPMN
Naming
Patterns Guideline
• A guideline that explains how
certain situations should be modeled
Modeling
alternatives Layout

• Basic situations with no reference


to concrete content-related processes.

259
Example: Modeling alternatives

• Specification: End events with similar meaning should be summarized in one symbol. End
events with differing meaning should be modeled separately.
• Explanation: This way, the viewer will know faster that different end states are possible, and
it will be easier to recognize the respective state.

260
• Example:

• Counterexample:

261
Design Patterns …
Subset of
symbols

Design BPMN
Naming
Patterns Guideline

• Like a recipe: guide for certain modeling


Modeling
situations alternatives Layout

• Recommended character (more flexible than


other guidelines)

• Different structure than other guidelines:

• Requirement: Describes in which situation the design pattern can be


helpful

• Recommendation: Refers to a pattern, then recommends it

• Available design patterns: The design patterns suitable for the situation are shown
262 through examples
Example: Design Patterns (two-stage escalation)

Requirement:

• I want my interaction partner to do something, so I send her a message (e.g.: an invoice to be


paid, an item to be delivered, an instruction to be executed, …)

• My interaction partner does not react.

• I send her a reminder for my request, and I may set a new deadline (if necessary, I can repeat
this several times)

• In case of no reaction: Escalation (e.g.: forwarding invoice to debt collector, cancelling the
order, informing a superior of non-performance)

263
Recommendation:

• „Event-based gateway with loop“

• Clear, easily understood and formally correct

• Alternative: „Attached timer events“ (if the selected engine cannot interpret the event-based
gateway)

264
Available Design Patterns:
• Event-based gateway with loop

• Chain-link of event-based gateways:

• Attached timer events:

265
Pathway to own guideline

Clarify Framework
• Define the goals
• What do I want to model? What usage do the models have? What is the target group?

Review Best Practice Guidelines


• Use your own best practice examples or adapt existing ones to your use case. Example:
• Camunda Best Practice for Enterprise Customers: https://www.camunda.com/best-practices

Create your own modelling guideline


• Ensure consistency

Maintain the guideline

266
Business rules with DMN
Discount rules in a BPMN model?

268
Discount rules in a DMN table

269
DMN standard

• Decision Model and Notation


• Standard of OMG for decisions/business rules

”The primary goal of DMN is to provide a common notation that is readily


understandable by all business users, from the business analysts needing to
create initial decision requirements and then more detailed decision models, to
the technical developers responsible for automating the decisions in processes,
and finally, to the business people who will manage and monitor those decisions.
DMN creates a standardized bridge for the gap between the business
decision design and decision implementation. DMN notation is designed to
be useable alongside the standard BPMN business process notation.”

270
DMN tables can be executed

• Technical attributes enable the direct execution of desicion tables


• Role seperation between structure (columns) and rules (rows) is possible

271
Structure of a DMN table
Hit Policy
Table name
+ ID Output Name +
Expression

Input Name
+ Expression

Rules

272
Hit Policies

Single
Ÿ U(nique): Exactly one rule applies
Ÿ A(ny): More rules can apply but don‘t necessarily provide the same outcome
Ÿ P(riority): Rule with the highest priority (result field) is selected
Ÿ F(irst): First applicable rule is selected (order of rows)
Multiple
Ÿ O(utput Order): List of results in order of priority (result fields)
Ÿ R(ule Order): List of results in order of rules
Ÿ C(ollect): List of results without an order, can be combined with operators +
(Sum); < (Min); > (Max); # (Amount)

273
More examples from the DMN specification

274
Discount rules are referred in a BPMN model

275
Frequency of modification

Business processes Structure (columns) Rules (rows)

Modification of business Modification of columns Modification of rules are


processes need a high require effort to integrate easy, however validation
effort of change input data sources and testing shouldn‘t be
management or process forgotten
implementation
Seldom Seldom Often
(months or years) (months) (weeks or months)

276
Process engine and decision engine

277
DMN defines „Decision Requirements Levels“

278
DRD example: skill-based assignment

279
Decisions in a DRD can be tables

280
Camunda training offering

Overview trainings Modeling trainings Development trainings

Camunda BPM Overview (1 day) BPMN (3 days) Camunda Platform for developers (3 days)
è Introduction into BPMN è BPMN in detail è Introduction BPMN
è Hands on Camunda BPM è Implementing BPM-projects with BPMN è Camunda Platform Architecture
è Monitoring & Reporting è BPMN real world examples è Automating processes with Camunda
è How to start with Camunda è BPMN in context of DMN è Testing, deployment, versioning

OCEB training (2 days) DMN (1 day) Camunda Platform DevOps (2 days)


è Prepare for the OCEB BPM certification è DMN in detail è Camunda Platform installation
è Decision design è Monitoring & alarming
è Complex decisions with DRDs è Process version migration
è DMN in context of BPMN è Advanced DevOps topics

You‘ll find further information under


camunda.com/services/training

281
Feedback Time!

https://camunda.com/services/training/feedback

282
Thank you
and good luck
with BPMN!

Training
completed

You might also like