Workflow Participant

WfMC Meta-Model specification defines a simple in-built (Minimal) Organisational Model or permits access to an externally defined OM. Participants in TWE are just part of an Organisational Model - Minimal OM. The connection with the Organisational Model is used in Activity Definition (performer of an activity) and in the Process Definition (responsible of a process).

Workflow Participants have a scope and visibility equivalent to extended attributes. All referenced Workflow Participants have to be defined in the scope where they are used, at least in the same package.

The Workflow Participant is defined by a type and related information, which is a set of type specific attributes. This definition contains a basic set of 6 Workflow Participant types: resource set, resource, organizational unit, role, human, or system. A role and a resource are used in the sense of abstract actors. This definition is an abstraction level between the real performer and the activity, which has to be performed. During run time these abstract definitions are evaluated and assigned to concrete human(s) and/or program(s).

These attributes are used to define a Workflow Participant:

Table 6.12. Workflow Participant

NameM/ODescription
IdMUsed to identify the workflow participant definition.
Participant NameOText used to identify a performer.
Participant TypeMDefinition of the type of workflow participant entity. Type of a workflow participant.
Participant DescriptionOShort textual description of a workflow participant.
External ReferenceOA reference to an external specification of a participant.

The Participant entity type attribute characterizes the participant to be an individual, an organisational unit or an abstract resource such as a machine. Here is a list of possible participant types:

Table 6.13. Participant Types

NameDescription
RESOURCE_SETA set of resources.
RESOURCEA specific resource agent (as a machine).
ROLEThis type allows performer addressing by a role or skill set. A role in this context is a function a human has within an organization. As a function isn't necessarily unique, a coordinator may be defined (for administrative purposes or in case of exception handling) and a list of humans the role is related to.
ORGANIZATIONAL_UNITA department or any other unit within an organizational model.
HUMANA human interacting with the system via an application presenting a user interface to the participant.
SYSTEMAn automatic agent.

TWE provides the way to define participants at Package level and at Process Definition level. In order to do that, you can select appropriate toolbar button or menu item for showing all the participants defined at package/process level. This will bring a table property panel, where you'll have a button for creating a new participant.

You are able to insert the lanes representing all the defined participants into a TWE graph using the following choice button from graph's toolbar , and it'll be represented as a new swim-lane in a graph. Then, you can put the activities (and artifacts) in there, which actually means that activity's performer is the participant represented by the swim-lane.

Even if you do not define any participant, TWE's graph component has special lanes that can be used to define activity's performer as an expression (can be created by toolbar buttons and ).

All the activities which performer is not a reference to an existing Participant will be graphically displayed inside those special graph swim-lanes.

There is another way of defining Package level Participants, and this is by using a Graph's toolbox button. Pressing this button , and than clicking in the graph will automatically add another participant represented as a new swim-lane in currently selected WorkflowProcess's graph. This participant's type will be Role, and you can change it through the property panel.