Database Reference
In-Depth Information
errors by launching specific compensation activities, which are linked to
the compensation event with the association connecting object (Fig. 8.5 ), as
shown in Fig. 8.4 . Finally, terminate events stop the entire process, including
all parallel processes.
Sequence flow
Conditional
sequence flow
Default sequence
flow
Message flow
Association
Fig. 8.5 Connecting objects
Connecting objects are used to represent how objects are connected.
There are three types of connecting objects, illustrated in Fig. 8.5 ,whichare
explained next.
A sequence flow represents a sequencing constraint between flow objects.
It is the basic connecting object in a workflow. It states that if two activities
are linked by a sequence flow, the target activity will start only when the
source one has finished. If multiple sequence flows outgo from an activity, all
of them will be activated after its execution. In case there is a need to control
a sequence flow, it is possible to add a condition to the sequence flow by using
the conditional sequence flow . A sequence flow may be set as the default
flow in case of many outgoing flows. For example, as explained above, in an
exclusive or an inclusive gateway, if no other condition is true, then the default
flow is followed. Note that sequence flows can replace splitting and merging
gateways. For example, an exclusive gateway splitting into two paths could
be replaced by two conditional flows, provided the conditions are mutually
exclusive . Inclusive gateways could be replaced by conditional flows, even
when the former constraint does not apply.
A message flow represents the sending and receiving of messages between
organizational boundaries (i.e., pools, explained below). A message flow is the
only connecting object able to get through the boundary of a pool and may
also connect to a flow object within that pool.
An association relates artifacts (like annotations) to flow objects (like
activities). We give examples below. An association can indicate directionality
using an open arrowhead, for example, when linking the compensation
activity in case of error handling.
A loop (see Fig. 8.6 ) represents the repeated execution of a process for
as long as the underlying looping condition is true. This condition must be
evaluated for every loop iteration and may be evaluated at the beginning or
 
Search WWH ::




Custom Search