BPMN
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 technical information.
Let's have a look at a few definitions found in the literature and on the web:
“The Business Process Modelling Notation (BPMN) is a standard notation for capturing business processes, especially at the level of domain analysis and high-level systems design. The notation inherits and combines elements from a number of previously proposed notations for business process modelling, including the XML Process Definition Language (XPDL) and the Activity Diagrams component of the Unified Modelling Notation (UML). BPMN process models are composed of: (i) activity nodes, denoting business events or items of work performed by humans or by software applications and (ii) control nodes capturing the flow of control between activities. Activity nodes and control nodes can be connected by means of a flow relation in almost arbitrary ways.” (Diijkman et al., 2008).
“Business process models (BPM) are graphical representation of current or to-be business processes in an organisation. They play an important role not only in the field of business process management but also as an artifact in the analysis stage of the software development cycle. Often domain experts, business analysts and information system developers use graphical BPM when communicating with each others. The models help to bridge the well-known "language-barrier" between domain and IT-experts.” (Gruhn and Laue, 2009).
“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).”
BPMN 1.2 diagrams don't have a formal XML serialization, BPMN 2 do. Often, BPMN 1.2 diagrams can be translated into Business Process Execution Language (BPEL), an executable XML language for business processes. It seems that while a BPEL process can be represented using BPMN, some BPMN models cannot be represented using BPEL. “BPEL 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))
Some BPMN tools can compile diagrams into other XML formats. An alternative to BPEL is XPDL (XML Process Definition Language) developed by the Workflow Management Coalition. As we mentioned before, BPMN 2 is in principle an executable format, although we don't think that it is complete. E.g. we do not understand how it could represent all the information that would be needed for a "single click solution".
See also:
- BPMN 1.2 tutorial (for a technical overview)
- BPMN 2 tutorial (not yet written ...)
- BPMN and BPMS software
- Workflow and Business process modeling (short overview articles)
- BPEL, the most popular process execution language for BPMN models.
Other loosely related subjects:
- Various UML languages, UML activity diagrams in particular
- Event-driven process chains (Wikipedia)
- YAWL (Yet Another Workflow Language) is a workflow language based on workflow patterns
- Simple Conceptual Unified Flow Language (SCUFL) is the notation and execution language adopted by the taverna workbench (e-science platform).
History and versions
- Timeline
- BPMN 2.0: January 2011
- 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)
BPMN Anatomy
BPMN has three main components: flow objects, connecting objects, and artifacts. Read BPMN 1.2 tutorial for more details.
Flow Objects
Activities
- Tasks
- Sub-process
- Transaction
- Call Activity
Gateways
Events
Connecting Objects
Sequence Flows
Message Flows
Associations
Artifacts
Data objects
- Data inputs
- Data outputs
- Data collections
Annotations
Groups
Research about BPMN use and criticisms
Who uses BPMN
BPMN is probably today's most widespread PBM workflow and collaboration notation language. (Gruhn and Laue, 2009). According to Recker (2010), “The Business Process Modeling Notation is an increasingly important standard for process modeling and has enjoyed high levels of attention in business practice.”
According to Recker (2010), “A growing body of research has been conducted - and continues to do so [...]. For instance, research has been published that examines BPMN's capacity to support workflow technology and domain representations (Recker et al., 2007b), to facilitate semantic script analysis (Dijkman et al., 2008), and how to generate process (Ouyang et al., 2008a) and software code (Ouyang et al., 2008b) from BPMN. The fundamental question of how BPMN is actually being used, however, has not yet been fully examined. In fact, only a few studies have recently been published that begin to shed light into actual application and usage patterns concerning BPMN, mostly in the form of case studies (e.g., Recker et al., 2007a, Recker et al., 2006, zur Muehlen and Ho, 2008)”
The Recker (2010) meta-study points out that “End users mostly apply BPMN for purposes similar to what analysts did ten, twenty years ago with flowcharting techniques - they want to describe their operations in simple, graphical terms. The process modeling efforts in most organizations at this stage are simply not at such an advanced or mature stage where they could fully benefit from the full expressiveness of BPMN”. A corollary is that “the large number of autodidacts and the small share of adequately trained BPMN modelers imply a dearth of advanced BPMN process modeling skills. Such skills, however, are key to ensuring quality and overall success of BPM initiatives.”. Therefore, the authors argue that both education and continuous training is a critical issue.
Since most vendors do not support the full set of BPMN constructs, Recker (2010) the suggests “that tool vendors should or could rely more on empirical information about BPMN use when having to make trade-off decisions in BPMN support.”
Expressive power and consistency
Dijkman et al (2008) argue that “BPMN standard specification is relatively detailed when it comes to specifying syntactic constraints on BPMN models, but it is unsystematic and sometimes inconsistent when it comes to defining their semantics.”. Recker (2010) asks “the question whether a highly expressive but also very complex notation is a desirable result of a standardization process. More than 120 people participated in more than 120 interactions as part of the development effort that went into BPMN 1.0. Unfortunately, very little effort was dedicated to understanding the end user perspective of standards making.”
Based on expert's mapping of BPMN to the BWW representation model (Wand & Weber, 1995) - a construct developed to analyze 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 defineability 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.
Usability
Besides criticism that relate to construct excess and overload as in the Recker et al., (2006) study we introduced above, there is are other usability issues: How easy is it to learn understanding BPMN (and other language) diagrams, and how difficult is it to be learn creating a model.
Since BPMN and other visual design languages like UML allow for many different solutions to a given problem, we also have to figure out what minimal design guidelines are needed. According to Gruhn and Laue (2009), “there are several good guidelines on how to create BPM that are correct and understandable (Ambler, 2003; Becker et al. 2000; Mendling et al., 2008) as well as useful compilations of common patterns for bad modelling (Koehler and Vanhatalo, 2007; Smith, 2008). However, there is not much related work on actually identifying understandability problems in existing models. As already mentioned, most work on formal analysis of business process models focus on the correct behaviour of the model.”
Gruhn and Laue (2009) make several suggestions to reduce the complexity of models, e.g.:
- A user tends to understand visual models by identifying smaller submodels and connecting these later. Therefore, the cognitive load can be reduced by eliminating unnecessary sequence flows from the mental model that the reader has to construct.
- Unnecessary inclusive (OR) Gateways should be removed since they are difficult to understand. In many cases they can be replaced by parallel (AND) and default/exclusive (XOR) gateways.
- Sequence flows often can be simplified, e.g. elements that occur in all parallel paths can be moved outside after the parallel gateway.
Summary
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, there are usability issues both due to excess/redundancies of constructs and lack of precision due to overload of certain elements of the language. Usability can be approved when users are trained to adopt good practice, e.g. learn to aim for the most simple solution.
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).
BPMN in education
PBMN is mentioned in the literature about educational design languages as an alternative to specifically developed languages. However, as of 2012, there don't seem to be many in-depth investigations about its potential.
Adesina and Molloy (2012) present a Virtual Learning Process Environment (VLPE) based on the Business Process Management (BPM) conceptual framework, where course designers use the BPMN notational design language. Since a BPN system implements workflows, it allows “behavioural learning processes of the cohort of students – right from the inception of the teaching and learning process – to be continuously monitored and analysed until completion” (page 429). Julien DaCosta presented a master thesis in Feb 2014 about the educational use of BPMN (should be online sometimes soon).
Software tools
Bibliography and links
Links
- Overviews
- Business Process Modeling Notation (Wikipedia)
- Standards
- BPMN v2.0 official standard
- BPMN 1.1 OMG Specification, February, 2008 (PDF 3,372K)
- BPMN 1.0, OMG Final Adopted Specification, February 6, 2006 (PDF 2,968K)
- Business Process definition Metamodel. A OMG metamodel definition languages that will allow to define languages like BPMN as metamodel
- BPEL 2.0 (the principal format PBMN can export to)
- Official BPMN Web sites
- BPMN.org Information Home Page, e.g.:
- Other BPM web sites
- Q-BPM. General-purpose BPM wiki with good introductions on various subjects.
- BPMN FAQ at pbmnforum.com
- BPM Research Website by Michael zur Muehlen (blog)
- BPMS Watch by Bruce Silver (blog)
- BPMN info (blog, quote: "world's sexiest process models")
- Business Process Management Software (includes further links)
- BPM & EA Resource List at PBMfundamentals
- Process On The Web, the process executive
- Things BPMN - Vishal's BPM corner (VP Intalio as of July 2010, the last posting was on May 2009).
- BPMN Corner (Uni Potsdam)
- Posters and cheat sheets
- BPMN 1.1 Poster
- BPMN 2.0 Poster (Printable A1 PDF for various languages)
- BPMN 2.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 2.0 Virtual Roundtable Interview A 2008 interview with three players. Can be used as "getting an idea of it" tutorial.
- BPMN_Tutorial.pdf by Martin Owen and Jog Raj, Popkin Software
- BPMN and BPMN Video Guide at htisp.wikispaces.org
- Dive into BPMN Nice BPMN in 10 minutes tutorial (takes longer, but has some nice animations explaining token flow)
- BPMN by example and BPMN Tutorial/Overview. By Bizagi (a BPMN vendor that produces a free modeling tool)
- Introductions/tutorials BPMN 2.x
- Slides by Robert Shapiro (Feb. 2010).
- Comparisons
- EPC vs. BPMN - the perfect flamewar by Sbastain Stein, Aris community.
- Examples
- Bizagi templates. Include good design documents.
- BPMN community (example models and tutorials, by default under a Creative Commons Attribution-Share Alike 3.0 License)
- Search google images for "BPMN 2.0"
- BPMN 2.0 Wimmelbild
- Conservation Space (Open Source Application Design and Development by and for the Conservation Community), e.g. see Research
Bibliography
- Adesina, Ayodeji and Derek Molloy (2012). Virtual Learning Process Environment: Cohort Analytics for learning and learning processes, International Journal of Social and Human Sciences 6, 429-438. PDF
- Adesina, Ayodeji and Derek Molloy (2012). Capturing And Monitoring Of Learning Process Through A Business Process Management (Bpm) Framework, 3rd International Symposium for Engineering Education, 2010, University College Cork, Ireland PDF
- Adesina, Ayodeji and Derek Molloy (2012). Virtual Learning Environments Versus Virtual Learning Process Environments, IADIS e-Learning 2012 (EL 2012) Conference, Accepted for Oral Presentation, Lisbon, Portugal, July 2012
- Becker. J; M. Rosemann, and C. v. Uthmann. (2000) Guidelines of business process modeling. In Business Process Management, Models, Techniques, and Empirical Studies, pages 30-49, London, UK, 2000. Springer-Verlag.
- 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).
- Dijkman, R. M., Dumas, M. & Ouyang, C. (2008) Semantics and Analysis of Business Process Models in BPMN. Information and Software Technology 50 (12). doi:10.1016/j.infsof.2008.02.006 - ACM Abstract
- Dumas, M., La Rosa, M., Mendling, J., Reijers, H. (2013). Fundamentals of Business Process Management, Springer. announcement
- 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
- Gruhn, Volker; Ralf Laue (2009). "Reducing the cognitive complexity of business process models," Cognitive Informatics, IEEE International Conference on, pp. 339-345, 2009 8th IEEE International Conference on Cognitive Informatics, 2009 http://doi.ieeecomputersociety.org/10.1109/COGINF.2009.5250717 (Access restricted) - PrePrint
- Korherr, Birgitt (2008), BPM, Language, goals and variabilities, PHD Thesis. PDF
- Mendling. J, H. A. Reijers, and W. M. van der Aalst (2008). Seven process modeling guidelines (7pmg). Technical Report QUT ePrints, Report 12340, Queensland University of Technology.
- Mendling. J, H. A. Reijers, and J. Cardoso. (2007). What makes process models understandable? In G. Alonso, P. Dadam, and M. Rosemann, editors, BPM, volume 4714 of Lecture Notes in Computer Science, pages 48-63. Springer.
- Ouyang, C., Dumas, M., Ter Hofstede, A. H. M. & Van Der Aalst, W. M. P. (2008a) Pattern-based Translation of BPMN Process Models to BPEL Web Services. International Journal of Web Services Research, 5, 42-61
- Ouyang, C., Van Der Aalst, W. M. P., Dumas, M., Ter Hofstede, A. H. M. & Mendling, J. (2008b) From Business Process Models to Process-Oriented Software Systems. ACM Transactions on Software Engineering Methodology
- 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
- Recker, J., Indulska, M. & Green, P. (2007a) Extending Representational Analysis: BPMN User and Developer Perspectives. IN Alonso, G., Dadam, P. & Rosemann, M. (Eds.) Business Process Management - BPM 2007. Brisbane, Australia, Springer.
- Recker, J. & Rosemann, M. (2007b) Understanding the Process of Constructing Scales Inventories in the Process Modelling Domain. IN Oesterle, H., Schelp, J. & Winter, R. (Eds.) 15th European Conference on Information Systems. St. Gallen, Switzerland, University of St. Gallen.
- Recker, Jan C. (2010) Opportunities and constraints : the current struggle with BPMN. Business Process Management Journal, 16(1). pp. 181-201. Abstract/PDF Reprint
- 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.
- Silver, Bruce (2009), BPMN Method and Style, Cody-Cassidy Press, ISBN 0982368100 (author's book home page).
- Smith, G (2008). Improving process model quality to drive BPM project success. http://www.bpm.com/improving-process-model-quality-to-drive-bpm-project-success.html, , retrieved 14:34, 29 July 2010 (UTC).
- 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 A. (2004). Introduction to BPMN, IBM. (Also here.
- 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
- Zimmermann, B. & Döhring, M (2011). Patterns for Flexible BPMN Workflows. In 16th European Conference on Pattern Languages of Programs (Irsee). Irsee
- Zur Muehlen, M. (2008a) Class Notes: BPM Research and Education - A Little Knowledge is a Dangerous Thing. BPTrends, 5, 1-5.
- Zur Muehlen, M. (2008b) Class Notes: BPM Research and Education - Evidence-Based Research - What We Know, What We Donât and Why We Should Find Out. BPTrends, 5, 1-6.
- Zur Muehlen, M. & HO, D. T.-Y. (2008) Service Process Innovation: A Case Study of BPMN in Practice. IN SPRAGUE JR, R. H. (Ed.) 41th Annual Hawaii International Conference on System Sciences. Waikoloa, Hawaii, IEEE.
- Zur Muehlen, M. & Recker, J. (2008) How Much Language is Enough? Theoretical and Practical Use of the Business Process Modeling Notation. In Léonard, M. & Bellahsène, Z. (Eds.) Advanced nformation Systems Engineering - CAiSE 2008. Montpellier, France, Springer.
- Zur Muehlen, M., Recker, J. & Indulska, M. (2007) Sometimes Less is More: Are Process Modeling Languages Overly Complex? IN Taveter, K. & Gasevic, D. (Eds.) 11th International IEEE EDOC Conference Workshop. Baltimore, Maryland, IEEE.