15 September 2013

Process Patterns (Part 4) - Multi Instances & Deferred Choice Patterns

This is Part 4 of a series of articles introducing the common process patterns depicted using BPMN 2.0 elements. It is the last part covering common patterns on multi instances process patterns and deferred choice pattern. The less common process patterns are not covered in the series.

Multi Instances & Deferred Choice Process Patterns


The structural process patterns to cover in this article include:
  1. Multiple Instances with Priori Design-Time Knowledge
  2. Multiple Instances with Priori Runtime Knowledge
  3. Multiple Instances without Synchronization
  4. Sequential Execution without A Priori Design Time Knowledge
  5. Deferred Choice

Pattern 18 Multiple Instances with Priori Design-Time Knowledge

Description
For a given process instance, multiple instances of an activity are created. The number of instances required is known at design time. Once initiated, these instances are independent of each other and run concurrently. Subsequent activities can only be triggered after the instances are synchronized at their completion.
Key BPMN 2.0 Elements
  • Task - Parallel Multi Instance
BPMN 2.0 Process Diagram

Example for Business Application
Not available


Pattern 19 Multiple Instances with Priori Runtime Knowledge

Description
For a given process instance, multiple instances of an activity are created. The number of instances depends on runtime factors, including state data, resource availability and inter-process communications. Once initiated, these instances are independent of each other and run concurrently. Subsequent activities can only be triggered after the instances are synchronized at their completion.
Key BPMN 2.0 Elements
  • Task - Parallel Multi Instance
BPMN 2.0 Diagram
Example for Business Application
Not available.


Pattern 20 Multiple Instances without Synchronization

Description
For a given process instance, multiple instances of an activity are initiated. These instances are independent of each other and run concurrently. There is no requirement to synchronize them upon completion. Assumption: In the BPMN diagram below, it is assumed that the number of instances is defined at design time.
Key BPMN 2.0 Elements
  • Task - Parallel Multi Instance
BPMN 2.0 Diagram
Example for Business Application
Not available.


Pattern P21 Sequential Execution without A Priori Design Time Knowledge / Interleaved Parallel Routing

Description
A a set of activities is executed sequentially in an order that is decided during the process instance run time. No two activities of this set are active at the same point in time. The activity instances do not interleave, and they are not executed in parallel.
Key BPMN 2.0 Elements
  • Task
  • Sub process - Ad-hoc
BPMN 2.0 Diagram
Example for Business Application
Not available


Pattern 22 Deferred Choice

Description
A point in a process where one of several control flows is chosen based on interaction with the operating environment. Prior to the decision, all flows represent possible future courses of action. The decision is made by initiating the first activity in one of the flows i.e. there is no explicit choice but rather a race between different flows. After the decision is made, execution alternatives in other flows are withdrawn.
Key BPMN 2.0 Elements
  • Task
  • Eventgateway
  • Intermediate event
BPMN 2.0 Diagram
Examples for Business Application
  • In a resolve complaint process, there are two possible activities - contact customer activity and escalate to manager activity. The contact customer activity can be immediately initiated by a service team member. However, the escalate to manager activity is only made available 48 hours after the process instance commences. Once one of these activities is initiated, the other is withdrawn.


Conclusion

This ends the series of implementation common process patterns using BPMN 2.0 elements. In most cases, the task element in the BPMN diagrams can be replaced with sub process or call activity. There are other more complex but less common workflow patterns not covered in the four parts.

Reminder
Even when two business processes share the same sets of process patterns, they are NOT the same business process. They are two business processes - each with its own objective and outcome.



References

  1. W.M.P. van der Aalst, A.H.M. ter Hofstede, B. Kiepuszewski and A.P. Barros. (2003) Workflow Patterns
  2. N. Russell, A.H.M. ter Hofstede, W.M.P. van der Aalst, and N. Mulyar. (2006) Workflow Control-Flow Patterns: A Revised View. BPM Center Report BPM-06-22, BPMcenter.org