03 September 2013

BPMN 2.0 Models (Part 1) - Process Models and Process Collaboration Model

Apart from the Collaborative Process model that is commonly used in business process modelling, BPMN 2.0 also introduces other types of models - Choreography model and Conversation model. This paper discusses the different types of models and how they can be used to compliment each other.

If you are not sure about the terms process, process definition, process model or workflow, suggest reading the article "Process, Process Model, Process Instance and Workflow?" first before continuing with this article.

Part 1 - Process Models and Process Collaboration Model
Part 2 - More Collaboration Models - Choreography Model and Conversation Model


Part 1 - Process Models and Process Collaboration Model

BPMN 2.0 covers three basis types of models that can be included in a end-to-end BPMN model for a wide variety of audience. These are Process (orchestration) models and Collaboration models. Part 1 covers the various types of BPMN Process Models and the commonly used Process Collaboration Model.

BPMN Business Process Models

In BPMN 2.0, a business process model can be represented as:
  • Private non-executable (internal) business process;
  • Private executable (internal) business process; or
  • Public process

    Public Business Process Model

    Let starts with the public business process model. The purpose of a public business process model is for an organisation to share its business process with limited view only showing the touch points with respective external entities the business is sharing the model with.

    public business process model is therefore a representation of interactions between an internal business process and participants outside that process. Internal activities of the private business process not having any interaction with the outside participants are not shown in this type of model. In short, its aim is to show only the sequence of message flows of the private business process model with the other participants. Within the internal business process, the only types of activities shown are send message and receive message.

    Figure 1: BPMN Public Business Process Model - Request Insurance Policy


    Here is another public business process model using the recruitment process of a business as an example. 

    Figure 2: BPMN Public Business Process Model - Recruitment Process

    A BPMN Public Business Process Model can be used as part of the discovery for developing service level agreement in outsourcing of works and/or interface design in a B2B integration.

    Private (Internal) Business Process Model

    As the name implies, a private business process model is a representation of business process within the boundaries of the entity modeled. A private business process is also known as workflow. BPM process under BPMS domain, and service orchestration under Web services / SOA domain.

    A private business process model can be either an executable process model or a non-executable process model. Another key observation of a private process is that it only has a pool shown in the process model or only an active pool in the process model. Depending on the tool, an embedded sub process may be shown as a separate pool in the same process model.

    Private Non-Executable Business Process Model
    A non executable process model is a process model developed for the purpose of process documentation, i.e defining the behaviour of activities within a business process at a level of detail determined by the process modeler.

    Figure 3: BPMN Private Non-Executable Business Process Model - Recruitment Process

    Revisit Figure 2 (a public business process model) and compare it to Figure 3 which shows the same recruitment process as a non-executable private business process model. Internal activities of the private business process model (Figure 3) not having interactions with other participants are not included in the public business process model in Figure 2.

    Private Executable Business Process Model
    An executable process model is a process model developed specifically for process automation, i.e. the model is to be deployed and run on a BPMN process engine. Consequently an executable process model must include the required details (information needed for execution) and conform to the syntax and semantics of the BPMN 2.0 specification.

    Note: Most BPMSs include a BPMN process engine for executing a BPMN executable process model.

    Figure 4: BPMN Private Executable Business Process Model

    The "point of view" is critical when working with an executable business process model. The article of BPMN Process Model - Descriptive, Analytic (Operational) to Executable illustrates in more detail on developing of non executable process model to an executable process model. It also illustrates the importance of the "point of view" concept in process modelling, particularly for an executable process model.

    BPMN Collaboration Models

    A process diagram is commonly used to shows the interaction between several parties both internal and external to a business entities illustrating the collaborative activities between the parties. There are three types of collaboration models in BPMN 2.0:
    • Process Collaboration Model  
    • Conversation Model
    • Choreography Model
    Although each of these models can be done as separate models, it is also possible to combine a Collaborative Process Model with a Conversation Model in a diagram.

    Rule: A collaboration model always have two of more participants or participating roles from a role based view.

    Process Collaboration Model

    Process Collaboration Model is also known as Collaborative Process Model. A Process Collaboration Model normally shows multiples pools representing the different processes performed by the many participating roles. Message flows represent the interactions between these processes. Each of the pool may shows the activities of the respective process hence a white box process collaboration diagram (Figure 5).


    Figure 5: Example of Process Collaboration Model (White Box)

    The activities in the pools of the processes may be hidden (not shown) hence a black box process collaboration model (Figure 6).

    Figure 6: Example of Process Collaboration Model (Black Box)

    Apart from the internal activities of the pool, the other key difference between the two approaches is that with the sequence flows of activities depicted in a white box model, the sequence of the message flows is well defined. On the other hand, there is nothing in a black box process collaboration model binding the sequence of the message flows.

    Conclusion

    There are four main types of models in BPMN that could be used for process modelling. A Private Business Process Model can be either non-executable or executable. A BPMN executable process model is always a private process model. A BPMN Public Business Process Model serves as a sharing view between business partners illustrating only agreed interactions between the parties. It can be used for illustrating required service level requirements from outsourced business services or as a basis for developing interface design in B2B scenario.

    A Process Collaboration Model is very similar to the Public Process Model with the key difference that it may also shows the internal activities for each of the entities represented.

    Continue to Part 2 - More Collaboration Models.