Upload
vinh1964
View
166
Download
7
Tags:
Embed Size (px)
Citation preview
Business Process Modelling Business Process Modelling Notation Notation –– A tutorialA tutorial
Sam Mancarella
Chief Technology Officer
Sparx Systems
OMG SOA in Healthcare
January 14, 2011
www.sparxsystems.com/resources
Tutorial ObjectivesTutorial Objectives
This tutorial will cover…
BPMN Timeline
What BPMN is, Process Modelling
BPMN Essentials
Orchestration, Choreography
Examples
Wrap Up, Future Directions
www.sparxsystems.com/resources
ReferencesReferences
BPMN Official Pagehttp://www.bpmn.org/
BPMN Wikipediahttp://en.wikipedia.org/wiki/Business_Process_Modeling_Notation
BPMN Specification (v2.0 Beta 2)http://www.omg.org/spec/BPMN/Current/
BPMN Specification (v1.2 Formal)http://www.omg.org/spec/BPMN/1.2/
BPMN Examples (v2.0 Beta 2)http://www.omg.org/spec/BPMN/2.0/examples/PDF
www.sparxsystems.com/resources
BPMN TimelineBPMN Timeline
Business Process Management Initiative developed BPML (BPMI now part of OMG)
Proposed graphical language for BPM, combined with execution semantics
Implementation difficulties, semantic requirements
BPML replaced with:
BPEL (or BPEL4WS) for target execution language
BPMN for graphical notation
History
August 2001 – Notation working group formed (35 companies)
May 2004 – BPMN 1.0 published under BPMI
2005 – BPMI becomes part of OMG
Feb 2006 – BPMN 1.0 formalised as an OMG specification
Jan 2008 – BPMN 1.1 released
Jan 2009 – BPMN 1.2 released
Aug 2009 – BPMN 2.0 Beta 1 released
May 2010 – BPMN 2.0 Beta 2 released
Finalisation & Adoption
www.sparxsystems.com/resources
What Is BPMN?What Is BPMN?
BPMN is…
A Graphical modelling language, with symbols, relationships and attributes for the purpose of process modelling
Expression of processes generated into executable processes (BPEL)
Expression of processes for ‘general execution’ (Human, human-operated)
Simple, palatable language – ‘flowchart-like’ non-IT practitioner consumption
BPMN is not…
A methodology, process, framework
Complex, usable in subsets
*Metamodel
*Serialization specification
* Exists in BPMN 2.0 (“was-not, until recently…”)
www.sparxsystems.com/resources
BPMN & Process ModellingBPMN & Process Modelling
Process Modelling - capture of ordered sequences of business activities & info
Business Processes – description of how a business pursues its objectives
Process Maps: simple flow charts of high-level activities
Process Descriptions: flow charts with more information (not enough for full realisation)
Process Model: flow charts with enough information for analysis, simulation, execution
BPMN is flexible to handle all variants of BP
…to understand the business processes of the organisation to innovate…
www.sparxsystems.com/resources
BPMN EssentialsBPMN Essentials
Logical process ‘flow’, finite start and end points
Diamond – decision point? yes/no paths for an extra step
Rounded boxes must therefore ‘do stuff’
Receive CreditReport
Approval
Include TransactionHistory
Include StandardText
Approve?
Yes
No
Events Events
Gateway
Activities
Sequence Flows
www.sparxsystems.com/resources
BPMN EssentialsBPMN Essentials
«L
an
e»
«L
an
e»
«P
oo
l»
«Group»
«P
oo
l»
ArtifactsConnectorsFlow Objects
Events
Activities
Gateways
Data Object
Text Annotation
Sequence Flow
Message Flow
Association
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- ActivitiesActivities
BPMN Activity
Work performed within a business process
Atomic or composite
Used to model Tasks, Sub-processes
Can iterate (loop)
Task
Sub-Process
Looped Task
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- ActivitiesActivities
Sub-Processes
Hierarchical process development
Have an ‘inner working model’
Collapse/expand to show and hide finer level of detail
Embedded, independent, reusable
Sub-Process
Receive CreditReport
Approval
Include TransactionHistory
Include StandardText
Approve?
Yes
No
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- EventsEvents
Events
Something that ‘happens’ in a process
Affect the flow of a process
Have a trigger or result
Boundary determines the type of event
Start
Intermediate
End
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- EventsEvents
Start Event
Beginning of a process
Different triggers that start the process
‘None’ Start Event
Undefined trigger to start of process
Entry point to a Sub Process
None
Message
Timer
Rule
Link
Terminate
Error
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- EventsEvents
Intermediate Event
Occur after a process has started, but before it ends
Placed in the normal process flow or attached to boundary of an activity
None
Message
Timer
Rule
Link
Terminate
Error
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- EventsEvents
End Event
End of a process
“Results” denote the ‘final step’ in the process
None
Message
Timer
Rule
Link
Terminate
Error
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- GatewaysGateways
Gateways
Controls sequence flow within a process at a point of divergence or convergence
Gateways split and merge flows
Exclusive (Data)
Exclusive (Event)
Inclusive
Complex
Parallel
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- GatewaysGateways
Exclusive Gateway
A Decision control point
Only one outgoing path selected
Decision mechanisms:
Data – using condition expressions (first affirmative)
Event – receiving alternate messages (first received)
Activity1Payment ok?
Send PaymentProblem
Cancel Order
Send Confirmation
Activity1Payment ok?
Send Cancel
Send Invoice
Send Reminder
No
3 Days
Yes
No
No, Exceeded Retry
Yes
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- GatewaysGateways
Inclusive Gateway
More than one outcome possible
Corresponding merge gateway
Activity1Documents Required?
Prepare Document A
Prepare Document B
Prepare Document C
Collate Documents
DocC
Doc B
Doc A
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- GatewaysGateways
Parallel Gateway
Multiple parallel paths are executed
No causality on branches
Also used as a synchronisation point
Prepare Results
Post Results to Web
Email Results
SMS Results
Call PressConference
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- GatewaysGateways
Complex Gateway
Decision with advanced definitions of behaviour
Activity1
Review Breach Reports
Sector 1 Report
Sector 2 Report
Sector 3 Report
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- ArtifactsArtifacts
Artifacts
Convey information beyond the process itself
Data Objects, Groups, Annotations
‘Extension Point’ for BPMN
Not part of the process ‘Flow’
«Group»
Data Object
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- ArtifactsArtifacts
Data Object
Used to show use of objects in Process
Data – Inputs, Outputs
Document – capturing document state within process
Text Annotation
Callout for textual comment
Group
Annotation that highlights key aspects of process
«Group»
Data Object
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- SwimlanesSwimlanes
Swimlanes
Partition and organise activities
Identify participants and roles
Pools
Participants, Parties, Business Role
Interaction as flow of messages
Process fully contained within Pool
Lanes
Sub partitions within Pool
Organisation roles
Sequence and Message interaction «
La
ne
»«
La
ne»«P
oo
l»«
Po
ol»
www.sparxsystems.com/resources
BPMN Essentials BPMN Essentials -- ConnectorsConnectors
BPMN Connectors
Sequence Flow
Order that activities are performed
Between Events, Activities, Gateways
Message Flow
Flow of messages between two entities
Between Participants
Association
Associate data, information, artifacts with entities
NOT a UML Association
Connectors
Association
Message Flow
Sequence Flow
www.sparxsystems.com/resources
Orchestration and ChoreographyOrchestration and Choreography
Orchestration
Defines processes internal to a specific participant, organisation
Private processes within pool (and between lanes)
Sequence Flows and Message Flows
Choreography
Defines interactions between two or more participants, organisations, B2B, global processes
Public exchange of messages between pools in a collaboration
Message Flows only
www.sparxsystems.com/resources
Orchestration and ChoreographyOrchestration and Choreography
«Pool» LoanServ icesOrg
ReceiveRequest
CheckAmount
AssessLoanRisk
CheckAssessment
AssignYes ApproveLoan
ReplyResult
«Pool» Customer «Pool» Loan Broker
bpel:getVariableData('loanRequestMessage', 'amount')>=10000
bpel:getVariableData('riskAssessmentMessage', 'level ')>='low'
BPMN ExamplesBPMN Examples
‘BPMN By Example’http://www.omg.org/spec/BPMN/2.0/examples/PDF
www.sparxsystems.com/resources
Examples Examples –– Shipment ProcessShipment Process
www.sparxsystems.com/resources
Examples Examples –– The Pizza CollaborationThe Pizza Collaboration
«P
ool»
Pizza
Cu
sto
me
r«
Po
ol»
Pizza
Ve
nd
or
Pizza Order
Pizza whereabouts Query
Pizza whereabouts Response
Pizza
Money
Receipt
www.sparxsystems.com/resources
Examples Examples –– The Pizza CollaborationThe Pizza Collaboration
www.sparxsystems.com/resources
Examples Examples –– The Pizza CollaborationThe Pizza Collaboration
www.sparxsystems.com/resources
Examples Examples –– The Pizza CollaborationThe Pizza Collaboration
www.sparxsystems.com/resources
Wrap UpWrap Up
BPMN in this tutorial…
A graphical modelling language for the purpose of process modelling
General execution, Machine execution
Events, Activities, Gateways, Connectors, Pools, Lanes
Orchestration WITHIN Pool, Choreography BETWEEN Pools
Examples
BPMN 2.0
Formal metamodel, concrete syntax
XMI interchange specification
UML Profile for BPMN (initial submissions due March 2010)
Vendors
73 Registered implementations (4 planned)
9 Service providers
http://www.bpmn.org/BPMN_Supporters.htm
www.sparxsystems.com/resources
ReferencesReferences
BPMN Official Pagehttp://www.bpmn.org/
BPMN Wikipediahttp://en.wikipedia.org/wiki/Business_Process_Modeling_Notation
BPMN Specification (v2.0 Beta 2)http://www.omg.org/spec/BPMN/Current/
BPMN Specification (v1.2 Formal)http://www.omg.org/spec/BPMN/1.2/
BPMN Examples (v2.0 Beta 2)http://www.omg.org/spec/BPMN/2.0/examples/PDF
Thank you for your attention!Thank you for your attention!
Questions?
www.sparxsystems.com/resources
Product PortfolioProduct Portfolio
UML Modeling Platform
Technology Extensions
Application Integration
UML Integration
thank you for your attention!