0% found this document useful (0 votes)
34 views142 pages

BPMN For Business Analysts All Slides

Uploaded by

skgt9700
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views142 pages

BPMN For Business Analysts All Slides

Uploaded by

skgt9700
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 142

Introduction to BPMN

• Business Process Model and Notation


• Object Management Group standard
• More and more popular

• 500+ pages specification


• Many symbols (100+)
• Do I really need to learn it?
Introduction to BPMN
• Learning BPMN can be easy
• Pareto principle (80/20)
• Elements you really need to know and
use
Introduction to BPMN
What do we want to know about the
process?
• When does it start?
• What are the process steps?
• How does it end?
Introduction to BPMN

Sequence
Flow
When What are the process How does
does it steps? it end?
start? Simple Complex
Introduction to BPMN

DEMO
Flowcharts vs BPMN
Flowcharts
• Easy to use
• Familiar
• Lots of tools

BUT
• „Pretty pictures”
BPMN
• Easy to use
• Familiar
• Lots of tools
• ISO standard
• Diagram interchange
• Business-IT alignment
• Support for automation
• Extensions
• ...
Learn more
Learn more
What if the process is not a
sequence?
Let’s take a look at the following example
What if the process is not a
sequence?
Pattern 1: There can be only one (Exclusive
Gateway)
There can be only one

DEMO
What if the process is not a
sequence?
Pattern 1b: Different endings
Different endings

DEMO
What if the process is not a
sequence?
Pattern 1c: Rinse and repeat
Rinse and repeat

DEMO
What if the process is not a
sequence?
Pattern 2: I want it all (Parallel Gateway)
Parallel Gateway

DEMO
What if the process is not a
sequence?
Pattern 3: It’s complicated (Inclusive Gateway)

Condition 1

Condition 2
Inclusive Gateway

DEMO
Worth a thousand words
Start event types

Our process starts Our process starts Our process starts


when we get some at a given when some
message. moment. condition is met.
E.g. Order E.g. 2 days before E.g. stock level
received. quarter ends below minimum
Worth a thousand words
Task types

Someone does it Someone does it IT system does it


with no IT support with IT support
Worth a thousand words
Sub-Process types

We hide We call some


complexity in standard
„child submodel” procedure
Worth a thousand words
Why do we use icons to show types?

DEMO
Who does what
Pools…
Who does what
… and lanes
Who does what
Black-box pools

Black-box pool
Who does what
Collaboration

Message Flow
Who does what
Common errors

End event?

Sequence flow
crosses the pool
border
Who does what
Common errors

Sequence flow?
What about the data?
Data Objects and Data Stores

Data Data Store


Association E.g. IT system

Data Object
E.g. e-mail,
document.
Any comments?
Artifacts

Association
Group
Text Annotation Shows category
Shows additional info of object(s)
Task types
Basic task types
Task types
Additional task types

Waiting for a Sending message


message from to external
outside participant
Task types
Additional task types

=
Receive task Message start
(instantiating) event
Task types
Additional task types

Automated on Calling business


process engine rules engine
Task types
Business Rules

New OMG standard: Decision Model and


Notation (DMN)
Task types
Additional task types

Calls a Global task


(only User,
Manual, Script,
Business Rule)
BPMN diagram – step by step
From blank page to ready diagram

Inspired by Bruce Silver

Extended on a basis of my experiences


BPMN diagram – step by step
1) Process background info (goal etc.)
2) Participants (+level of detail needed)
3) Happy path
4) More details (types, resources, …)
5) Exceptions
6) Sub-processes (where needed)
BPMN diagram – step by step

DEMO – Wire
transfer process
BPMN diagram – Wire transfer
1) Process background info (goal etc.)
2) Participants (+level of detail needed)
3) Happy path
4) More details (types, resources, …)
5) Exceptions
6) Sub-processes (where needed)
Case study
Simple process inspired by one of my students

Try solving on your own before you watch


example solution in the next video

You can provide link to your solution via


message or question and I will give you
feedback
Case study
Customer sends order to company A.
Order needs to be entered to CRM system and
checked by operations and if something is
missing/wrong operations ask internal call
center to contact the customer and correct the
order. When order is OK, it is sent to fulfillment
for company B (vendor).
Vendor sends the product to the customer
BPMN diagram – step by step
1) Process background info (goal etc.)
2) Participants (+level of detail needed)
3) Happy path
4) Resources (documents, IT systems, …)
5) Exceptions
6) Sub-processes (where needed)
Case study
Customer sends order to company A.
Order needs to be entered to CRM system and
checked by operations and if something is
missing/wrong operations ask internal call
center to contact the customer and correct the
order. When order is OK, it is sent to fulfillment
for company B (vendor).
Vendor sends the product to the customer
Events

