BPMN: An introduction to the standard

https://doi.org/10.1016/j.csi.2011.06.002Get rights and content

Abstract

The Business Process Model and Notation (BPMN) is the de-facto standard for representing in a very expressive graphical way the processes occurring in virtually every kind of organization one can think of, from cuisine recipes to the Nobel Prize assignment process, incident management, e-mail voting systems, travel booking procedures, to name a few. In this work, we give an overview of BPMN and we present what are the links with other well-known machineries such as BPEL and XPDL. We give an assessment of how the OMG's BPMN standard is perceived and used by practitioners in everyday business process modeling chores.

Research highlights

► In this paper we present the BPMN standard, introducing its application context, history, motivations and main constructs. ► We discuss the results we collected through a survey on BPMN usage and familiarity. ► We compare our results with other publicly available data (Internet, other surveys, forums, domain experts communities). ► Finally, in this work we present a real use scenario.

Introduction

In the last few years a clear need for a modeling language for business processes which could be expressive and formal enough but easily understandable also by final users and not only by domain experts faced out. At the present, the state-of-the-art in the field is represented by BPMN (Business Process Model and Notation) [1], the leading standard in the frame of business processes and workflow modeling languages. It is possible to identify three different application domains for modeling languages: pure description, simulation and execution of processes. In this work we will present an introduction to BPMN assessing its position with respect to the cited application fields and comparing it with other proposals.

Use cases descriptions and documentation of complex procedures are often very difficult to understand and error prone. Since a (more or less) clear picture depicting either a workflow or a business process is in most cases self-explaining, many users aim to enrich descriptions of processes with diagrams in order to convey the intended meaning associated to the process. Moreover, examining a graphical description of a process allows users to easily discover inconsistencies and/or differences in names or acronyms, infinite loops, non-terminating conditions and so forth. Using a formal graphical notation is the de-facto standard choice to express a representation of a process which should be syntactically valid (thus assuring the consistence with the represented process) and having the same meaning as the (usually, natural language based) textual description of the process.

Domain experts are also interested in finding ways of studying properties of processes as represented through some graphical notation in order to verify the correctness of their representation, thus checking – for example – the absence of interrupting conditions, deadlocks, infinite loops. Analysts, on the other side, are more interested in collecting data – especially about resources spent during the execution of a process – so that it is possible to check whether a process could be refined and optimized.

Finally, execution capabilities of a modeling language are of great interest of business process experts and developers. Purposes for translating a diagram into some machine readable standard language can be grouped into two main categories: sharing and execution. To share a diagram (keeping it editable from different users) across multiple domains and using many different technologies and softwares is seen as big challenge nowadays. Furthermore, the need to (semi-)automatically execute a process, often in distributed environment (like in the case of web services) is becoming more and more important.

Summarizing the argumentations we will develop in the following, it can be safely affirmed that BPMN can be used for all of these purposes, sometimes in conjunction with other languages. For descriptive purposes only, BPMN itself is probably the best choice, at the present time. For simulation purposes, BPMN can be put at work in conjunction with XPDL [2], while WS-BPEL [3] can be considered the right choice to translate BPMN diagrams into directly executable code. Clearly, one has to be aware what are the features of the cited languages and, in particular, what are the differences with BPMN, which will be highlighted in the following.

