1
Analysis of Most Common Process
Modelling Mistakes in BPMN Process Models
dr. Tomislav Rozman, Gregor Polančič, doc. dr. Romana Vajde Horvat
26. – 28. September 2007
Potsdam, Germany
Faculty of Electrical
Engineering and Computer
Science
University of Maribor, Slovenia
Institute of Informatics
2
Contents of the article
Introduction
 What is Business Process Management &
Modelling
 A little bit of history
 Similar work
Research method
Findings – process model antipatterns
Conclusions
Discussion
3
What is Business Process
management?
... a field of knowledge at the intersection between
management and information technology,
encompassing methods, techniques and tools to
design, enact, control, and analyze operational
business processes involving humans, organizations,
applications, documents and other sources of
information1 or
...most overused word in the last few years?
1 van der Aalst, W.M.P., ter Hofstede, A.H.M. and Weske, M.: "Business Process Management: A Survey", in Business Process Management,
Proceedings of the First International Conference. Springer Verlag, 2003.
4
Business process management /
business process lifecycle
Preparation
+
BP Modelling
+
BP Assessment
+
BP
Dissemination
+
Report a
'lesson learned'
Compare and
align with
business goal
BP
Implementation
+
no
yes
is responsible for
is responsible for
Defined process
needed
are responsible for
is responsible for
is responsible for
is responsible for
is responsible for
is responsible for
is responsible for
collaborate
Quality
Manager
Process
Performers
Process
Designer
Quality
Manager
IT Expert
Process
Owner
Process
Owner
Process
Performers
Process
Owner
Automate
the
process?
BP Usage BP tracking
& analysing
BP not needed
anymore
BP tailoring
needed
Performing BP
5
What is (Business) Process
modelling?
Better: Discrete process modelling
Goal: to capture the knowledge how people
(machines) perform their work (or, how we would like
them to perform it)
Main purpose: to ensure at least repeatability of
organisation's processes
Plethora of methods, methodologies, notations,…
... but no silver bullet
6
... Some process modelling
notations
EPC,
ARIS,
UML Activity diagrams,
OPM – Object Process Methodology,
BPMN – Business Process Modelling notation
Ontologically most complete (Recker et al, 2005)
7
BPMN notation
Visual representation of (business) processes - workflow
It defines graphical symbols and additional attributes for
process description
Covers the process modelling concepts and patterns very well
Easy to learn
Based on: EPC, Petri nets, Activity diagrams (UML)
Defines the mapping to execution languages (XPDL, BPEL4WS)
Merging with UML?
8
A quick introduction to BPMN notation (1/2)
name name name
~
name
~
name name
name
Sequence
Message flow
Association
name, condition,
code or message
name or message
Atomic activity - task Looping activity Ad-hoc process
Looping ad-hoc process Process (hidden details) Looping process (hidden details)
Process with details
Branching (parallel execution)
A
B
C D
Data-based OR-decision
A
B
C
D
condition
1
condition
2
default
Event-based OR-decision
A
B
C
D
1 day
mssage 1
message 2
Merging
A
B
C
D
9
A quick introduction to BPMN notation (2/2)
name or source
name or type
name or result
Start
event
End
event
Intermediate
event
Message Timer Process
error
Compensate Rule Link Multiple
mesage
Pool
name
mesage
message
 events
gateways 
pools and
messages
10
A little bit of history
BPMN notation has been taught since 2001 (University of
Maribor, Faculty of electrical engineering and computer
science)
BSc. Students of Information Systems, 8th semester
“Information processing organization and management”
practical lectures
The aim: (business) processes modeling, software
standards, software projects organisation
The modeling tool: Modified Microsoft Visio (‘’in-house’
symbols stencil)
11
Similar work
Project ‘anti-pattern’
 = a pitfall, or, set of classes of commonly-
reinvented bad solutions to problems
 = commonly repeated bad practices
workflow patterns
 control flow patterns, resource patterns,
data patterns and exception handling
patterns
12
The problem
BPMN does not prevent us to design bad
process models, including syntactical,
semantic and pragmatically errors.
Poor quality of process models can cause
poor quality software requirements resulting
in a poor information system.
13
Research method
Research question: What are the most common mistakes
when modelling business process diagrams using BPMN
notation?
a multiple case study research
Analysis of the process models (designed by students) from
2002 to 2007 by three independent persons
Extraction & classification of most common mistakes -> process
anti-pattern
Syntactical, semantic and pragmatic mistakes
14
Findings
A set of 15 proces model anti-patterns
 Connecting elements (1-9)
 Other mistakes (9-15)
