[Graphs Constructs]Graphs Constructs [r][width=5.5cm]bilder/constructs
Workflow graphs are built of eight symbols depicted in figure . Tasks represent activities to be executed automatically by an application or manually by a person. Four special forms of tasks exist: composite tasks, null tasks, initial tasks and final tasks. Composite tasks represent the recursion in the model: A task can also be a workflow. Null tasks do not represent an action but are needed sometimes in a workflow graph for syntactical reasons. A workflow execution starts with an initial task and finishes with a final task. Such tasks can also be composite or null tasks.
The specification of a task includes the activity, resources executing it and data needed during execution. Resources are for example roles, applications, algorithms or hardware devices. Roles represent persons with mandatory skills and privileges.
The condition symbol represents a decision. A question, a resource answering it and the needed data must be specified for each condition. Synchronizers are used to join two or more parallel execution paths in a workflow, i.e. a synchronizer blocks until all paths leading to it have finished. A flow represents a possible flow of control during the execution of a workflow.
To model a workflow the four constructs sequence, alternative, concurrency and interaction shown in figure are needed. A sequence is an ordered list of tasks. After finishing one task the next is executed. The alternative construct models decisions. This construct selects one of several execution paths. Concurrency allows the representation of parallel activities, i.e. the execution of several paths in parallel. Interactions model repeated execution of a series of tasks. A condition included in the iteration path decides each time whether to continue the iteration or not.