BPMN 2 0-Tutorial
BPMN 2 0-Tutorial
BPMN 2 0-Tutorial
0 Tutorial
Daniel Brookshier Distinguished Fellow No Magic Inc.
Generated from MagicDraw UML Based on current BPMN 2.0 for UML reference implementation. Developed by Daniel Brookshier, Distinguished Fellow, No Magic Inc. danielb@nomagic.com
What is BPMN ?
Business Process Modeling Notation Developed by Business Process Management Initiative (BPMI), and is currently maintained by the Object Management Group since the two organizations merged in 2005 Supports business process management for technical and business users Bridge communication gap between business process design and implementation
What?
BPMN is simple Process diagrams business people like Less complex (business likes that too) Under the covers, technical enough for techies
Similar to flowcharts and UML Activity diagrams Flow of activities with various messaging and data Can be used for service orchestration in SOA
Primary Components
Why BPMN?
Standard notation Model concepts and/or implementation of business process Models high-level process concepts Notation is not complex
Simple Collaboration
Simple Collaboration
Understanding Collaborations
BPMN Choreography
Sequence of interactions between Participants. Choreographies exist outside of or in between Pools. A Choreography Task is an atomic Activity in a Choreography Process. The task represents an Interaction, which is one or two Message exchanges between two Participants. Helps to show who initiates the activity and the first message.
Loan a Book
Process Symbols
Activities
Work that is performed within a Business Process. Activity can be atomic or non-atomic (compound) High-level, so does not describe the activity detail (not the job of BPMN) Three types: Task, Sub-process, and Transaction
Activiy Symbols
Task Symbols (1 of 2)
Task Symbols (2 of 2)
Gateways
Gateways are used to control how Sequence Flows interact as they converge and diverge within a Process. Capable of consuming or generating additional tokens. Define decisions/branching (exclusive, inclusive, and complex), merging, forking, and joining.
Gateway Symbols
Data
Start Events
Intermediate Events
End Events
End Event indicates where a Process will end. In terms of Sequence Flows, the End Event ends the flow of the Process, and thus, will not have any outgoing Sequence Flows. No Sequence Flow can connect from an End Event. Depending on the type, other rules are enforced (like error handling and/or how the process is terminated).
End Events (1 of 3)
End Events (2 of 3)
End Events (3 of 3)
Pools
A Pool is the graphical representation of a Participant in a Collaboration. It also acts as a swimlane and a graphical container for partitioning a set of Activities from other Pools Usually in the context of B2B situations Pool MAY have internal details, in the form of the Process that will be executed Pool MAY have no internal details, i.e., it can be a "black box."
Lanes
Lane (Swimlane) is a sub-partition within a Process Extend the entire length of the Process Lanes are used to organize and categorize Activities
CONDITIONAL FLOW
Exception Flow
Data Flow
Compensation Flow
Message Flows
Flow of Messages between two Participants that are prepared to send and receive them. A Message Flow MUST connect two separate Pools. They connect either to the Pool boundary or to Flow Objects within the Pool boundary. They MUST NOT connect two objects within the same Pool.
Message Flows
Data Associations
Data Associations are used to move data between Data Objects, Properties, and inputs and outputs of Activities, Processes, and GlobalTasks. Tokens do not flow along a Data Association, and as a result they have no direct effect on the flow of the Process. Used for retrieving data from Data Objects or Process Data Inputs to fill the Activities inputs and push the output values from the execution of the Activity back into Data Objects or Process Data Outputs.
Thank You
Daniel Brookshier DanielB@NoMagic.com