BPMN

The educational technology and digital learning wiki
Jump to navigation Jump to search

Draft

Introduction

Business Process Modeling Notation (BPMN) is a graphical representation for specifying business processes in a workflow. Business process modeling is an important part of enterprise architecture modeling. BPMN 1.0 was developed by the Business Process Management Initiative (BPMI) and then was/is further developed by the Object Management Group (OMG).

In this article we provide a short high-level overview, plus links and references. See the BPMN 1.2 tutorial and the BPMN 2 tutorial for more detailed information.

“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 translated (mostly) into Business Process Execution Language (BPEL), an executable XML language for business processes. Several commercial BPMN tools can compile diagrams 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:

History and versions

Timeline
  • BPMN 2.0 Beta 1 (summer 2010)
  • BPMN 1.2: January 2009
  • 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 1.x

The BPMN 1.x specification defines the notation and semantics of a Business Process Diagram language. This version does not specify any underlying (serialization) format.

The differences between BPMN 1.0, 1.1 and 1.2 are relatively minor.

  • BPMN codified the notation language
  • BPMN 1.1 includes an informal mapping to BPEL, i.e. the BPEL4WS 1.1 version
  • BPMN 1.2 did some cleanup

See BPMN 1.2 tutorial (in progress as of July 2010)

BPMN 2.0

The (future) BPMN version (in beta as of 2010) adds other modeling elements plus a layered specification. In addition, it provides a formal serialization format. We couldn't find any ETA for the final version, i.e. the final release can be month or years away. However, some companies already offer partial implementations .... - Daniel K. Schneider 11:52, 21 July 2010 (UTC)

See BPMN 2 tutorial (stub)

Criticisms

Based on expert's mapping of BPMN to the BWW representation model (Wand & Weber, 1995) - a construct developed to analyzse ontologies - Recker et al. (2006) derived nine propositions that demonstrate how some lack of ontological completeness and clarity in the BPMN 1.x notation may lead to problems. These propositions then were submitted to experts through an interview protocol. These propositions are grouped in four topics which we summarize below (including some quotations):

(1) Construct deficits:

  • P1 (critical) - no representation for state, stable state, unstable state, conceivable state space, state law, lawful state space, conceivable event space, and lawful event space. This may lead to lack of definiability and focus of state modeling, i.e. difficult to create business that rely on state and transformation laws
  • P2 - no representation of history. Will make recovery and reliability of inter-organizational interaction difficult.
  • P3 - no representation for system structure. E.g. will make it difficult to structure process models into constituent models

(2) Construct redundancies

  • P4 - Because a thing can be represented by either a Pool or a Lane, users will have difficulty understanding which of these constructs should be used.
  • P5 - “Because a transformation can be represented by the BPMN constructs Activity, Task, Collapsed Sub-Process, Expanded Sub-Process, Nested Sub-Process, and Transaction, users will get confused as to which construct is to be used when representing a transformation”
  • P6 - Users may confuse various types and sub-types of events

(3) Construct excess

  • P7 (critical) - “Because the BPMN constructs Link, Off-Page-Connector, Association Flow, Text Annotation, Group, Activity Looping, Multiple Instances, Normal Flow, Event (super type), and Gateway (including all Gateway Types) appear to have no real-world meaning, their use will cause understandability problems.”

(4) Construct overload

  • P8 (critical) - “Because the BPMN construct Lane maps to the BWW constructs thing, class, kind, system, subsystem, system composition, system environment, system decomposition, and level structure, users will be required to bring to bear extra model knowledge in order to understand which real-world concept is being modelled by the Lane construct. Consider, for example, a question whether a Lane in a BPMN model represents a specific organizational entity, an application system, or a set of entities such as a group of actors”
  • P9 (critical) - Similar concerns regarding the Pool construct: “... it is unclear whether a Pool stands for a single organizational entity, whether it is part of a super-ordinate entity, or whether it might be external to a modelled system”.

An “empirical investigation conducted through semi-structured interviews with BPM(N) experts, however, revealed that not all the theoretical predictions will constitute critical problems in process modelling practice” (p. 10). In particular, only P1, P7, P8 and P9 were identified as critical issues. P2, P4, P7 as somewhat limiting.

Wohed et al (2006) used Workflow Patterns from a collection of patterns developed for assessing control-flow, data and resource capabilities in the area of Process Aware Information Systems (PAISs) to examine the suitability of the Business Process Modelling Notation (BPMN) 1.0 for business process modelling. In the conclusion, the authors first state that “There are inherent difficulties in applying the Workflow Patterns Framework for assessing a language that does not have a commonly agreed-upon formal semantics nor an execution environment”. In other words, their analysis ought to be reconducted with the upcoming BPMN 2.0 version.

With respect to execution, mapping to BPEL is judged to be “only partial, leaving aside models with unstructured topologies as well as constructs such as OR-join and complex gateways. Moreover, since the mapping is described in prose, it is subject to interpretations”. However, BPMN 1.2 does include a more formal annex for mapping to BPEL.

