Chapter 7. Workflow Patterns

OpenWFE in the light of Workflow Patterns

Table of Contents

Pattern 1 (Sequence)
Pattern 2 (Parallel Split)
Pattern 3 (Synchronization)
Some 'concurrence' examples
Pattern 4 (Exclusive choice)
Pattern 5 (Simple merge)
Pattern 6 (Multi-choice)
Pattern 7 (Synchronizing Merge)
Pattern 8 (Multiple Merge)
Pattern 9 (Discriminator)
Pattern 9a (N out of M join)
Pattern 10 (Arbitrary Cycles)
Pattern 11 (Implicit Termination)
Pattern 12 (Multiple Instances without Synchronization)
Pattern 13 (Multiple Instances with Design Time Knowledge)
Pattern 14 (Multiple Instances with Run Time Knowledge)
Iterator
Pattern 15 (Multiple Instances without Run Time Knowledge)
Pattern 16 (Deferred Choice)
Pattern 17 (Interleaved Parallel Routing)
Pattern 18 (Milestone)
Pattern 19 (Cancel Activity)
Pattern 20 (Cancel Case)

Workflow Patterns are enumerated at http://www.workflowpatterns.com. OpenWFE's process definition language has been 'forged' to face the challenges dictated by each of these patterns.

Workflow patterns are listed here with possible OpenWFE solutions. You shouldn't skip this chapter, it will teach you a lot about OpenWFE and what you can do with it. Its expressions are shown here in full light.

The explanations here may seem spartan. More info will be added, but it's perhaps better to browse this 'pattern' chapter in parallel (concurrence) with the workflow patterns website.

Pattern 1 (Sequence)

The expression named 'sequence' covers this pattern as this example shows :


    <sequence>
       <participant ref="task-a" />
       <participant ref="task-b" />
    </sequence>