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
   47   48   49   50   51   52   53   54   55   56   57