BPMN Business Management Presentations Process Management Process Modeling

Business Processing Model and Notation (BPMN)

Description

Overview of Business Process Model and Notation (BPMN) language for modeling business processes.
When implementing business processes, there is usually a large gap between the business semantics (process, activity, participant, orchestration, choreography, data items etc.) and the technical implementation languages (REST, WSDL, transport protocol, message bus etc.). BPMN has the goal of bridging this gap by providing a standard notation for describing business processes plus a standard mapping of this notation into an executable description language like WSBPEL. The BPMN 2.0 standard even allows executing BPMN business models directly without the need of a translation.
The core notation elements of BPMN are flow objects to model activities and events, data objects to model pieces of information, connecting objects to model information and control flow, and swimlanes to model process participants. Four different diagram types allow the modeling of processes, process choreographies, collaboration between participants and conversations.

Transcript

© Peter R. Egli 2015
1/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
OVERVIEW OF BUSINESS PROCESS
MODEL AND NOTATION (BPMN) LANGUAGE FOR
MODELING BUSINESS PROCESSES
PETER R. EGLI
INDIGOO.COM
BPMNBUSINESS PROCESS
MODEL AND NOTATION
© Peter R. Egli 2015
2/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
Contents
1. What is BPMN?
2. BPMN Main Parts
3. BPMN Scope
4. BPMN Core Concepts
5. BPMN versus BPEL
6. BPMN notation elements
7. BPMN 2.0 versus BPMN 1.2
© Peter R. Egli 2015
3/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
1. What is BPMN?
BMPN is a graphical modeling language and notation for business processes (=graphical DSL –
Domain Specific Language) with the following goals:
1. Common language understandable for different stakeholders.
2. Visualization of execution languages like WSBPEL.
3. Interchange format between tools for process description and diagrams.
<bpmn:process name=”Order Process”>
<bpmn:endEvent name=”Send confirmation”>
<bpmn:incoming>Incoming_Flow</bpmn:incoming>
<bpmn:messageEventDefinition/>
</bpmn:endEvent>
<bpmn:startEvent name=”Receive order”
isInterrupting=”true” parallelMultiple=”false”>
<bpmn:outgoing>Outgoing_Flow</bpmn:outgoing>
<bpmn:messageEventDefinition/>
</bpmn:startEvent>
<bpmn:subProcess name=”Process order”
startQuantity=”1″ triggeredByEvent=”false”>
Business people
use and monitor processes
Business analysists
define processes
Developers
implement processes
BPMN = common language & notation
© Peter R. Egli 2015
4/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
2. BPMN Main Parts (1/3)
A. Diagram types:
BPMN defines the following 4 diagram types.
ChoreographyOrchestration/Process
Collaboration Conversation
© Peter R. Egli 2015
5/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
2. BPMN Main Parts (2/3)
B. Business process notation:
BPMN defines a common set of modeling elements to be used in BPMN diagrams.
Data
Connecting Objects
Flow Objects
Swimlanes
Artifacts
Activity
Event Gateway
Data
Object
Data
Input
Data
Output
Data
Store
Message FlowSequence Flow Association Data Association
Pool
Lane
Group
Text
Annotation
© Peter R. Egli 2015
6/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
2. BPMN Main Parts (3/3)
C. Mapping to execution language:
BPMN defines a mapping to the WSBPEL execution language.
BPMN roughly maps to WSBPEL, but could be mapped to another execution language as well.
BPMN
Business Process Model
Mapping to

<bpel:assign bpmn:label=”invoke” name=”invoke”
bpmn:id=”_Oig9ANU5Edyqa7yB__NlQQ”>
<bpel:copy>
<bpel:from>$thisStartRequestMsg.body/tns:city</bpel:f
rom>
<bpel:to>$timeService1GetCityTimeRequestMsg.param
eters/TimeService1:city</bpel:to>
</bpel:copy>

