Process Patterns and the P4

The process community has taken a similar approach by identifying and codifying its own set of common problems. The article “Workflow Patterns” by van der Aalst, ter Hofstede, Kiepuszewski, and Barrios—a group referred to in this chapter as the “Process Four,” or P4—lists and describes 20 patterns specific to processes.[*] The P4 catalog is a comprehensive account of patterns for process control flow. The benefit of control flow patterns is to help the process designer determine different ways to assemble activities (for example, how to implement conditional logic based on a deferred choice).

Whereas GoF patterns are documented as object models and code recipes, P4 patterns are inherently spatial and visual: a process pattern is a cluster, or constellation, of process activities arranged in just the right way to solve a difficult problem. The process patterns read like a wish list for a process notational language. Some are obvious (such as support for a sequence of activities); others are exotic (for example, multiple instances of an activity where the number of instances is not known even at runtime).

Note

Animated demonstrations of the patterns are available at the P4’s Patterns website: http://www.workflowpatterns.com.

This chapter is a reference guide to the 20 P4 patterns; it discusses each pattern’s intent, alternative names, motivation, implementation details, and related patterns. The patterns are grouped into six main categories:

  • Basic patterns

  • Advanced branch and join patterns

  • Structural patterns

  • Multiple instances patterns

  • State-based patterns

  • Cancellation patterns

After the patterns, the chapter covers YAWL, a language proposed by the P4 to support all the patterns; provides a few patterns for areas beyond mere control flow; and concludes with a few coding recommendations.



[*] W. M. P. van der Aalst, A. H. M ter Hofstede, B. Kiepuszewski, and A. P. Barrios, “Workflow Patterns,” Technical report, Eindhoven University of Technology, Eindhoven, 2003, Distributed and Parallel Databases, 14(1):5-51, 2003.

Get Essential Business Process Modeling now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.