Description of the antipatterns:
 Name,
 Possible practical impacts,
 Type of error,
 Proposed solution.
15
Pattern 1. Activities in one
pool are not connected
PoolAPoolB
Task C Task D
Task A Task B ...
...
...
...
Fig. 1. Anti-pattern: Activities in one pool
are not connected
PoolAPoolB
Task C Task D
Task A Task B ...
...
...
...
Fig. 2. Correct pattern
16
Pattern 2. Process does not
contain a start eventPoolA
Task A Task B ...
Message Event
Fig. 1. Anti-pattern: Process does not
contain a start event
PoolA
Task A Task B ...
Message Event
Start Event
Fig. 2. Correct pattern
17
Pattern 3. Process does not
contain an end event
PoolA
Task A
Task B...
Task C
Fig. 1. Anti-pattern: Process does not
contain an end event PoolA
Task A Task B...
Task C
End event
Terminate
Fig. 2. Correct pattern
18
Pattern 4. Sequence flow
crosses process boundary
Process X
Task A Task B...
...
Task C
Fig. 1. Anti-pattern: Sequence flow crosses
process boundary
Process X
Task A
Task B
...
...
Task C
Fig. 2. Correct pattern
19
Pattern 5. Sequence flow
crosses pool boundary
PoolA
Task A Task C
PoolB
Task B Task D
Message flow AB Message flow DC
Task E
Task F
...
...
End event
Start Event
Fig. 1. Anti-pattern: Sequence flow
crosses pool boundary
PoolA
Task A Task C
PoolB
Task B
Task D
Message flow AB
Message flow DC
Task E
Task F
Message flow EF
......
......
Start Event
End event
End event
Start Event
Fig. 2. Correct pattern
20
Pattern 6. Gateway receives,
evaluates or sends a message
PoolA
Task A Task B ......
Message X Message Y
Condition
Task C ...
PoolB
Fig. 1. Anti-pattern: Gateway receives,
evaluates or sends a message
PoolA
Task A
Task B ...
...
Message X MessageY
Condition
Task C ...
Analysing
message X
Send
message Y
...
PoolB
Fig. 2. Correct pattern
21
Pattern 7. Intermediate events are
placed on the edge of the pool
PoolA
Task A Task B
Start event
End event
Intemediate
event M1
Intermediate
event M2
Fig. 1. Anti-pattern: Intermediate events
are placed on the edge of the pool
PoolB
Task A Task B
Start event
End event
Intemediate
event M1
Intemediate
event M2
Fig. 2. Correct pattern
22
Pattern 8. Hanging intermediate
events or activities
PoolA
Task A Task c
Start event
End event
Intermediate event
Task B
Fig. 1. Anti-pattern: Hanging
intermediate events or activities PoolB
Task A Task C
Start event End event
Intermediate event
Task B
Fig. 2. Correct pattern
23
Pattern 9. Each lane in the
pool contains start event
Start event 1
Task A
End event
Start event 2
Task B
End event
Start event 3
Task C
End event
Lane1Lane2Lane3
PoolA
Fig. 1. Anti-pattern: Each lane in the pool contains start event
Start event 1
Task A
End event
Task B
Task C
Lane1Lane2Lane3
PoolA
Lane1Lane2Lane3
PoolA
Task A
End event
Task B
End event
Task C
End event
Start event
Start event 1
Start event 2
Start event 3
Fig. 1. Two possibilities of correct patterns
24
Pattern 10. Incorrect use of
time events
Task A Task B...
Task B ...
Delay
Exception
Time event used as a
DELAY mechanism
Time event representing
task DURATION
Fig. 1. : Anti-pattern: Incorrect use of time events
Solution: the meaning!
25
Pattern 11. Sequence and message
event represent data flow
Task A Task B ......
Message
AB
Fig. 1. Anti-pattern: Sequence and
message event represent data flow
Task A Task B ......
Message
AB
Fig. 2. Correct pattern
26
Pattern 12. Event is used as a
message flow source
Task A Task B ......
Message
A Message
B
A
B
Fig. 1. Anti-pattern: Event is used as a
message flow source
Task A
Send
message B
......
Message
A
Message
B
Task C
Fig. 2. Correct pattern
27
Pattern 13. Improper use of
flow elements
Starting task
A
Receiving
document X
...
Task A
finished
Document
X
...
Fig. 1. Anti-pattern: Improper use of flow
elements
Task A... ...
Document
X
Event X
Fig. 2. Correct pattern
28
Pattern 14. Starting timer placed
instead of intermediate timer
Task A...
...
Duration
Fig. 1. Anti-pattern: Starting timer
placed instead of intermediate timer
Task A...
...
Duration
Fig. 2. Correct pattern
29
Pattern 15. Exception flow is not
connected to the exception
Task A... ...
Duration
Fig. 1. Anti-pattern: Exception flow is
not connected to the exception
Task A...
...
Duration
...
Normal flow
Exception flow
Fig. 2. Correct pattern
30
Frequencies of the anti-patterns
appearance
1
2
4
5
6
7
89
10
11
12
13
14
15
3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Exception is modelled, but not
connected 
 Process does not
