Page 50 -
P. 50
2 The Language: Rationale and Fundamentals 37
In contrast to these two patterns that deal with task initiation, the final group of
control-flow patterns denote schemes for determining when a process instance is
complete.
Termination Patterns
The termination patterns identify two distinct schemes for determining when a
process instance is complete:
Implicit Termination considers a process instance to be complete when there is
no remaining work left to do now or at any future time. Moreover, the process
instance must not be in deadlock or livelock.
Explicit Termination requires a process to have a dedicated endpoint, which sig-
nifies the point of completion. When the thread of control reaches this point in
the process, it is considered to be complete and any remaining work is discarded.
The preceding control-flow patterns delineate a series of desirable characteristics
relating to control-flow issues within a business process. Historically, the control-
flow perspective has received a significant amount of attention both in terms of
modeling and enactment of business processes and has tended to be the central
metaphor for processes against which most other aspects are described. In spite
of this bias, the data perspective is an equally important aspect of a business pro-
cess, and in many cases, the aim of processes is to manage the effective capture
and distribution of information to process participants. In the following section, we
identify a series of data patterns that describe recurrent data-related constructs and
usage scenarios in business processes.
2.2.2 Data Patterns
The data patterns describe language features for defining and managing data
resources during business process execution. They can be divided into four groups:
Data visibility, patterns which relate to the scope and visibility of data elements
in a process.
Data interaction, patterns which focus on the way in which data is communi-
cated between active elements within a process.
Data transfer, patterns which consider the means by which the actual transfer
of data elements takes place between process elements and describe the vari-
ous mechanisms by which data elements can be passed across the interface of a
specific process element.
Data-based routing, patterns which characterize the manner in which data ele-
ments can influence the operation of other aspects of a process, particularly the
control-flow perspective.
Each of these groups is discussed in detail in the following sections, starting with
data visibility patterns.