BPMN: Difference between revisions
mNo edit summary |
m (→Introduction) |
||
Line 13: | Line 13: | ||
See also: | See also: | ||
* [[workflow]] | * [[workflow]] (short overview article) | ||
* Various [[UML]] languages, [[UML activity diagram]]s in particular | * Various [[UML]] languages, [[UML activity diagram]]s in particular | ||
* [http://en.wikipedia.org/wiki/Event-driven_process_chain Event-driven process chains] (Wikipedia) | * [http://en.wikipedia.org/wiki/Event-driven_process_chain Event-driven process chains] (Wikipedia) | ||
* [http://en.wikipedia.org/wiki/YAWL YAWL (Yet Another Workflow Language) is a workflow language based on workflow pattern | |||
== History and versions == | == History and versions == |
Revision as of 13:01, 23 June 2010
Introduction
Business Process Modeling Notation (BPMN) is a graphical representation for specifying business processes in a workflow. BPMN 1.0 was developed by the Business Process Management Initiative (BPMI) and then was/is further developed by the Object Management Group (OMG)
“The Business Process Modeling Notation (BPMN) specification provides a graphical notation for specifying business processes in a Business Process Diagram (BPD). The objective of BPMN is to support business process management for both technical users and business users by providing a notation that is intuitive to business users yet able to represent complex process semantics. The BPMN specification also provides a mapping between the graphics of the notation to the underlying constructs of execution languages, particularly BPEL4WS. (Business Process Modeling Notation, Wikipedia, retrieved jan 6 2009).”
“PEL is an XML-based language for describing a business process in which most of the tasks represent interactions between the process and external Web services. The BPEL process itself is represented as a Web service, and is realized by a BPEL engine which executes the process description. BPMN is a standard set of diagramming conventions for describing business processes. It is designed to visualize a rich set of process flow semantics within a process and the communication between independent processes. It is intended to support capture of sufficient detail to allow it to be the source of an executable process description. Since BPEL is currently considered the most important standard for execution languages, a translation to BPEL is specified in the BPMN standard. By design there are some limitations on the process topologies that can be described in BPEL, so it is possible to represent processes in BPMN that cannot be mapped to BPEL.” (FAQ, retrieved 17:30, 22 June 2010 (UTC))
BPMN diagrams can be See also the Business Process Execution Language (BPEL), an executable XML language for business processes. Most BPMN tools, in particular BPMN 2.0 versions, can compile drawings into executable BPEL and other XML formats in addition. It seems that while a BPEL process can be represented using BPMN, some BPMN models cannot be represented using BPEL. An alternative to BPEL is XPDL (XML Process Definition Language) developed by the Workflow Management Coalition.
See also:
- workflow (short overview article)
- Various UML languages, UML activity diagrams in particular
- Event-driven process chains (Wikipedia)
- [http://en.wikipedia.org/wiki/YAWL YAWL (Yet Another Workflow Language) is a workflow language based on workflow pattern
History and versions
- BPMN 2.0 Beta (summer 2010)
- BPMN 2.0 RFP: Request for Proposals for version 2.0 of BPMN (2008,-)
- BPMN 1.1: OMG Specification, February, 2008
- BPMN 1.0: OMG Final Adopted Specification, February 6, 2006
- BPMN 1.0: May 3, 2004 Draft Specification
BPMN version 1.x
According to Wikipedia, BPEL has four categories of elements:
- Flow Objects
- Events, Activities, Gateways
- Connecting Objects
- Sequence Flow, Message Flow, Association
- Swimlanes
- Pool, Lane
- Artifacts (Artefacts)
- Data Object, Group, Annotation
BPMN.org divides the BPMN 2.0 notation graphics in six categories:
- Activities
- Events
- Gateways
- Connections
- Artifacts
- Swimlanes
A more difficult meta-model (i.e. an inofficial UML class diagram of BPMN was published by WSPER ("whisper").
BPMN version 2.0 and core elements
The new revision of BPMN, 2.0 has more than 100 graphical elements in its full set. Since BPMN is a very complex language it is structured in terms of extensibility layers.
The basic categories of BPMN 2.0 include flow objects, data, connecting objects, swimlanes and artifacts. From these elements, the draft specification then expands into layers that add specialized markers to these elements.
- Layer one
The core elements are grouped into three "packages": infrastructure (foundation?), common elements (to be used by layer two), and services (elements for modeling services and infrastructures).
- Layer two
defines extensions for three diagram types: process, choreography, and collaboration.
- Layer three
The third layer defines extensions for humans, data, activities, and conversations.
Let's now have a look at core elements
Flow objects
Flow objects define the behavior of a business process and include events, activities and gateways.
Activities
An activity can be generically described as work that an organization performs.
Events
Events represent something that "happens" during the course of a business process. An event will affect the flow of a process. An event is usually triggered by a cause and it will have an impact (result).
There are three kinds of events:
- Start
- Intermediate
- End
Gateways
Gateways represent decisions, forking and joining of flows.
Data
Data include five elements:
- Data Objects
- Data Inputs
- Data Outputs
- Data Stores
- Properties
Connecting objects
Connection of flow objects
- Sequence Flow
- Message Flow
- Association
- Data Association
Swimlanes and Pools
- Lanes
- Pools
Artifacts
provide additional information about the process
- Group
- Text Annotation
PBMN 2.0 diagrams
(draft)
Collaboration
A collaboration is a collection of participants shown as Pools, their interactions as shown by Message Flow, and may include Processes within the Pools and/or Choreographies between the Pools.
Process
A Process describes a sequence or flow of Activities in an organization with the objective of carrying out work. In BPMN a Process is a graph of flow elements, which are a set of activities, events, gateways, and sequence flow.
Conversations
Conversations define message exchanges between pools and are a simpler version of collaboration if we understood right.
Choreographies
Choreographies represent sets of tasks performed by participants. A Choreography a kind of process that focuses on how participants coordinate their interactions through the exchange of messages.
Examples
Model of a discussion
Model of surgery programming
The process model presented by Roja et al. (2008) shows at a high level abstraction the programmed surgical patient (PSP) process and the activities that are carried out when a patient is admitted into the hospital for the accomplishment of the surgical treatment of a disease that has been clinically diagnosed previously. This model is a result of a joint work between hospital and BPMN expert and it has been obtained through a reiterative and incremental method.
“The modelling of the programmed surgical patient process and its subprocesses has allowed to us to prepare an understandable model for the involved health professionals and make the communication of processes easier. Additionally, modelling allows early detection and correction of errors. This work is an essential previous step for further analysis and improvements in healthcare processes, including the adoption of information technology standards.” (Roja et al. (2008))
Tools
There seem to exist some free tools (none tested so far)
- Free (totally or somewhat)
- BPMN plugin for Eclipse. Made by Intalio.
- The tool can be download through the Eclipse IDE.
- Oryx, (Signavio) a project to create BPMN 2.0 diagrams, EPCs or Petri nets online. Free for academics.
- OMII-BPEL, Modelling, monitoring, executing scientific workflows with BPEL
- Jadex process. LGPL licence. “The Jadex Processes project provides modelling and execution facilities for workflows. Main focus is on graphical forms of process representation (e.g. the Business Process Modelling Notation - BPMN) and direct execution of modelled processes (i.e. without prior code generation).” ([1]). This is part of a larger project. Jadex is a Belief Desire Intention (BDI) reasoning engine that allows for programming intelligent software agents in XML and Java.
- Bizagi Process Modeler. Closed source freeware for BPMN 1.x (?).
- ARIS Express. Closed source freeware for BPMN 2/EPC. (Java-based, tested under Ubuntu 10, works - Daniel K. Schneider 10:43, 23 June 2010 (UTC))
- Free web tools
- Gliffy supports
- Commercial
- Intalo BPM, includes the interesting Social BPM that combines the BPM design tool with a social portal building framework.
This list is by no means complete, see for the moment:
- BPMN Implementors and Quotes (best link, at OMG)
- Tools (BPM forum, not very complete)
- Other tools
- BPMN 1.1 stencils for Visio and OmniGraffle
Bibliography and links
Links
- Overviews
- Business Process Modeling Notation (Wikipedia)
- Standards
- BPEL 2.0 (the principal format PBMN can export to)
- BPMN Web sites
- BPMN.org Information Home Page, e.g.:
- BPMN FAQ at pbmnforum.com
- BPM Research Website by Michael zur Muehlen (blog)
- BPMS Watch by Bruce Silver (blog)
- Other web sites
- Business Process Management Software (includes further links)
- BPM & EA Resource List at PBMfundamentals
- Process On The Web, the process executive
- Posters and cheat sheets
- BPMN 1.1 Poster
- BPMN 2.0 Poster (Printable A1 PDF for various languages)
- BPMN 1.x poster from Bizagi.
- BPMN 1.x CHEAT SHEET Reference Guide.ppt
- Introductions/tutorials BPMN 1.x
- Modeling Workflow Patterns through a Control-flow perspective using BPMN and the BPM Modeler BizAgi by Marcus Goetz, Institute of Applied Informatics and Formal Description Methods University Karlsruhe (TH).
- BPMN_Tutorial.pdf by Martin Owen and Jog Raj, Popkin Software
- BPMN and BPMN Video Guide at htisp.wikispaces.org
- [http://www.diveintobpm.org/laszlo-explorer/Pages/TrainingKit%20BPMN%201.1%20-%20Version%201.0.1.pdf
- Introductions/tutorials BPMN 2.x
- Slides by Robert Shapiro (Feb. 2010).
- Comparisons
- EPC vs. BPMN - the perfect flamewar by Sbastain Stein, Aris community.
- Examples
Bibliography
- White, Stephen A. (2004). Introduction to BPMN, IBM. (Also here.
- White, Stephen A. (2004). Mapping BPMN to BPEL Example, IBM PDF
- Silver, Bruce (2009), BPMN Method and Style, Cody-Cassidy Press, ISBN 0982368100 (author's book home page).
- Rojo, Marcial García; Elvira Rolón, Luis Calahorra, Felix Óscar García, Rosario Paloma Sánchez, Francisco Ruiz, Nieves Ballester, María Armenteros, Teresa Rodríguez, and Rafael Martín Espartero (2008). Implementation of the Business Process Modelling Notation (BPMN) in the modelling of anatomic pathology processes, Diagnostic Pathology, 3 (Suppl 1) p22. 10.1186/1746-1596-3-S1-S22.