contain a end event
Sequence flow crosses
process boundary
 Hanging intermediate events or
activities
Starting timer placed instead of
intermediate timer 
31
Conclusions
We identified unique collection of most common
process modelling mistakes or anti-patterns
Possible practical problems:
 unwanted delays in the process performance,
 non-execution of the activities or
 simply ambiguity which could hinder the process
performers at their work
Practical implications:
 Improvement of the learning materials
 Design of A2 poster with anti-patterns & solutions
 Possible improvement of the BPMN
 Improvements of BPMN modelling tool: verification!
32
TheaudienceSpeaker
Recieve a
question
Answer the
question
Ask a question
Bored=true
Coffe break
Start of the
discussion
Does a question
make any sense?
yes
no
Mumble or smile
J
Discussion
33
Last but not least
Like it, share it, comment it!
And of course, don’t forget to reuse it (with contribution) in your projects.
If you want to learn how to identify, model, optimize processes, you can attend
our live or on-line learning courses:
ECQA Certified Business Process Manager - Foundation and Advanced level
ECQA Certified Business Process Manager in Higher Education Institutions
i-VBPM (BPM on interactive board for VET)
Subscribe to newsletter: here
Website: BICERO ltd.
E-mail: tomislav.rozman@bicero.com
LinkedIn: Tomislav Rozman 34