Start End Event


Event
Events

Intermediate
Events
Events

Intermediate
Events
Back to business

Throwing Catching
Throwing Intermediate Events
Always dark markers e.g.
Catching Intermediate Events
Always light markers e.g.
What about tokens?
Intermediate Event None

Only Throwing.
Marks important process
milestone.
Intermediate Event Message

Throwing and Catching.


Shows exchange of
messages with
participants external to
the process.
Intermediate Event Message

Throwing and Catching.


Shows exchange of
messages with
participants external to
the process.
Intermediate Event Signal

Throwing and Catching.


Either sends a signal
(broadcast) or waits for it.
Intermediate Event Signal

Throwing and Catching.


Shows exchange of
messages with
participants external to
the process.
Intermediate Event Timer

Only Catching.
Shows that our process
needs to wait e.g. till a
specific time/date etc.
Intermediate Event Timer

Only Catching.
Shows that our process
needs to wait e.g. till a
specific time/date etc.
Intermediate Event Conditional

Only Catching.
Shows that our process
needs to wait till some
condition is met.
Intermediate Event Conditional

Only Catching.
Shows that our process
needs to wait till some
condition is met.
More Intermediate Events
Link

Escalation

Compensation
Boundary Intermediate Events
Case study 2
The Customer calls the support center (Front Office)
and reports an issue about underperforming service or
faulty equipment or software.

Source: BPSim Implementer’s Guide v2.0


Case study 2
The Front Office collects information from the Customer
and tries to provide a solution directly to the Customer
on the other end of the line, otherwise they inform the
Customer the issue is going to be escalated to technical
experts and they will be contacted again soon.
When the Front Office receives the solution from the
technical experts, they contact the customer and try to
close the issue; otherwise they inform the Customer
that the issue is going to be further escalated.
Case study 2
When the issue is escalated to the 1st Level Technical
Support Agent, the agent tries to provide a solution to
the Front Office; otherwise they request further
assistance from the 2nd Level Technical Support Agent
and forward the solution to the Front Office when a
solution has been provided.
Case study 2
When the issue is escalated to the 2nd Level Technical
Support Agent, the agent tries to find a solution for the
1st Level Technical Support Agent; otherwise they
request further assistance from the Supplier and
forward the solution to the 1st Level Technical Support
Agent when provided.
Case study 2
When the Supplier receives a request from the 2nd
Level Technical Support Agent they provide a solution to
the reported issue.
Case study 2
1) Keep calm and
2) Identify performers (pools)
3) Model the processes
4) Add message flows
Remoras

Source: https://upload.wikimedia.org/wikipedia/commons/9/93/Lemonshark.jpg
Boundary Intermediate Events
Boundary Intermediate Events
Look like Intermediate Events
Placed on a boundary of
Activities (i.e. Tasks or Sub-
Processes).
Document how to react to a
specific event.
Most of them active only
when their „parent” is active.
Catching only.
Boundary Intermediate Events
Interrupting – solid line

Non-interrupting – dashed line

Non-interrupting events create


additional tokens
Boundary Intermediate Events
What happens when customer
cancels after we started
shipping the order?

Nothing – this boundary event


is no longer active
Why do we need boundary
events?

Handling different results of Sub-Processes


Possibility to handle special cases when activity is still
being executed
Boundary Event Message

Non-Interrupting and
Interrupting
Boundary Event Time

Non-Interrupting and
Interrupting
Boundary Event Conditional

Non-Interrupting and
Interrupting
Boundary Event Signal

Non-Interrupting and
Interrupting
Boundary Event Escalation

Non-Interrupting and
Interrupting
Boundary Event Error

Only Interrupting
Plus some for technical
scenarios

Compensation

Cancel
BPMN modelling with
ADONIS:CE

• 100% free

• Support for BPMN


and much more

www.adonis-community.com
BPMN modelling with
ADONIS:CE

DEMO
Decisions
Question
Scenario by
Siddhartha:
I would want to know how can the
company send a message to the
customer about Order cancellation
and how can it be fitted into the
customer's sequence flow or is it
necessary to fit it into the
customer's sequence flow. Would
the message be an Intermediate
event or another Start event which
would have a separate End event?
Gateways
Data based Gateways
i.e. we can say in advance
which way to go (on a basis of
data)
Time will tell…
Event based Gateway
First event to happen
determines path selection

Only first one counts!


Allowed events
Intermediate event
(catching):
Message (OR Receive Task)
Signal
Timer
Conditional
Multiple
Event based Gateways

