Database Reference
In-Depth Information
(generated by elements outside the statechart) or internal (generated by elements inside the
statechart). A transition between a source state and a target state will take place if and only
if the system currently resides in the source state, and the event of the transition occurs,
and the conditions that guard the transition are true. In other words, the system must be in
the source state, the event must occur and the conditions must be true for the transition to
take place.
The four possible types of routing in workfl ows are sequential, parallel, conditional,
and iterative (van der Aalst, 1998). In the following subsections, we show how to model
these four types of routing in statecharts, and illustrate several statechart concepts that are
relevant in modeling workfl ows.
Sequential Routing
Activities are executed one after the other in sequential routing. In Figure 3, E1 is the
event, C1 is the condition, and A1 is the action of the transition between state A and state
B. In Figure 3, the system may still reside in state A unless at the instant E1 occurs, C1 is
true. Events are instantaneous. A transition between a source state and a target state will
take place if and only if the system currently resides in the source state, and the event of
the transition occurs, and the conditions that guard the transition are true. In other words,
the system must be in the source state, the event must occur and the conditions must be true
for the transition to take place.
An action can be sending an event, but the event can be lost if the system is not in the
proper state. As an example, suppose the transition between state B and state C fi res and A2
is the action “sending event E1”. Since the system is not in state A, E1 is simply lost.
Parallel Routing
In contrast to sequential routing, activities can be executed concurrently in paral-
lel routing. This is exactly why several activity instances may associate with a workfl ow
instance. We do not specify conditions in Figure 4. By default, they are assumed to be the
completion of the activities represented by the source states. If additional conditions are
given for a transition, then the actual guarding condition of the transition is the conjunction
of the additional conditions and the completion of the activity represented by the source
state, unless otherwise stated. As an example, in Figure 3, the actual guarding condition of
the transition from state A to state B is the completion of the activity represented by state
A and the additional condition C1. Events and actions are also omitted. If the event of a
transition is omitted, then the system will check the condition continuously. Thus, whether
Figure 3: Sequential routing
Search WWH ::




Custom Search