C
Business Process Modelling Notation (BPMN) Poster
Check for the latest version at: http://bpmn.itposter.net
baefg
Business Process Diagram Graphical Objects Business Process Diagram Connecting Objects
Sequence Flow and Message Flow rules
Events Activities Gateways Graphical connecting objects
Only objects that can have an incoming and/or outgoing Sequence Flow / Message
An activity is a generic type of work that a company performs. An
An event is something that happens« during the process. These events affect the Flow are shown in the Tables Below.
A gateway is used to split or merge multiple process
There are three ways of connecting Flow objects (Events, Activities,
activity can be atomic (task) or compound (process, sub-process).
flow of the process and usually have a cause (trigger) or an impact (result).
flows. Thus it will determine branching, forking, To: To:
Gateways) with each other or with other information using sequence
Examples: 'Send a letter', 'Write a report', 'Calculate the interests',...
Examples: 'Email received', '3 o'clock', 'Warehouse empty', 'Critical error',...
merging and joining of paths. Examples: 'Condition true?
flows, message flows or associations.
yes/no', 'Choose colour? red/green/blue',...
A task is used to represent the
Process Expanded
activity on the lowest abstraction
Graphical connecting objects
sub-process
Event flow level.
Collapsed Normal
Description A Sequence Flow is used to show the order In which the activities in a
Transaction Gateway control types
sub-process process will be performed.
sequence flow
More information about the
Event type
Conditional
transaction and compensation A Sequence Flow can have condition expressions which are evaluated
Data based exclusive decision or
XOR at runtime to determine whether or not the flow will be used.
Task attribute can be found under merging. Both symbols have equal sequence flow
The Start Event indicates where a particular process will start. Intermediate (DATA)
meaning. See also Conditional flow.
Compensation Association«. For Data-Based Exclusive Decisions or Inclusive Decisions, one type
Default
Events occur between a Start Event and an End Event. It will affect the flow
of flow is the Default condition flow. This flow will be used only if all
General
of the process, but will not start or (directly) terminate the process. The End sequence flow other outgoing conditional flows are NOT true at runtime.
Event indicates where a process will end.
XOR A Message Flow is used to show the flow of messages between two
Event based exclusive decision only.
(EVENT) Message flow participants that are prepared to send and receive them. In BPMN,
A message arrives from a participant and triggers the Event. This causes Task/Subprocess special attributes
two separate Pools in a Diagram can represent the two participants.
process to {start, continue, end} if it was waiting for a message, or changes
Message An Association (directed, non-directed) is used to associate
the flow if exception happens. End type of message event indicates that a
Looping The task or sub-process is repeated.
Association information with Flow Objects. Text and graphical non-Flow Objects
message is sent to a participant at the conclusion of the process. Data based inclusive decision or
OR can be associated with Flow objects.
merging.
The tasks in the sub-process can not be connected with
A specific time or cycle can be set that will trigger the start of the Process Ad Hoc
~ sequence flows at design time.
or continue the process. Intermediate timer can be used to model the time-
Timer
based delays.
Multiple instances Multiple instances of task or sub-process will be created.
COM- Complex condition (a combination of
basic conditions)
PLEX
This type of End indicates that a named Error should be generated. This Compensation The symbol represents a compensation task or sub-process.
Sequence flow mechanism Compensation Association
Error
Error will be caught by an Intermediate Event within the Event Context.
Parallel forking and joining
AND The Sequence Flow mechanisms is divided into types: Normal flow, Exception flow, In case of transactions it is desired that all activities which constitute
(synchronization).
This type of Event is used within a Transaction Sub-Process. This type of
Conditional flow, Link Events and Ad Hoc (no flow). Refer also to specific a transaction are finished successfully. Otherwise the transaction fails
Event MUST be attached to the boundary of a Sub-Process. It SHALL be
Cancel
triggered if a Cancel End Event is reached within the Transaction Sub- Workflow Patterns«. and rollback (compensation) activities occur which undo done
Process.
activities.
Artefacts
This is used for compensation handling--both setting and performing Normal sequence flow Ad Hoc
compensation. It calls for compensation if the Event is part of a Normal Artefacts are used to provide additional information about the process. If Task
No flow
Compensation Flow. It reacts to a named compensation call when attached to the required, modellers and modelling tools are free to add new artefacts.
Intermediate
Swimlanes
boundary of an activity. Very useful for modelling roll-back actions within
Examples of data objects: 'A letter', 'Email message', 'XML document', Compensation activity
link used as Task A
the transaction. Pools and lanes are used to represent organizations, ~
'Confirmation',...
This type of event is triggered when the conditions for a rule GOTO
roles, systems and responsibilities. Examples: Intermediate link Transaction boundary
become true. Rules can be very useful to interrupt the loop process, for A
Rule 'University', 'Sales division', 'Warehouse', 'ERP system',... used as GOTO Exception X
example: 'The number of repeats = N'. Intermediate rule is used only for Undo task A
Set of standardized artefacts
exception handling. Until Loop Looped subprocess Start Successfull
A Pool MUST contain 0 or 1
Data objects provide information about what activities are required to be
A Link is a mechanism for connecting the end (Result) of one business process.
transaction transaction
triggered and/or what they produce. They are considered as Artefacts Expanded sub-process
Process to the start (Trigger) of another. Typically, these are No
Task B
Error - compensation
Link Data object because they do not have any direct effect on the Sequence Flow or A Pool can contain 0 or more
two Sub-Processes within the same parent Process. It can be used, for
A
Message Flow of the Process. The state of the data object should also be
example, when the working area (page) is too small go to another page. lanes. events cannot be
[state]
set.
Exception X Undo task B triggered
Exception flow
Two pools can only be connected
This type of event indicates that there are multiple ways of triggering the Try again
Grouping can be used for documentation or analysis purposes. Groups
B
with message flows.
Multiple Process. Only one of them will be required to {start, continue, end} the
can also be used to identify the activities of a distributed transaction that is
Group
Process.
shown across Pools. Grouping of activities does not affect the Sequence
A Pool represents a participant in a process. It contains a business
or Message Flow.
process and is used in B2B situations. Interrupt
This type of End indicates that all activities in the Process should be Exception X Transaction Handle through
Conditional flow loop rule
Text Annotations are a mechanism for a modeller to provide additional
Terminate immediately terminated. This includes all instances of Multi-Instances. The A Lane is a sub-partition within a pool used to organize and exception other services
Annotation Description
information for the reader of a BPMN Diagram. Failed transaction
Process is terminated without compensation or event handling. categorize activities.
B ~ Collapsed adhoc sub-process
Cancel - compensation events are triggered.
Cancel event can be used only with transaction.
Wait a few minutes
Business Process Diagram Notation - Common Patterns and Antipatterns
Wrong use of flows in/between (Wrong) Use of time events Use of flows within lanes Use of gateways Workflow patterns
There are two common mistakes when using time events. First,
Multiple merge, uncontrolled flow
Normal sequence flow
starting events are often used instead of intermediate events.
pools Gateways are connected only with sequence flows. Also Avoid
Lanes are often wrongly used in similar ways as Pools. They
Second, intermediate events are often used as a delay
potential deadlocks when using gateways.
When modelling Pools, sequence flows and start/end events are
wrongly contain more business processes or contain message
mechanism but modelled as an exception mechanism
often missing, because it is wrongly presumed that message
flows between different lanes.
(representing the duration of a task) and vice-versa (see the
flows substitute sequence flows. Additionally, sequence flows
right use below).
are incorrectly used to connect pools.
Message flow cannot
A message flow is not Exclusive choice with Simple merge,
A Pool can contain only one
Parallel split, uncontrolled flow
Model the process in each Pool independently and afterwards influence the gateway
allowed within a process decision gateway uncontrolled flow
(1) process
Here a time event Is used as
define message flows between Pools.
Missing end event a DELAY mechanism.
Task A
Missing sequence flows
Task C
A conditional flow Is not
Decision
Multiple choice
... Task A Task B ...
allowed (necessary) here
information
Task B Task C
from Pool X
Delay
Task A Discriminator,
Parallel split,
No output flow from the task
Task A Task B Task C
Synchronization
forking gateway merging gateway
... exists.
(pararel join)
Exception time
(e.g. after 2 hours«)
Simple merge,
Task B
Message Message Sequence flows are not
Task A
uncontrolled flow
Here it represents the
flow AD flow EB allowed between Pools
DURATION of a task. Alter. 1
The decision must
An intermediate event contain at least two
Task B ...
Task B Task C
has to be used. output flows
Send message to Alter. 2
Task D Task E Task F
A message flow cannot be
Pool X
a gateway alternative
Alter. 3
Event based decision
Complex decision
Missing start event
(gateway)
Task C
Use of message events and Use of the sequence flow
message flows mechanism
Task A
Analysing
Use of tasks and events
decision
When using expanded sub-processes, sequence flows should
Starting and intermediate events can not be sources of
information Multiple choice, inclusive
be connected to the boundaries of sub-processes. Processes
message flows.
Analysts often wrongly model events and tasks. For decision gateway Synchronization merge, Example of a
Both examples are wrong - intermediate Task B
and sub-processes should start and end properly!
...
example: events are wrongly modelled as tasks, task states merging gateway deadlock
message events can not produce
are modelled as new tasks.
message flows. Events can be only Message
A sequence flow cannot cross
triggered by a message flow. from Pool X
This task is redundant.
the boundary of a sub-process Send message
...
This task is redundant. Task A is automatically Message A
to Pool X
Document X
Task automatically ... finished at output
Message to Pool X
Sub-process P« About the BPMN Poster C
starts at input sequence flow.
Wrong positioning of
sequence flow
Message B
message event
A
Task A Task B Task C This poster is licensed under the
Creative Commons Attribution-Share Alike (by-sa) License
Receiving
Starting Performing Task A
... document ...
task A task A finished ... Task A Task B ... Explanation of Poster Symbols
X
The sub-process should The process should have an
Authors:
B have a start event end event
Gregor Polan%0Å„i%0Å„ & Tomislav Rozman
Important note, explanation
This task is redundant.The act of receiving
Email: info@itposter.net
...
...
a document is a task itself.
University of Maribor
Sub-process P«
Warning or error in the BPMN model
Faculty of Electrical Engineering and Computer Science
...
...
Task A Task B Task C Institute of Informatics
Recommendation
Message A Message B
Exception flow Poster version: 1.0.10 (6th October 2008)
Document X Document Y Wrong model
Event Y Literature used: BPMN Specification 1.0 @ http://www.bpmi.org
Although it is recommended that a process has an explicit start and end
event, this is not a rule. In fact start and end events can be hidden in a sub
... Right (corrected) model
Task A Normal flow process, if needed, or attached to the boundary of the task so as not to
... Task A Task B ...
http://bpmn.itposter.net
interrupt the normal sequence flow between the sub-process and the rest of
Event X the process.
B
End
Start
Intermediate
From:
From:
Pool
Lane
Lane
Pool A
Pool A
Pool B
Lane B
Lane A
Lane B
Lane A
Pool B
Wyszukiwarka
Podobne podstrony:
BPMN Poster? ver 1 0 10ZAPALENIA VER POPR 10 10WSM 10 52 pl(1)VA US Top 40 Singles Chart 2015 10 10 Debuts Top 10010 35401 (10)więcej podobnych podstron