13 September 2013

Process Patterns (Part 3) - Structural Patterns

This is Part 3 of a series of articles introducing the common process patterns depicted using BPMN 2.0 elements. From the basic patterns in Part 1, advanced branching and synchronization patterns in Part 2, the article looks at the structural process patterns.

Structural Process Patterns


The structural process patterns to cover in this article include:
  1. Arbitrary Cycles
  2. Implicit Termination
  3. Explicit Termination
  4. Milestone
  5. Cancel Task
  6. Cancel Case

Pattern 12 Arbitrary Cycles

Description
A point in a process model where one or more activities can be executed repeatedly.
Key BPMN 2.0 Elements
  • Task
  • Exclusive gateway
BPMN 2.0 Process Diagram

Example for Business Application
Not available


Pattern 13 Implicit Termination

Description
A given process instance should be terminated when there is nothing else to be done - meaning there is no remaining activity that are able to be done either now or at any time in the future.
Key BPMN 2.0 Elements
  • Task
  • End event
BPMN 2.0 Diagram

Example for Business Application
An end event is a needed for most BPMN process models except for embedded sub process.


Pattern 14 Explicit Termination

Description
This is the opposite of an implicit termination. A given process instance should terminate when it reaches a nominated state which is denoted by a specific end node. When this end node is reached, any remaining activity in the process instance is cancelled and the overall process instance is recorded as having completed successfully, regardless of whether there are any activities in progress or remaining to be executed.
Key BPMN 2.0 Elements
  • Task
  • Terminate event
BPMN 2.0 Diagram

Example for Business Application
Not available.


Pattern 15 Milestone

Description
An activity is only enabled when the process instance is in a specified state, i.e. a certain milestone has been reached which did not expire yet. If the process instance has progressed beyond the milestone check point, then the activity cannot be enabled now or at any future time in the process instance.
Key BPMN 2.0 Elements
  • Task
  • Event gateway
  • Intermediate event
BPMN 2.0 Diagram

Examples for Business Application
  • Withdraw order activity is only avalable if 2-day before planned delivery event is true.
  • Book flights, book car rental and book hotels activities are only available when invoice printed event is not true.


Pattern 16 Cancel Task

Description
An active activity is disabled (withdrawn).
Key BPMN 2.0 Elements
  • Task
  • Boundary interrupting event
BPMN 2.0 Diagram

Examples for Business Application
  • If a customer cancels a request for information, the corresponding activity is disabled. In other words, when a cancel request message is receive, the process customer request activity is disabled.

Pattern 17 Cancel Case

Description
A complete process instance is stopped and removed. This includes activities currently running, activities that may execute at future time and all sub processes. The process instance is recorded as having completed unsuccessfully.
Key BPMN 2.0 Elements
  • Sub process
  • Boundary interrupting event
  • Event sub process (if the boundary event is to be triggered from within the sub process)
  • Terminate end event or Cancel end event
BPMN 2.0 Diagram

Examples for Business Application
  • In a recruitment process, when an applicant withdraws his/her application, the process that handle the application is stopped and withdrawn.


What's next

Coming up in the next article Multi Instances & Deferred Choice Patterns using BPMN 2.0.


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