Download Workflow Patterns - Information Systems

Transcript
Synonyms Sequential routing, serial routing.
Examples
- Activity send bill is executed after the execution of activity send goods.
- An insurance claim is evaluated after the client's le is retrieved.
- Activity add air miles is executed after the execution of activity book ight.
Implementation
- The sequence pattern is used to model consecutive steps in a workow process and is
directly supported by each of the workow management systems available. The typical
implementation involves linking two activities with an unconditional control ow arrow.
2
The next two patterns can be used to accommodate for parallel routing.
Pattern 2 (Parallel Split)
Description A point in the workow process where a single thread of control splits into
multiple threads of control which can be executed in parallel, thus allowing activities to be
executed simultaneously or in any order.
Synonyms AND-split, parallel routing, fork.
Examples
- The execution of the activity payment enables the execution of the activities ship goods
and inform customer.
- After registering an insurance claim two parallel subprocesses are triggered: one for
checking the policy of the customer and one for assessing the actual damage.
Implementation
- All workow engines known to us have constructs for the implementation of this pattern. One can identify two basic approaches: explicit AND-splits and implicit AND-splits.
Workow engines supporting the explicit AND-split construct (e.g. Visual WorkFlo) dene a routing node with more than one outgoing transition which will be enabled as
soon as the routing node gets enabled. Workow engines supporting implicit AND-splits
(e.g. MQSeries/Workow) do not provide special routing constructs - each activity can
have more than one outgoing transition and each transition has associated conditions. To
achieve parallel execution the workow designer has to make sure that multiple conditions associated with outgoing transitions of the node evaluate to True (this is typically
achieved by leaving the conditions blank).
7