DEMO
Repetitions
Repeating Activities
Using gateways
Repeating Activities
Using loops
Loops and Multi-Instance
Activities

Activity repeats as long as


some condition is true.

We cannot say in advance


how many times it will happen.
Loops and Multi-Instance
Activities

Activity is performed predefined number of times.

Before we start executing it we know this number.


Example
Nobel Prize process (source: BPMN by Example)
How to use BPMN organization-wide?

Question from student (thanks Terje!)


How would you proceed to analyse improvement opportunities across
more than 30 organizational units? Visio flowcharts are available for all
of them individually, but there is a need for:

1) doing more holistic analysis, showing interlinks between the units,


and

2) keeping track of all improvement opportunities and their status.

Do you have any advise on methodology/software for this sort of work?


1) BPMN tools
2) How to manage change
BPMN tools
How do I pick one?
It depends :)
What is your goal?
Many categories
• Diagramming tools
• CASE (Software Engineering) tools
• BPMS (Process Automation) tools
• Business Process Analysis tools

• and more (simulation, process mining, …)


Diagramming tools
Diagramming tools
• Very easy to use
• Great for producing nice looking drawings
• Usually many diagram types available

• Example tools: Visio, SmartDraw,


Lucidchart, draw.io
CASE tools
CASE tools
• For business analysts and software
engineers
• Great for making specifications, generating
code (and reverse engineering)
• UML, SysML, BPMN, …

• Example tools: Enterprise Architect, Visual


Paradigm
BPMS tools
BPMS tools
• For teams preparing process-based
applications
• Great for automating processes in a quick
and agile way
• BPMN extended with technical attributes,
DMN, CMMN

• Example tools: Appian, Bizagi, Activiti,


Bonita, Camunda
BPA tools
BPA tools
• Both for business and IT
• Great for building shared understanding,
improving processes, planning Digital
Transformation
• BPMN (possible interchange with
CASE/BPMS tools) and additional model
types

• Example tools: ADONIS, ARIS, iGrafx


How to manage change
How to manage change
Example using ADONIS
(https://us.boc-group.com/adonis/)
• Process architecture
• Complete view
• Initiatives
• Collaboration
Unpredictable workflows

Inspired by William B. :)
BPMN
• Easy to learn :)
• Useful for improvement
• Allows automation

• Silent assumption: well-defined processes


(structured, predictable)
Unpredictability
• Clear structure vs knowledge work
(unstructured and evolving work)
• E.g. insurance, healthcare, legal, ...
• Total freedom vs sharing best practices

• Not so easy to express in BPMN


• Ad-hoc Sub-Process
• Boundary Events
• Event-based Sub-Processes
CMMN
• OMG standard
• Adaptive Case Management

• Also automation
Comparison

Source: https://www.omg.org/intro/TripleCrown.pdf
New standard
CMMN elements
Source: Field Guide to Shareable
Clinical Pathways. BPMN, CMMN
& DMN in Healthcare
Case Plan Model
• Case
• Unlike
pools in
BPMN not
optional
Task
• CMMN is
declarative,
so position
does not
have any
meaning
Entry criterion (sentry)
• No Token
in CMMN!
• Sentries
• Entry
criterion
(shallow
diamond)
• AND
Entry criterion (sentry)
• OR
• Connector
(dash dot
dot)
Task types
• Old friends
(Association
and Text
Annotation)

• 4 Task types
• BUT...
Blocking
• Only Human
Tasks have
different
icons
• Process,
Case,
Decision
Tasks look
the same
Required
• Case
manager
cannot
complete
case if
required (!)
tasks are still
active
Repetition
• # symbol
Discretionary tasks
• Can be added
to case during
the planning
phase
• All Task types
can be
discretionary
• Planning table
marker
Case file item
• Similar to
Data Objects
in BPMN
• Information
needed in a
case
• Possible
connectors to
Sentries
Event listener
• Linked to
Sentries
Is this all?
• Stage
• Auto-complete
• Manual
activation
• Milestone
• Exit criterion
• ...
Do we need CMMN?

Source: CMMN 1.1 specification


Do we need CMMN?
• BPMN and CMMN Compared (by Bruce Silver)
• https://methodandstyle.com/bpmn-cmmn-compared/
Next steps - reading

• https://www.omg.org/registration/registration-field-guide.htm
Next steps - reading
• Real-Life BPMN (3rd edition): With
introductions to CMMN and DMN
Next steps - tools
• ADOxx.org
(https://www.adoxx.org/live/web/learnpad-developer-space/learn-pad-modelling-environment)

• BPMN.io

• Camunda
• Flowable

You might also like