WS-BPEL defines a model and a grammar for describing the behavior of a business process based on interactions between the process and its partners. WS-BPEL also introduces rather extensive mechanisms for dealing with business exceptions and process faults. Moreover, WS-BPEL introduces a mechanism to define how individual or composite activities within a unit of work are to be compensated in cases where exceptions occur or a partner requests reversal [3]. The aims of WS-BPEL, along with the choice made by the Business Process Management Initiative during the early steps of BPMN definition to adopt WS-BPEL as the preferred serialization format for BPMN diagrams (even if WS-BPEL had many differences from BPMN 1.x and it is less expressive [4], [5], [6], [7], [8]), made the choice of WS-BPEL the best suitable one as execution language for BPMN diagrams, even if the situation changed with the advent of the second major release of BPMN in January 2011. WS-BPEL had too many limitations to be considered the final choice to serialize BPMN diagrams. For instance, it is not possible to represent with a unique WS-BPEL process one BPMN collaboration diagram. The richness of BPMN had no complete correspondence in WS-BPEL. Many graphical elements, in fact, cannot be represented in WS-BPEL and almost all attributes and properties linked to them (needed to give a precise meaning to the diagram elements – and thus to the diagram itself) had no representation in WS-BPEL. On the other side, the XML Process Definition Language (XPDL) is an XML format standardized by the Workflow Management Coalition (WfMC) aimed at the interchange business process definitions between different workflow products, i.e. between different modeling tools and management suites. XPDL defines an XML schema for specifying the declarative part of workflow/business process. XPDL is designed to exchange the process definition, both the graphics and the semantics of a workflow business process. XPDL is currently one of the best file format for exchange of BPMN diagrams; it has been designed specifically to store all aspects of a BPMN diagram. [2] This distinguishes XPDL from WS-BPEL which focuses exclusively on the executable aspects of the process. WS-BPEL, in fact, does not contain elements to represent the graphical aspects of a process diagram. Thus, XPDL has been widely adopted as a common standard interchange format for BPMN diagrams. Also in this case the scenario is going to change due to the publication of BPMN 2.0. Although XPDL is an XML-based language, it has been mostly used in two application domains: to check the correctness of a BPMN diagram and to simulate process execution. Nowadays there are some tools exploiting the complete BPMN support (of both the graphical representation and the associated properties) offered by XPDL to provide verification mechanisms for BPMN processes. Among others, the web-based solutions provided by Potsdam University1 and the BPI Community2 are the best free-to-use applications supporting this kind of validation. The validation is based on the XML serialization of BPMN diagram created using XPDL, while simulation is mostly limited to a sequence of steps in which one or more tokens pass through the process elements. For XPDL compliance/support check also [9] where a list of more than 70 current implementation is published and regularly updated. As we just mentioned, in January 2011 the second major release of BPMN was published. The additions introduced encompass – among other things – a native XML serialization for BPMN, making it completely independent from other languages, such as WS-BPELand XPDL. Nowadays they are still widely adopted and used and we can foresee they will still be used. In fact, the advent of the new version of BPMN forces many software vendors to change their tools to become compliant with BPMN 2.0 and this is a time-consuming and expensive activity. When the migration process will be finalized, we expect the spotlight will be quite completely turned on BPMN 2.0.

The XPDL 2.2 (published in 2010) effort is focused on only covering a subset of the Process Modeling Conformance class of the BPMN 2.0 specification. Thus the XPDL 2.2 schema will offer a serialization and interchange transport for BPMN 2.0: Process Diagrams, and Collaboration Diagrams\(Without Conversation) (i.e. what was possible in BPMN 1.2). The XPDL 2.2 schema is to be backward compatible with the XPDL 2.0 and XPDL 2.1 schemas. This backward compatibility also extends to XPDL 2.1 schema's capability to serialize BPMN 1.2 drawings.

The XPDL 3.0 (published in 2011) effort is focused on covering the complete BPMN 2.0 specification. Thus the XPDL 3.0 schema will offer a serialization and interchange transport for BPMN 2.0: Process Diagrams, Collaboration Diagrams, Conversation Diagrams, Choreography Diagrams (and all attributes).

Section snippets

Related works

Since the publication of the first version of the official BPMN specifications in 2006 many papers and books have been published. In this section we don't aim to provide an exhaustive list of them. Rather, we would suggest some interesting works which could help readers in having a better clue on BPMN and let them start practicing with such notation. Nonetheless, some cited works highlight criticisms of BPMN and compare it with other formalisms.

Starting with books the first title to be cited is

What is BPMN?

In this section we introduce the principles of BPMN, starting with an overview about workflows and business processes to better understand the need for a new modeling notation, which would be easily readable and understandable by everyone but semantically strong enough to let graphical diagrams drive the meaning, properties and execution information of a process. In the following part we introduce BPMN 2.0, the latest major version of BPMN, listing the main new characteristics and some

How BPMN has been received

Since BPMN is a large and feature-rich modeling language serving a wide array of different purposes (from high-level conceptual modeling to process code execution, as we have seen), it is valuable to collect the feedback of a non-negligible number of users (possibly from different communities), in order to get an insight on what are the relevant features and to decide upon possible corrections of the presented standard. We are aware of the fact that many other surveys have been recently

A real-world scenario

In this section we present a running example in which many assumptions and conclusions we delineated so far were applied in practice.

At the European Commission's Joint Research Centre, in the framework of a project running within the Institute for Environment and Sustainability [44], we were asked to interview as many colleagues as possible in order to create a repository of common procedures, stressing on data acquisition, creation, modification and publication processes.