Analysis of Most Common Process Modelling Mistakes in BPMN Process Models

  • 1.
    1 Analysis of MostCommon Process Modelling Mistakes in BPMN Process Models dr. Tomislav Rozman, Gregor Polančič, doc. dr. Romana Vajde Horvat 26. – 28. September 2007 Potsdam, Germany Faculty of Electrical Engineering and Computer Science University of Maribor, Slovenia Institute of Informatics
  • 2.
    2 Contents of thearticle Introduction  What is Business Process Management & Modelling  A little bit of history  Similar work Research method Findings – process model antipatterns Conclusions Discussion
  • 3.
    3 What is BusinessProcess management? ... a field of knowledge at the intersection between management and information technology, encompassing methods, techniques and tools to design, enact, control, and analyze operational business processes involving humans, organizations, applications, documents and other sources of information1 or ...most overused word in the last few years? 1 van der Aalst, W.M.P., ter Hofstede, A.H.M. and Weske, M.: "Business Process Management: A Survey", in Business Process Management, Proceedings of the First International Conference. Springer Verlag, 2003.
  • 4.
    4 Business process management/ business process lifecycle Preparation + BP Modelling + BP Assessment + BP Dissemination + Report a 'lesson learned' Compare and align with business goal BP Implementation + no yes is responsible for is responsible for Defined process needed are responsible for is responsible for is responsible for is responsible for is responsible for is responsible for is responsible for collaborate Quality Manager Process Performers Process Designer Quality Manager IT Expert Process Owner Process Owner Process Performers Process Owner Automate the process? BP Usage BP tracking & analysing BP not needed anymore BP tailoring needed Performing BP
  • 5.
    5 What is (Business)Process modelling? Better: Discrete process modelling Goal: to capture the knowledge how people (machines) perform their work (or, how we would like them to perform it) Main purpose: to ensure at least repeatability of organisation's processes Plethora of methods, methodologies, notations,… ... but no silver bullet
  • 6.
    6 ... Some processmodelling notations EPC, ARIS, UML Activity diagrams, OPM – Object Process Methodology, BPMN – Business Process Modelling notation Ontologically most complete (Recker et al, 2005)
  • 7.
    7 BPMN notation Visual representationof (business) processes - workflow It defines graphical symbols and additional attributes for process description Covers the process modelling concepts and patterns very well Easy to learn Based on: EPC, Petri nets, Activity diagrams (UML) Defines the mapping to execution languages (XPDL, BPEL4WS) Merging with UML?
  • 8.
    8 A quick introductionto BPMN notation (1/2) name name name ~ name ~ name name name Sequence Message flow Association name, condition, code or message name or message Atomic activity - task Looping activity Ad-hoc process Looping ad-hoc process Process (hidden details) Looping process (hidden details) Process with details Branching (parallel execution) A B C D Data-based OR-decision A B C D condition 1 condition 2 default Event-based OR-decision A B C D 1 day mssage 1 message 2 Merging A B C D
  • 9.
    9 A quick introductionto BPMN notation (2/2) name or source name or type name or result Start event End event Intermediate event Message Timer Process error Compensate Rule Link Multiple mesage Pool name mesage message  events gateways  pools and messages
  • 10.
    10 A little bitof history BPMN notation has been taught since 2001 (University of Maribor, Faculty of electrical engineering and computer science) BSc. Students of Information Systems, 8th semester “Information processing organization and management” practical lectures The aim: (business) processes modeling, software standards, software projects organisation The modeling tool: Modified Microsoft Visio (‘’in-house’ symbols stencil)
  • 11.
    11 Similar work Project ‘anti-pattern’ = a pitfall, or, set of classes of commonly- reinvented bad solutions to problems  = commonly repeated bad practices workflow patterns  control flow patterns, resource patterns, data patterns and exception handling patterns
  • 12.
    12 The problem BPMN doesnot prevent us to design bad process models, including syntactical, semantic and pragmatically errors. Poor quality of process models can cause poor quality software requirements resulting in a poor information system.
  • 13.
    13 Research method Research question:What are the most common mistakes when modelling business process diagrams using BPMN notation? a multiple case study research Analysis of the process models (designed by students) from 2002 to 2007 by three independent persons Extraction & classification of most common mistakes -> process anti-pattern Syntactical, semantic and pragmatic mistakes
  • 14.
    14 Findings A set of15 proces model anti-patterns  Connecting elements (1-9)  Other mistakes (9-15) Description of the antipatterns:  Name,  Possible practical impacts,  Type of error,  Proposed solution.
  • 15.
    15 Pattern 1. Activitiesin one pool are not connected PoolAPoolB Task C Task D Task A Task B ... ... ... ... Fig. 1. Anti-pattern: Activities in one pool are not connected PoolAPoolB Task C Task D Task A Task B ... ... ... ... Fig. 2. Correct pattern
  • 16.
    16 Pattern 2. Processdoes not contain a start eventPoolA Task A Task B ... Message Event Fig. 1. Anti-pattern: Process does not contain a start event PoolA Task A Task B ... Message Event Start Event Fig. 2. Correct pattern
  • 17.
    17 Pattern 3. Processdoes not contain an end event PoolA Task A Task B... Task C Fig. 1. Anti-pattern: Process does not contain an end event PoolA Task A Task B... Task C End event Terminate Fig. 2. Correct pattern
  • 18.
    18 Pattern 4. Sequenceflow crosses process boundary Process X Task A Task B... ... Task C Fig. 1. Anti-pattern: Sequence flow crosses process boundary Process X Task A Task B ... ... Task C Fig. 2. Correct pattern
  • 19.
    19 Pattern 5. Sequenceflow crosses pool boundary PoolA Task A Task C PoolB Task B Task D Message flow AB Message flow DC Task E Task F ... ... End event Start Event Fig. 1. Anti-pattern: Sequence flow crosses pool boundary PoolA Task A Task C PoolB Task B Task D Message flow AB Message flow DC Task E Task F Message flow EF ...... ...... Start Event End event End event Start Event Fig. 2. Correct pattern
  • 20.
    20 Pattern 6. Gatewayreceives, evaluates or sends a message PoolA Task A Task B ...... Message X Message Y Condition Task C ... PoolB Fig. 1. Anti-pattern: Gateway receives, evaluates or sends a message PoolA Task A Task B ... ... Message X MessageY Condition Task C ... Analysing message X Send message Y ... PoolB Fig. 2. Correct pattern
  • 21.
    21 Pattern 7. Intermediateevents are placed on the edge of the pool PoolA Task A Task B Start event End event Intemediate event M1 Intermediate event M2 Fig. 1. Anti-pattern: Intermediate events are placed on the edge of the pool PoolB Task A Task B Start event End event Intemediate event M1 Intemediate event M2 Fig. 2. Correct pattern
  • 22.
    22 Pattern 8. Hangingintermediate events or activities PoolA Task A Task c Start event End event Intermediate event Task B Fig. 1. Anti-pattern: Hanging intermediate events or activities PoolB Task A Task C Start event End event Intermediate event Task B Fig. 2. Correct pattern
  • 23.
    23 Pattern 9. Eachlane in the pool contains start event Start event 1 Task A End event Start event 2 Task B End event Start event 3 Task C End event Lane1Lane2Lane3 PoolA Fig. 1. Anti-pattern: Each lane in the pool contains start event Start event 1 Task A End event Task B Task C Lane1Lane2Lane3 PoolA Lane1Lane2Lane3 PoolA Task A End event Task B End event Task C End event Start event Start event 1 Start event 2 Start event 3 Fig. 1. Two possibilities of correct patterns
  • 24.
    24 Pattern 10. Incorrectuse of time events Task A Task B... Task B ... Delay Exception Time event used as a DELAY mechanism Time event representing task DURATION Fig. 1. : Anti-pattern: Incorrect use of time events Solution: the meaning!
  • 25.
    25 Pattern 11. Sequenceand message event represent data flow Task A Task B ...... Message AB Fig. 1. Anti-pattern: Sequence and message event represent data flow Task A Task B ...... Message AB Fig. 2. Correct pattern
  • 26.
    26 Pattern 12. Eventis used as a message flow source Task A Task B ...... Message A Message B A B Fig. 1. Anti-pattern: Event is used as a message flow source Task A Send message B ...... Message A Message B Task C Fig. 2. Correct pattern
  • 27.
    27 Pattern 13. Improperuse of flow elements Starting task A Receiving document X ... Task A finished Document X ... Fig. 1. Anti-pattern: Improper use of flow elements Task A... ... Document X Event X Fig. 2. Correct pattern
  • 28.
    28 Pattern 14. Startingtimer placed instead of intermediate timer Task A... ... Duration Fig. 1. Anti-pattern: Starting timer placed instead of intermediate timer Task A... ... Duration Fig. 2. Correct pattern
  • 29.
    29 Pattern 15. Exceptionflow is not connected to the exception Task A... ... Duration Fig. 1. Anti-pattern: Exception flow is not connected to the exception Task A... ... Duration ... Normal flow Exception flow Fig. 2. Correct pattern
  • 30.
    30 Frequencies of theanti-patterns appearance 1 2 4 5 6 7 89 10 11 12 13 14 15 3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Exception is modelled, but not connected   Process does not contain a end event Sequence flow crosses process boundary  Hanging intermediate events or activities Starting timer placed instead of intermediate timer 
  • 31.
    31 Conclusions We identified uniquecollection of most common process modelling mistakes or anti-patterns Possible practical problems:  unwanted delays in the process performance,  non-execution of the activities or  simply ambiguity which could hinder the process performers at their work Practical implications:  Improvement of the learning materials  Design of A2 poster with anti-patterns & solutions  Possible improvement of the BPMN  Improvements of BPMN modelling tool: verification!
  • 32.
    32 TheaudienceSpeaker Recieve a question Answer the question Aska question Bored=true Coffe break Start of the discussion Does a question make any sense? yes no Mumble or smile J Discussion
  • 33.
  • 34.
    Last but notleast Like it, share it, comment it! And of course, don’t forget to reuse it (with contribution) in your projects. If you want to learn how to identify, model, optimize processes, you can attend our live or on-line learning courses: ECQA Certified Business Process Manager - Foundation and Advanced level ECQA Certified Business Process Manager in Higher Education Institutions i-VBPM (BPM on interactive board for VET) Subscribe to newsletter: here Website: BICERO ltd. E-mail: tomislav.rozman@bicero.com LinkedIn: Tomislav Rozman 34

Editor's Notes