Workflow Patterns with JOpera

This page presents a set of Quicktime screen movies showing the workflow patterns currently supported by JOpera.

Click on the links below to see JOpera running each of the workflow patterns.

  • Sequential, Run tasks A, B, C, D one after another.
  • Parallel Split. After A, run B1 and B2 in parallel.
  • Synchronization. Wait for both A and B to finish, before running C.
  • Simple Merge: run A xor B and merge the alternative flows in C.
  • Exclusive Choice: After A, run B xor C xor None.
  • Multiple Choice: After A, run B or C or Both B and C.
  • Synchronizing Merge: After A, run B (followed by D) or C (followed by D) or Both B and C and D must wait for both.
  • Multiple Merge: After A, run B (followed by D) or C (followed by D) or Both B and C, each followed by D, which is repeated twice.
  • NOutOfMJoin. Demos with 2 out of 3 join. D is started as soon as one pair (AB, BC, AC) out of the three A, B, C tasks finishes.
  • Arbitrary Cycle Note: Tasks B and D decrement the loop counter. This is a very fast operation
    and as a consequence they never change color in the movie.
  • Cancel Activity: Cancel B or Do not cancel B.
  • Cancel Case: Cancel A or Cancel B or Cancel C or Do not Cancel.
  • Milestone: D only runs when the Milestone is active. If the milestone is already completed, D will be skipped.
  • Implicit Termination. A process finishes when there is nothing left to be done. (trivial)
  • Multiple Instances (Without Synchronization, Discriminator Synchronization)
  • Multiple Instances (With A Priori Design-Time Knowledge) (trivial)
  • Multiple Instances (With A Priori Run-Time Knowledge: Parallel, Sequential)

Note: To watch the movies, you must have the Quicktime Player installed.

All of these movies are made by running JOpera and grabbing screenshots of what a user would normally see while monitoring the execution of a workflow. You can run them yourself if you look at the patterns.oml example after downloading JOpera.

Please refer to this website for more information on workflow patterns.