Some preliminary work

Conclusions

We have presented a high-level overview of the OMG's BPMN standard, focusing our attention to its relationships with other business process modeling tools and assessing how such standard has been perceived and effectively deployed by practitioners. First we introduced the basic concepts of workflow modeling and business process in order to position BPMN in the right context. Then we went through the history of the specifications from the beginning until the latest major version published in

Michele Chinosi has a PhD in Computer Science with a thesis entitled: “Representing Business Processes: Conceptual Model and Design Methodology”. He is doing research on dynamic workflows modeling and composition for distributed geoprocessing at the European Commission Joint Research Centre (Italy), where his focus is on how to: define scenarios for multidisciplinary interoperability; identify connectivity, interoperability, sharing obstacles and user requirements; investigate advanced service

References (47)

  • M. zur Muehlen et al.

    Modeling languages for business processes and business rules: a representational analysis

    Inf. Syst.

    (2010)
  • H.F. Fernández et al.

    SBPMN — an easier business process modeling notation for business users

    Comp. Stand. Interfaces

    (2010)
  • OMG

    Business process model and notation (BPMN 2.0), formal/2011-01-03, OMG

  • WfMC

    XML process definition language (XPDL 2.1), WFMC-TC-1025, WfMC

  • OASIS

    Business process execution language (WS-BPEL 2.0), wsbpel-v2.0-OS, OASIS

  • J. Recker et al.

    On the translation between BPMN and BPEL: conceptual mismatch between process modeling Languages

  • P. Wohed et al.

    Analysis of Web Services Composition Languages: The Case of BPEL4WS, volume 2813/2003 of LNCS

    (2003)
  • W.M. van der Aalst et al.

    Translating workflow nets to BPEL4WS, Technical Report BPM-05-16, BPM Center

  • C. Ouyang et al.

    From business process models to process-oriented software systems: the BPMN to BPEL way, Technical Report BPM-06-27, BPM Center

  • C. Ouyang et al.

    Translating BPMN to BPEL, Technical Report BPM-06-02, BPM Center

  • WfMC

    XPDL implementations

  • S. White et al.

    BPMN Modeling and Reference Guide: Understanding and Using BPMN

    (2008)
  • B. Silver

    BPMN Method and Style: a Levels-based Methodology for BPM Process Modeling and Improvement Using BPMN 2.0

    (2009)
  • S.A. White

    Process modeling notations and workflow patterns

  • W.M.P. van der Aalst et al.

    Workflow patterns

    Distributed and Parallel Databases

    (2003)
  • R. Shapiro et al.

    BPMN 2.0 Handbook

    (2010)
  • A. Grosskopf et al.

    The Process: Business Process Modeling using BPMN

    (2009)
  • K. Swenson et al.

    Mastering the Unpredictable: How Adaptive Case Management Will Revolutionize the Way That Knowledge Workers Get Things Done

    (2010)
  • W.M. van der Aalst et al.

    Business process management: a survey

  • H. Mili et al.

    Business process modeling languages: sorting through the alphabet soup

  • A. Lonjon

    Business process modeling and standardization, Technical Report, MEGA

  • Cited by (486)

    View all citing articles on Scopus

    1. Download : Download high-res image (38KB)
    2. Download : Download full-size image
    Michele Chinosi has a PhD in Computer Science with a thesis entitled: “Representing Business Processes: Conceptual Model and Design Methodology”. He is doing research on dynamic workflows modeling and composition for distributed geoprocessing at the European Commission Joint Research Centre (Italy), where his focus is on how to: define scenarios for multidisciplinary interoperability; identify connectivity, interoperability, sharing obstacles and user requirements; investigate advanced service chaining/orchestration methods for distributed workflows. He contributed to the BPMN 2.0 Finalization Task Force. He published his works in: BPMN 2.0 Handbook (2010), BPMN & Workflow Handbook (2009), JRPIT (2009), and BPMN 2009 Workshop at CEC09. http://bpex.blogspot.com.

    1. Download : Download high-res image (31KB)
    2. Download : Download full-size image
    Alberto Trombetta is an Assistant Professor at the Department of Computer Science and Communication of Insubria University at Varese, Italy. He holds a PhD in Computer Science from the University of Turin, Italy. His main research interests are (i) modeling and design techniques of business processes and (ii) security and privacy issues of large, data-intensive distributed applications.

    View full text