WSBPEL to run in BPEL-runtime
© Peter R. Egli 2015
7/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
3. BPMN Scope
Different model notations and languages are used for modeling business aspects.
BPMN is a notation to model business processes.
StrategyVision Organization
Functional
Breakdown
Services
Business
Rules
Business
Processes
Data
Information
Balanced
Scorecards
Org
Chart
BPMN
Enterprise
Architecture
Strategy
Map
ArchiMate
Entity
Relationship
Diagram
SOMF
Business
Rules
Model
Functional
Decomposition
Diagram
© Peter R. Egli 2015
8/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
4. BPMN Core Concepts (1/5)
A. Orchestration / processes (1/2):
A process describes a sequence or flow of activities as part of work to be carried out
(=workflow).
Processes contain the BPMN flow elements (events, actitivies, gateways) and callable
processes.
Process types:
a. Private non-executable process (process for documentary purposes only)
b. Private executable process (contains enough detail to be executable)
c. Public process
Activity
Event Gateway
Task
Sub-Process
Activity
(=abstract super
class)
Concrete
activity
types
Call Activity
© Peter R. Egli 2015
9/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
4. BPMN Core Concepts (2/5)
A. Orchestration / processes (2/2):
a. Private process:
A private process is specific to an organization. There is no interaction with another swimlane
(pool = participant).
b. Public process:
Public processes show interactions between a private process and another process or
participant (pool).
Internals of public process are not shown, only the interactions with another process.
PrivateProcess
Start
Check Credit HistoryCheck Order
Completeness
Calculate Price Send Notification
End
«BusinessPro…
Approve Order
«BusinessPro…
Approve Order
CarOwner
Start
Help Line Receive
Request
Send Service Address Receive Damage
Description
We’ll Check What
The Problem Is
Check & Fix Engine
End
My Car is Broken The Engine Rumples Leave The Car Here
Problem Is Fixed,
Go To Checkout
Desk
Go To CarServ
© Peter R. Egli 2015
10/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
4. BPMN Core Concepts (3/5)
B. Collaboration:
A collaboration shows the interaction between participants modeled as swimlanes (pool, lane).
A collaboration diagram typically contains 2 or more pools / lanes.
Message flows cross the pool boundaries while sequence flows connect activities within pools.
PatientHealthcareContact
Center/Doctor
Illness occurs
Contact Doctor
Request
Receive
Request
Send
Appointment
Receive
Appointment
Send
Symptoms
Receive
Symptoms
Give Medicine
Receive
Medicine
I have a stomach
acheGo see your doctorI want to see my doctor
© Peter R. Egli 2015
11/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
4. BPMN Core Concepts (4/5)
C. Choreography:
Choreography shows the interactions between participants modeled as pools.
Choreographies are defined outside of pools and exist between pools.
The focus of choreographies is on the exchange of information between participants.
In choreographies, there is no central control, responsible entity or observer.
Patient
Doctor
Doctor Request
I want to see
my doctor
Go see the
doctor
Patient
Doctor
Handle Symptoms
I feel sick
Patient
Doctor
Handle Prescription
Pick up your
medicine
Patient
Doctor
Hanlde Medicine
I need my
medicine
Here is your
medicine
© Peter R. Egli 2015
12/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
4. BPMN Core Concepts (5/5)
D. Conversation:
Conversation diagrams show the logical message exchanges between participants.
Unlike process, collaboration and choreography diagrams, conversation diagrams show a
“birds eye view” of the different conversations (exchange of information) between participants.
Retailer Supplier
Delivery
Negotiations
Consignee
Shipment
Schedule
Delivery /
Dispatch
Plan
Shipper
Delivery /
Dispatch
Plan
Carrier Insurance
Coverage
© Peter R. Egli 2015
13/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
5. BPMN versus BPEL
BPMN and BPEL share common concepts, but are not tools for the same purpose.
BPMN is mainly a notation that defines how business processes can be modeled graphically.
WS-BPEL defines a machine-processable and –executable format for business processes.
BPMN 1.2 is typically translated to BPEL 2.0 which in turn is executed on a BPMN runtime.
BPMN 2.0 can be directly executed on a BPMN runtime without translation to another format.
Description Language Translator
Execution
Language
Runtime
BPMN 1.2 BPMN Mapper
WS-BPEL
(BPEL 2.0)
BPMN runtime like intalio
BPMN 2.0 – BPMN 2.0 BPMN runtime
Java Java compiler Byte code Java Virtual Machine
C / C++ Compiler Machine code CPU
© Peter R. Egli 2015
14/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (1/10)
Activity:
Activities (tasks, sub-processes) are executable elements of a BPMN process.
Actity type Symbol Description
Task
Atomic activity within a process that cannot be broken down
further.
Typically a task is executed by an end-user or application.
Sub-process
Activity with an internal structure containing activities,
gateways, events and sequence flows.
Call activity
Defines a point where a global task or process is called.
A call activity differs from a sub-process in that it is a reference
to a process while a sub-process is a process itself.
This means that a call activity calls a reusable process or task.
The called sub-process or task can be called multiple times by
different call activities.
Task
Sub-Process
Call Activity
(Task)
Call Activity
(Sub-Process)
© Peter R. Egli 2015
15/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (2/10)
Task types (1/2):
Task type Symbol Description
Abstract task Task without any specialization.
Service task Task that uses some sort of service like a web service.
Send task
Task for sending a message to an external participant. After the message
is sent, the task is completed.
Receive task
Task that waits for a message to arrive from an external participant. After
the message is received, the task is completed.
Instantiating
receive task
Same as receive task, but instantiates a process
(“creates process token”).
Task
Service Task
Send Task
Receive Task
Process
Instantiate
Receive Task
© Peter R. Egli 2015
16/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (3/10)
Task types (2/2):
Task type Symbol Description
User task Task executed by a human with the assistance of a software application.
Manual task
Task executed by a human without the assistance of any process
execution engine or application.
Business rule
task
Provides input to a business rule engine.
Receives output from a business rule engine.
Business rule tasks connect a process or sub-process to a business rule
engine.
Script task
A script task is executed by a business process engine.
When the script is finished, the task is finished as well.
User Task
Manual Task
Business Rule
Task
Script Task
© Peter R. Egli 2015
17/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (4/10)
Task markers:
Additional markers add more semantics to tasks.
Task marker Symbol Description
Loop A looping task repeats its action as long as a loop flag is set.
Multi-
instance
sequential
The task is executed in multiple instances in sequential order.
Multi-
instance
parallel
Multiple instances of the task are executed in parallel.
Compensation
Compensation is used in case of errors (exceptions) to undo steps that
are already executed (call of compensation handler for a “rollback”).
Allowed
marker
combinations
Multi-instance sequential &
compensation
Multi-instance parallel &
compensation
Loop & compensation
Loop Task
Multi-instance
Sequential Task
Multi-instance
Parallel Task
Compensation
Task
Task
Task Task
© Peter R. Egli 2015
18/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (5/10)
Sub-process types:
Sub-process
type
Symbol Description
Transaction
sub-process
A transactional sub-process executes all internal activities either
successfully or none (exception case).
Typically, a transaction sub-process is combined with a cancel event to
call a transaction cancel (rollback) handler.
Event sub-
process
Execution of an event sub-process is triggered by an event. The
execution is independent of the parent process flow, thus there are no
incoming and outgoing sequence flows. However, an event sub-process
is only executed when the parent process (or sub-process) is active.
Transaction
Sub-Process
© Peter R. Egli 2015
19/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (6/10)
Sub-process markers (1/2):
Sub-processes may have the same markers as tasks. Additionally, the ad-hoc marker may be
used on sub-processes to express a less strict execution ordering.
Sub-process
marker
Symbol Description
Loop
A looping sub-process repeats its internal activities as long as a loop
flag is set.
Multi-
instance
sequential
The sub-process is executed in multiple instances in sequential order.
Multi-
instance
parallel
Multiple instances of the sub-process are executed in parallel.
Compensation
Compensation is used in case of errors (exceptions) to undo steps that
are already executed (call of compensation handler to “rollback”).
Ad-hoc
sequential
Ad-hoc sub-processes have a less strict temporal ordering of activities.
Internal activities may or may not have sequence flows.
Ad-hoc sequential means that contained activities are executed sequentially.
Ad-hoc
parallel
In a parallel ad-hoc sub-process, contained activities are executed in parallel.
Loop
Sub-Process
Multi-instance
Sequential
Sub-Process
Multi-instance
Parallel
Sub-Process
Compensation
Sub-Process
Ad-hoc
Sequential
Sub-Process
Ad-hoc Parallel
Sub-Process
© Peter R. Egli 2015
20/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (7/10)
Sub-process markers (2/2):
Task marker Symbol & Description
Allowed
marker
combinations
Loop & compensation
Loop & ad-hoc (parallel
and sequential)
Multi-instance &
compensation (parallel and
sequential)
Multi-instance & ad-hoc
(parallel and sequential)
Ad-hoc & compensation
(parallel and sequential)
Loop & compensation &
ad-hoc (parallel and
sequential)
Multi-instance & compensation & ad-hoc (parallel and sequential)
Loop &
Compensation
Sub-Process
Loop & Ad-hoc
Sub-Process
Multi-instance &
Ad-hoc
Sub-process
Multi-instance &
Compensation
Sub-process
Ad-hoc &
Compensation
Sub-process
Loop & Ad-hoc
&
Compensation
Sub-process
Multi-instance &
Ad-hoc &
Compensation
Sub-process
© Peter R. Egli 2015
21/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
Process
pool
Blackbox pool
No process referenced
Contains a process
Pool types
6. BPMN notation elements (8/10)
Swimlanes (1/2):
Swimlanes are either pools (white-box or black-box) or lanes (=partitions in pools).
Pools represent participants which are partner entities like a supplier.
Participants are often responsible for a process execution in a pool.
Simplified meta-model:
PartnerEntity
Example:
Company
Participant
PartnerRole
Example:
Buyer
Process
<<represents>>
<<represents>>
<<responsible for>>
Pool
<<Graphical
representation of>>
Swimlane
Lane
(=Subpartition
in pool)
© Peter R. Egli 2015
22/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
ProcessPool
6. BPMN notation elements (9/10)
Swimlanes (2/2):
Swimlanes markers:
Swimlane
type
Symbol Description
Process
(“White-
box”) pool
Pool that contains a process.
Black-box
pool
Pool that does not contain a process.
Lane
Lanes are sub-partitions in a pool or process. Lanes can be nested.
Lanes do not have semantics in BPMN, i.e. lanes are a simple
grouping and partitioning concept.
Blackbox pool
Poolwith
lanes
ProductionSales
Swimlane
marker
Symbol Description
Multi-
instance
Multi-instance pools represent multi-instance participants.
Example: Multiple suppliers.
Multi-instance
Pool
© Peter R. Egli 2015
23/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
6. BPMN notation elements (10/10)
Gateways:
Gateways are used to produce and consume process tokens (process instances).
Gateway type Symbol Description
Exclusive
gateway
or
Exclusive gateways are like decisions. The process flow takes either of the
outgoing directions (only 1 or none).
Inclusive
gateway
The inclusive gateway evaluates all outgoing conditions and creates a
process token for each condition that evaluates to true.
Parallel
gateway
Parallel gateways join and fork flows. Thus parallel gateways are used to
create (fork) and synchronize (join) parallel flows.
No condition checking is involved with parallel gateways.
Complex
gateway
Complex gateways are used to model complex synchronization behavior.
Example: 3 out of 5 incoming flow tokens must be present to create an
outgoing process token (depending on the conditions of the outgoing
flows).
Outgoing and incoming token semantics are the same as in inclusive
gateways.
Event gateway
Event gateways represent branching points based on events rather than
conditions.
Example: Reception of different messages is dispatched into different
process paths to handle the messages.
X
© Peter R. Egli 2015
24/24
Rev. 1.60
BPMN – Business Process Model and Notation indigoo.com
7. BPMN 2.0 versus 1.2
BPMN 2.0 brought a number of changes :
• Formalization and clarification of the execution semantics of all BPMN elements
• Extensibility mechanism for graphical elements
• Refinement of event composition and correlation
• Definition of choreography model (choreography, choreography diagram)
• Redefinition and clarification of various BPMN elements (see table below)
BPMN 1.2 Feature BPMN 2.0 Feature
Reusable sub-process Call activity
Embedded sub-process Sub-process
Abstract process Public process
Directional association to show how data objects are
inputs and outputs to activities
Data association connector to show inputs and outputs
Message is a BPMN element Message is only a graphical decorator
None task Abstract task
Directional associations to show data flows to and from
activities
Data association connector to show inputs and outputs of
activities
Performer role for describing people in activities
In addition to Performer role, HumanPerformer role allows to
identify humans performing a task
Intermediate events possible without incoming sequence
flows
Intermediate events must have an incoming sequence flow

Leave a Comment

Get the BPI Web Feed

Using the HTML code below, you can display this Business Process Incubator page content with the current filter and sorting inside your web site for FREE.

Copy/Paste this code in your website html code:

<iframe src="https://www.businessprocessincubator.com/content/business-processing-model-and-notation-bpmn/?feed=html" frameborder="0" scrolling="auto" width="100%" height="700">

Customizing your BPI Web Feed

You can click on the Get the BPI Web Feed link on any of our page to create the best possible feed for your site. Here are a few tips to customize your BPI Web Feed.

Customizing the Content Filter
On any page, you can add filter criteria using the MORE FILTERS interface:

Customizing the Content Filter

Customizing the Content Sorting
Clicking on the sorting options will also change the way your BPI Web Feed will be ordered on your site:

Get the BPI Web Feed

Some integration examples

BPMN.org

XPDL.org

×