INFS 5108
© 2013 MID GmbH
www.mid.de
BPMN 2.0 - Business Process Model and Notation Innovator for Business Analysts
Find more information about the Innovator for Business Analysts and business process modeling with BPMN 2.0!
Events
Start Event
End Event
Intermediate Event
caught thrown
Escalation
Conditional
Error
Timer
Message
Terminate
Link
Signal
Cancel
None
Compensation
Multiple
Parallel Multiple
Caught
Interm ediate Event
Start Event
Start Event
Start Event
Event Connected
Event Connected
Throw n
End Event
order invitation cards
inquire by phone
create invitation
delete participant
confirm participant
cancel invitation
cancelation
cr ea
te in
vi ta
ti on
plan event
14 days
cancelation
commitment
event canceled termination
continuation
canceled
confirmed
not available
continuation
10 invitation cards still remain
invitation
Events: represent all incidents within a process. An event may be used as a start, intermediate, interrupting and end event.
Interm ediate Event
Interrupting Boundary
N on-Interrupting Boundary
Interrupting Subprocess-
Non-Interrupting Subprocess-
Conditional Flow
Sequence Flow
Massage Flow
Shows the flow of messages between two participants. It can start or end at a participant or at any element of the process. It always goes beyond participant borders.
Shows the flow in a process. The sequence flow cannot cross a pool boundary but can switch between lanes.
Association
Is mainly used as data association for modeling data flows. For modeling compensations it is used as compensation association.
A means to attach a condition to a sequence flow that does not belong to a gateway.
Is traversed if none of the conditions after a gateway is true.
Default Flow
Edges and connectors Collaboration: describes the interaction between participants (in this example: customer, company and supplier).
Process: describes the flow of activities in an organization (in this ex- ample: quote creation).
Lane: represents the responsibilities within a process like involved roles or systems (in this example: clerk and approver).
Processes and Collaborations
Supplier
cu st
om er
re qu
es t
fo r
qu ot
e
approve quote
A pp
ro ve
r
create quote
complete quoteCl
er k
co m
pa ny
qu ot
e cr
ea ti
on
Co lla bo
ra tio
n
quote requested quote created
quote requested quote created
request quote
query answer
Artifacts
Groups help to structure ele- ments and do not influence the process flow.
Text annotations enable to capture important additional information.
GroupsText annotation
create quote
send quote
quote sent
price list
qu ot
e cr
ea ti
on
customer information
Text annotations may contain additional information
Task: represents a single step in a process or a work unit.
User Task: is executed by a user with the as- sistance of a software application.
Service Task: is performed automatically. From a technical point of view, it is a call of a service operation.
Business Rule Task: provides a mechanism for the process to provide input to a busi- ness process engine.
Manual Task: is expected to be performed without the aid of any business process execution engine or any application.
Activities
Script Task: is executed by a business pro- cess engine.
Call Activity Global Task: identifies a point in the process where a global task is used. Activation of a call activity trans- fers control to the called task.
Call Activity Subprocesses: is an independent process that can be called from various processes.
Receive Task: receives messages and com- plies with the semantics of an intermediate event for messages caught.
Send Task: sends messages and complies with the semantics of an intermediate event for messages thrown.
Event-based subprocess: is started by an external event. It does not have any incoming or outgoing sequence flows.
Subprocess: is a graphical object within a process but it also can be „opened up“ to show a lower-level process. It is not an independent process and may not be devided in different lanes.
Transactions: are subprocesses which require special actions to be taken in case of failure or hazard.
Ad-hoc Subprocess: do not impose a sequence on its contained activities. The sequence and number of performances of the ac- tivities is up to those persons or resources doing the work.
save contact information
delete account information
save account information
create account
Tr an
sa cti on
error when saving
roll back error when saving
cancel
inform customer
perform measurement
monitor response time
process request on 1st levelP
ro ce
ss in
g s
u p
p o
rt re
q u
es t
loop condition: no sultion had yet been found
correct defect
check quality
find cause
identify reason of failure
inform customer
Pe rf
o rm
in g
d ef
ec t
co rr
ec ti
o n
s
reason of failure
reason of failure
defect correction failed
defect correction failed
defect corrected
prepare main course
buy ingredients
set the table
polish cutlery
prepare dessert
prepare starter
prepare dinner
A d-
ho c
Su bp
ro ce
ss
invite friends
Ad-hoc: whether and how often an activity is performed is left to the discretion of the per- son responsible.
This activity implies a subprocess.
Loop: repeats the performance as long as the loop condition is met.
Multi-Instance Parallel: multiple, simultane- ous execution for a number of objects.
Multi-Instance Sequential: multiple, sequen- tial execution for a number of objects.
Compensation: undoes steps which have al- ready been successfully completed.
Markers for Tasks and Subprocesses
Compensation Association occurs outside the normal sequence flow and connects a com- pensation event with a compensation activity at a roll back.
Data Object
Data Store (Reference)
Data Output
Data Input
A data object represents data which is relevant for the process. They can only be referenced inside the process.
Data Inputs represent data which has to be passed to a process or subprocess from the outside i.e. the calling process for further processing.
Analogous to the data input the data output repre- sents data which is returned from the process or subprocess to the calling process.
Using a data store (reference) instead of a data object emphasizes that the data used is persistant rather than transient data and that it is accessible from dif- ferent processes rather than having a local scope.
Data Data Association List of data objects
Name [state]
Name [state]
Name [state]
Name [state]
Name [state]
Name [state]
Name [state]
Data associations model the flow of data including data transformations.
create order
acquire quote data
order creation
archive order
acquire quote
create order
quotation processing
send order
order database
quotation itemsquote
quote received
order
orderquotation items
Instantiation
Instantation: is mainly relevant in the process automation realized by gateways and events.
The occurence of the first events instantiates the process. All other paths of the event-based exclusiv gateways are no longer valid.
revise quote
send order
create order
send quote
cancel quote
q u
o ta
ti o
n p
ro ce
ss in
g
customer answer
deadline
quote accepted
quote declined
order sent
quote sent
The occurence of the first event instantiates the process. The process may only terminate normally if further events occured.
Multiple- Start Event
Parallel Multiple- Start Event
The process can be instantiated through different events. All events have to occur so that the process can be instantiated.
settle travel expenses
p er
fo rm
tr
av el
e xp
en se
a cc
ou n
tin g
travel expense accounting received
15th of the month
perform defect correction
co rr
ec t
d ef
ec t
request defect correction defect correction declined
defect correction reported
settle travel expenses
p er
fo rm
tr av
el e
xp en
se s
ac co
un tin
g
15th of the month travel expenses
accounting received
Event-Based - Exclusive
Event-Based - Parallel
all paths are taken
Gateways
data-based exclusive (either OR)
parallel (AND)
inclusive (OR/AND)
event-based exclusive
complex
event-based: the flow is forwarded to the path whose events occured first.
Gateways are used to control how the process flows through sequence flows as they converge and diverge within a process.
only one path can be taken
one path is taken depending on the first occuring event
decline quote
inform customer
accept quote
check quote
quote ok
quote incorrect
exclusive: exactly one path is taken
select music
buy drinks
buy food
plan event
invite friends
process answer
complete process
submit quote
answer
14 days
determine customer‘s wish
inform customer
book room
order drinks
drinks desired
room desired
inclusive: more than one path can be taken
none, one or more paths can be taken
can be used to model complex synchronization behavior
parallel: all paths are taken
Business Rule Task
Multi-Instance Sequential
Event-based subprocess
Service Task
La ne
1 (s
ub or
di na
te )
Call Activity Subprocess
Manual Task
Call Activity Global Task
Send Task
Script Task
Subprocess (with loop feature)
La ne
2 (s
ub or
di na
te )
La ne
(s up
er io
r)
Pa rti
ci pa
nt /P
oo l (
W hi
te B
ox )
Pr oc
es s
Participant/Pool (Black Box)
Co lla
bo ra
tio n
Text annotation as loop condition
escalation intermediate event
timer intermediate event
termination end event
parallel gateway
list [state1, state 2]
message end event
data object [state]
failure boundary event (interrupting)
signal intermediate event
event based gateway
standard answer
exception answer
deadline
message start event
data store [state 1, state 2]
data store [end state]
link intermediate event
failure end event
escalation start event (non-interrupting)
exclusive gateway
multiple end event
link intermediate event
inclusive gateway
condition
otherwise (default)
condition
condition
message (trigger)
message (trigger)
message (trigger)
message (trigger)
message (trigger)