Page 52 -
P. 52
2 The Language: Rationale and Fundamentals 39
Multiple Instance Data corresponds to a data element in a specific execution
instance of a task, where the task may execute multiple times, possibly con-
currently. Examples of this are multiple instance tasks, tasks that are triggered
multiple times within a process (e.g., that are part of loop), and tasks in a sub-
process decomposition shared by several tasks in a process. It is defined in the
context of a given task and is accessible only within a single execution instance
of the task. It shares the same life-span as the execution instance. The Multiple
Instance Data pattern is illustrated by the variable mivar that is associated with
the multiple instance task B in Fig. 2.8. Each instance of a multiple instance vari-
able (e.g., mivar) is accessible only within the context of a specific instance of a
multiple instance task.
Case Data, which corresponds to a data element that is accessible to all tasks
within a process instance. It has a life-span that is the same as the process
instance. Figure 2.8 illustrates Case Data Pattern via the data elements cvar,
cvar and cvar .
00
0
Folder Data, which corresponds to a data element that is defined outside the
context of the process that is able to be coupled with particular process instances
during their execution. Once married up with a process instance, the data element
is accessible to all tasks in the process instance.
Global Data, which corresponds to a data element that is accessible throughout
all tasks in cases for a given process. Figure 2.8 illustrates Global Data Pattern
via the data element gvar, which is accessible throughout all tasks in all process
instances.
Environment Data, which correspond to a data element that is defined outside
the context of the process but accessible within it during execution. It is possible
for an environment data element to be accessed by different cases of different
processes.
The data visibility patterns describe the types of data elements that are permissible
within the context of a process. The next group of patterns describe various ways
in which those data elements are passed between the main components within a
process and also between a process and the operating environment.
Data Interaction Patterns
Data interaction patterns divide into two main groups: internal data interaction pat-
terns, which describe the various ways in which data elements are communicated
between the main components within a process, and external data interaction pat-
terns, which describe the various ways in which data elements are communicated
between the main components in a process and the operating environment.
There are four internal data interaction patterns describing scenarios for data
transfer between active components within a process instance or between process
instances:
Data Interaction between Tasks distinguishes the way in which data elements
are passed between tasks in a process instance. There are three distinct means
by which this can be achieved as illustrated in the figures below. Figure 2.9a