Pattern |
Rating |
Motivation |
| Sequence |
+ |
Directly supported by means of steps connected with unconditional routes. |
| Parallel Split |
+ |
Directly supported by a step where all outgoing routes are unconditional. |
| Synchronization |
+ |
Directly supported by a component the incoming routing info of which is set to "collector step". |
| Exclusive Choice |
+ |
Directly supported by a step with multiple outgoing routes (take route of the first true condition). Each of the routes must have a condition associated with it, all defined conditions must be exclusive. If several conditions are satisfied, the first specified in the lexical order is selected. |
Simple Merge |
+ |
Directly supported by a step (which is not a collector step). |
| Multi-Choice |
+ |
Directly supported by a step, which takes routes of all true conditions. Requires structure followed by a collector step. |
| Structured Synchronizing Merge |
+ |
Directly supported by a collector step used a join in the structure. |
| Multi-Merge |
+ |
Directly supported, workflow waits for all active steps to finish. |
| Structured Discriminator |
- |
Not supported: no means for resetting are available. |
| Arbitrary Cycles |
+ |
Directly supported: allows to specify cycles with multiple entry and exit points. |
| Implicit Termination |
+ |
Directly supported. Allows for multiple end-points, however workflow terminates after all steps have finished. |
| Multiple Instances without Synchronization |
+ |
Supported via invoke in the loop. |
| Multiple Instances with a Priori Design-Time Knowledge |
- |
Not supported. |
| Multiple Instances with a Priori Run-Time Knowledge |
- |
Not supported. |
| Multiple Instances without a Priori Run-Time Knowledge |
- |
Not supported. |
| Deferred Choice |
+/- |
Partially supported. It is possible to withdraw a timer, but not possible to withdraw an activity. |
| Interleaved Parallel Routing |
- |
Not supported. |
| Milestone |
- |
Not supported: although FileNet has a concept of milestone, it refers to the following: To track the progress of a workflow, the workflow author can define key points (milestones) in the workflow. On the workflow map, a milestone can be placed either before or after a General step, or after the Launch step. When the running workflow reaches a milestone, an author-specified message is written to a log file and, depending on its author-specified level (1 to 99), the milestone displays for workflow participants, trackers, and the user who launched the workflow. The Milestones page displays a list of milestones that have been reached for a workflow. You can only access this page from the email message sent to the workflow originator when the milestone is reached. |
| Cancel Activity |
+ |
Directly supported via <Terminate Branch> step. |
| Cancel Case |
+ |
Directly supported via <Terminate Process> step. Furthermore, if none of the conditions could be satisfied, the workflow terminates. |
| Structured Loop |
+ |
Directly supported. |
| Recursion |
- |
Not supported. |
| Transient Trigger |
- |
Not supported. |
Persistent Trigger |
+ |
Directly supported via <WaitForCondition> and <Receive> steps. |
| Cancel Region |
- |
Not supported. |
| Cancel Multiple Instance Activity |
- |
No inherent support for multiple instance activities. |
| Complete Multiple Instance Activity |
- |
No inherent support for multiple instance activities. |
| Blocking Discriminator |
- |
Not supported. |
| Cancelling Discriminator |
- |
Not supported. |
| Structured N-out-of-M Join |
- |
Not supported. |
| Blocking N-out-of-M Join |
- |
Not supported. |
| Cancelling N-out-of-M Join |
- |
Not supported. |
| Generalised AND-Join |
+ |
Supported by a collector step. |
| Static Partial Join for Multiple Instances |
- |
Not supported. |
| Cancelling Partial Join for Multiple Instances |
- |
Not supported. |
| Dynamic Partial Join for Multiple Instances |
- |
Not supported. |
| Acyclic Synchronizing Merge |
- |
Not supported. |
| General Synchronizing Merge |
+ |
Supported by a collector step. |
| Critical Section |
- |
Not supported. |
| Interleaved Routing |
- |
Not supported. |
| Thread Merge |
- |
Not supported. |
| Thread Split |
- |
Not supported. |
| Explicit Termination |
- |
Not supported. Workflow terminates after all steps have finished. |