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 BPMN Collaboration Models - Choreography Model and Conversation Model
Part 2 - More BPMN Collaboration Models
In Part 1 we have seen the various types of BPMN Process Models and also the Process Collaboration Model. In this article, we will focus on the other two types of models, Choreography Model and Conversation Model, and see how they can be used in conjunction with a Process Collaboration Model.The purpose of collaboration model is showing the interactions between several parties both internal and external to a business entities illustrating the collaborative activities between the parties. Apart from Process Collaboration Model, the other two types of collaboration models in BPMN 2.0 are:
- Choreography Model, and
- Conversation Model
Choreography Model
A Choreography Model is similar to a business process model which consists of flows of activities, events, and gateways. Instead of having normal activities, a choreography model shows choreography activities which represent interactions between the participating roles. Each choreography activity has two or more participants. Messages are also depicted in the model for each interactive activity.Unlike a Business Process Model where the process is an orchestration (centrally controlled) of the activities performed by the participating roles, there is no central controller responsible for the choreography activities. In other words, a Choreography Model represents a procedural contract of the interactions between the participating roles.
Figure 1: Example of Choreography Model - Policy Request Process |
In each of the choreography activity, messages are passed between the participants. An initiating message (white envelop) is send by the initiating participant of a choreography activity. A non-initiating message (black envelop) is returned by the other participant(s).
Rule: The sender in Choreography Activity must also be a participant in the immediate previous activity, as either a sender or receiver. This rule also applies to Choreography Activity immediately after a gateway. The sender participant on the first task is exempted from this rule.
A Choreography Model also supports the use of gateways and nested activity similar to a sub process in a Process Model. A nested Choreography activity may be expanded to show the full Choreography model. A parallel gateway is used to split and merge sequences in separate paths. Exclusive gateway is useful when there is a need to determine what message is to be sent next and/or who the recipient is next.
Figure 2: BPMN Choreography Model with nested activity and gateways |
Conversation Model
The Conversation Model is a simplified view of collaboration model. There are only three types of elements in a Conversation Model - pools, communication elements and the links between them. The communication element normally represents a business artefact such as "dispatch plan", "shipment schedule" or "Invoice". In short a Conversation Model shows the communications between participating roles providing an overarching view of the various communications within an end-to-end business process.
The Conversation model in Figure 3 is a representation of the communications or messages between the participating roles shown in the Choreography model in Figure 2. The Conversation model in this case depicts a overview of the overall communications between the parties. Nevertheless it does not shows the sequence of the communications as that shown in a Choreography model.
Conversation model also supports nested communications which is a collapsed view a complex interactions between the two participating roles.
Instead of using message flows, conversations are used replacing the message flows between the consignee and the other participants. Using a conversation model in a Process Collaboration model is useful to help simplify the view where there are many complex message flows. Conversations carry the information for coordinating message flows. Message keys (in brackets) can be included in the conversations defining the matching required between the messages and the process instances.
Figure 3: An Example of BPMN Conversation Model |
The Conversation model in Figure 3 is a representation of the communications or messages between the participating roles shown in the Choreography model in Figure 2. The Conversation model in this case depicts a overview of the overall communications between the parties. Nevertheless it does not shows the sequence of the communications as that shown in a Choreography model.
Conversation model also supports nested communications which is a collapsed view a complex interactions between the two participating roles.
Combining Conversation Model with Process Collaboration Model
Using the point of view of the consignee from the above models (Figure 2 and 3), the model below illustrates a combined model of Process Collaboration and Conversation.Figure 4: Combination of Collaboration Process and Conversation Model |
Instead of using message flows, conversations are used replacing the message flows between the consignee and the other participants. Using a conversation model in a Process Collaboration model is useful to help simplify the view where there are many complex message flows. Conversations carry the information for coordinating message flows. Message keys (in brackets) can be included in the conversations defining the matching required between the messages and the process instances.
No comments:
Post a Comment