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