With respect to expressive power “BPMN provides direct support for the majority of the control-flow patterns and for nearly half of the data patterns, while support for the resource patterns is scant”. In particular, “Workflow and Environment data patterns are not supported. Data interaction to and from a Multiple Instances task is not supported because any instance-specific data for a task or sub-process with a multiple instance marker can not be specified. Also support for the external data interaction patterns is limited.”. “BPMN's support for the Resource perspective is minimal. It is acknowledged in the specification (p. 22) that the modelling of organizational structures and resources is outside the scope of BPMN. However, the presence of the concepts Lane and Pool for representing parties and roles gives a contradictory impression.”

Wohed et al. also point out that many patterns have multiple representations, a remark also addressed by Recker et al (2006) and finally they found strong overlaps with UML activity diagrams.

In conclusion, BPMN 1.x may lack certain constructs that are needed to model typical workflows found in the workflow patterns literature and it may not to suitable to model large processes across organizations. In addition, here are usability issues due to both excess/redundancies of constructs and lack of precision due to overload of certain elements of the language. One of the biggest issues that may affect use of BPMN for educational workflows may be BPMN's weakness in both data and resource modeling. However, currently, our own experience with BPMN is much too limited in order to make any well informed claims. We also would like to remind that the upcoming BPMN 2.0 specification did address many issues raised. Firstly, the serialization issue may be solved with its own XML representation. Inter-organizational workflow can be modeled with conversations and choreographies, two new constructs that complete the "Swimlane" model which is now called a "collaboration diagram" - Daniel K. Schneider 18:09, 27 July 2010 (UTC).

Tools

There exist several free tools. The commercial versions of the (commercial) free diagramming tools often include an execution engine. It is not always obvious to understand exactly what version of BPMN is supported. Some vendors already provide tools that implement draft versions of BPMN 2.0.

Free (totally or somewhat)
  • Intalio|BPMS, claimed to be the world's most widely deployed Business Process Management System (BPMS). Designed around the open source Eclipse BPMN Modeler, Apache ODE BPEL engine, and Tempo. The free community edition runs under a TomCat server (Windows and Red Hat officially supported) and either Derby or MySQL enterprise server. The software includes a BPMN designer, a BPEL server and WS-Human Task Service.
  • 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. (We did not manage to install this, didn't find any installation instructions either ....)
  • 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 (?). Runs under Windows and requires .NET framework 2.0 (free) plus Visio 2003 or better for exporting features. In addition, academics can get a free version of the BizAgi BPM Suite, i.e. a server that can run a model. Documentation is good, see e.g. My first process. (Tested, works - Daniel K. Schneider)
  • Sketchpad BPMN is a tool for drawing and editing BPMN (Business Process Modeling Notation) diagrams. Sketchpad process models are serialized and stored as XPDL 2.1 files. Sketchpad was originally developed by Global 360 as Process Modeler Analyst Edition. (not tested)
Free web 2.0 (online) tools
  • Gliffy supports BPMN (version ?)
Commercial (not complete since edutechwiki is not about BPM ...)
  • Intalo BPM, includes the interesting Social BPM that combines the BPM design tool with a social portal building framework. Very cool, has the potential for use in education to implement learning design/web 2.0 combos.

This list is by no means complete, See also full versions of some freeware above (typically an execution engine) and the following links:

Other tools
  • BPMN 1.1 stencils for Visio and OmniGraffle by Frank Puhlmann and Alexander Großkopf.

Bibliography and links

Links

Overviews
Standards
  • BPMN 1.1 OMG Specification, February, 2008 (PDF 3,372K)
  • BPMN 1.0, OMG Final Adopted Specification, February 6, 2006 (PDF 2,968K)
  • BPEL 2.0 (the principal format PBMN can export to)
Official BPMN Web sites
Other BPM web sites
Posters and cheat sheets
Introductions/tutorials BPMN 1.x
Introductions/tutorials BPMN 2.x
Comparisons
Examples

Bibliography

  • Debevoise, Tom and Rick Geneva (2008). The Microguide to Process Modeling in BPMN, BookSurge Publishing, ISBN 1419693107 (alternatively, read the free spec or free tutorials, see above).
  • Grosskopf, A., Gero Decker, and Mathias Weske (2009). The process : business process modeling using BPMN. Tampa Fla.: Meghan-Kiffer Press. ISBN 0929652266 (high level overview/ easy to read according to reviewers). See also the book's website and the first author's home page
  • Recker, Jan C. and Indulska, Marta and Rosemann, Michael and Green, Peter (2006) How Good is BPMN Really? Insights from Theory and Practice. In: 14th European Conference on Information Systems, June 12-14, 2006, Goeteborg, Sweden. Abstract/PDF
  • 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.
  • Wand, Y. and R. Weber (1995). On the Deep Structure of Information Systems. Information Systems Journal, 5 (3), 203-223.
  • White, Stephen A. (2004). Mapping BPMN to BPEL Example, IBM PDF
  • White, Stephen & Derek Miers (2009 ??). BPMN Modeling and Reference Guide Understanding and Using BPMN, Lighthouse Pt, FL: Future Strategies Inc., ISBN-13: 978-0977752720
  • Wohed, Petia and van der Aalst, Wil M.P. and Dumas, Marlon and ter Hofstede, Arthur H.M. and Russell, Nick (2006) On the Suitability of BPMN for Business Process Modelling. In: 4th International Conference on Business Process Management, 5-7 September 2006, Vienna, Austria. Abstract/PDF Reprint - DOI: 10.1007/11841760_12