The OMG's BPMN Specification

Innovator for Business Analysts implements principles and elements of the Object Management Group's (OMG) "Business Process Model and Notation" (BPMN) for the configuration of models. It is essential that you have a basic knowledge of the OMG's UML 2 and BPMN specification to be able to customize these models in a targeted manner to suit your company or project.

Using BPMN in Innovator

Innovator for Business Analysts contains model templates with special profiles which implement the Object Management Group's (OMG) Business Process Model and Notation" (BPMN) standard. Model templates also contain profiles that implement the OMG's "Unified Modeling Language" (UML) standard, e.g. use cases and classes.

It is essential that you have a basic knowledge of the OMG's UML 2 and BPMN specification to be able to customize these models in a targeted manner to suit your company or project.

All essential BPMN specification aspects are addressed in this document; this is done to highlight the transfer of these constructs in the Innovator profiles.

You can find out how the BPMN specification of the OMG is structured and which base constructs are used in the BPMN meta model.

Structure

The OMG BPMN specification comprises of the document:

  • "Business Process Model and Notation (BPMN)" defines the MOF 2-compliant metamodel, as well as syntax and semantic for model elements.

These documents also directly affect BPMN:

  • "Object Constraint Language (OCL)" defines how restrictions are expressed in the other documents

It is essential to understand the "Superstructure" UML document to be able to configure profiles.

The most important concepts of the "Business Process Model and Notation (BPMN)" specification should be discussed briefly here. Extracts from the official "OMG Business Process Model and Notation (BPMN), V2.0.2" (OMG Document Number: formal/2013-12-09) specification will be used during the following explanations.

The following illustration shows the areas that make up the core BPMN standard and how they fit together. The items in the outer layers depend on those in the inner layers but not the other way round.

Figure: BPMN Layer Structure (in accordance with BPMN V2.0.2, Figure 8.1)

The three layers separated from each other in the highest level of abstraction can be differentiated from one another:

  • The first layer (the core itself) includes the most fundamental elements of BPMN.

    This layer is described in the "BPMN Core Structure" main chapter's four chapters (chapter 8 "BPMN Core Structure"):

    • "Infrastructure" (chapter 8.2)

      The BPMN Infrastructure package contains the "Definitions" class that almost all BPMN elements contain and their visibility and namespace are defined; it also contains the "Import" class that enables elements from other definitions or non-BPMN elements to be used.

    • "Foundation" (chapter 8.3)

      The Foundation package contains classes that are shared among other packages in the core.

      • The abstract "Base Element" superclass

      • The "Documentation" class, used to capture the text descriptions of a BPMN element,

      • The "Extensibility" class provides a set of extension elements,

      • The "External Relationship" class enables BPMN and non- BPMN artifacts to be related, e.g. also UML artifacts

      • The abstract superclass "Root Element" provides the life-cycle for BPMN element; concrete root elements are e.g. collaboration, process and choreography.

    • "Common Elements" (chapter 8.4)

      Common elements may be used in more than one BPMN model or type of diagram (process, collaboration, choreography), e.g.:

      • "Flow Element"

        This abstract superclass contains all elements that can appear in a process flow, i.e. flow nodes (e.g. activities, events and gateways), data objects, data associations and sequence flows.

      • "Events"

        An event is something that happens during the course of a process. These events affect the flow of the process.

      • "Gateways" branch and merge flows

        Gateways are used to control how the process flows through sequence flows.

      • "Message"

        The message element is used for specifying a message to be sent by a message event, send task or receive task.

      • "Resources"

        A resource is a way of executing an activity or letting a process run.

      • "Sequence Flow "

        A sequence flow is a directed relationship between flow nodes (task, subprocess, gateway, event).

    • "Services" (chapter 8.5)

      The service package contains the "Interface" class and the "Operation" class which defines messages or errors.

  • The layer above this concerns processes, collaborations and choreographies (see "7.2.1 Uses of BPMN").

    This layer is described in three main chapters:

    • "Collaboration" (chapter 9)

      A collaboration is collection of two or more processes working together; they have no central control and communicate using messages.

    • "Process" (chapter 10)

      A process is sequence or flow of activities in an organization; the aim of a process is to complete a certain task. It can be displayed in Innovator either horizontally or vertically.

    • "Choreography" (chapter 11)

      A choreography is a type of process, but differs in purpose and behavior from a standard BPMN process. It formalizes the way business participants coordinate their interactions. The focus is on the exchange of information (messages) between these participants.

      Innovator does not currently support the modeling of choreographies.

A UML class diagram in the BPMN standard shows how core BPMN elements depend on one another.

Figure: Class Diagram Showing Organization of Core BPMN Elements (BPMN V2.0.2, Figure 8.3)

Further Information

http://www.bpmn.org/