Direct Allocation: The ability to specify at design time the identity of the resource that will carry out a task. For instance, the Sign Travel Authorization task must only be undertaken by Antonio:
Sign Travel Authorization: IS Antonio
Role-Based Allocation: The ability to specify that a task can only be executed by resources with a given role. For instance, instances of the Fill Travel Authorization task must be executed by a Research Assistant:
Fill Travel Authorization: HAS ROLE ResearchAssistant
Deferred Allocation: The ability to defer specifying the identity of the performer of a task until run time. For instance, during execution of the process, instances of the Send Travel Authorization task will be executed by the person named in the resource field Applicant of data object Authorization:
Send Travel Authorization: IS PERSON IN DATA FIELD Authorization.Applicant
Authorization: The ability to specify the range of resources that are authorized to execute a task. For instance, only a Researcher and a Research Assistant are authorized to carry out instances of the Submit Paper task:
Submit Paper: (HAS ROLE Researcher) OR (HAS ROLE ResearchAssistant)
Separation of Duties: The ability to specify that two tasks must be allocated to different resources in a given workflow case. For instance, instances of the Sign Travel Authorization task must be allocated to a different person to that who executed the Fill Travel Authorization task:
Sign Travel Authorization:
NOT (IS PERSON WHO DID ACTIVITY FillTravelAuthorization) IN ANY INSTANCE
History-based Allocation:The ability to offer or allocate work items to resources on the basis of their previous execution history, e.g. the end of the previous and the next RAL expressions.
Case Handling: The ability to allocate the activities within a given workflow case to the same resource. For instance, all tasks assigned to position PhD Student are allocated to the same person.
Assigned to some activities: (HAS POSITION PhDStudent) AND
(IS PERSON WHO DID ACTIVITY FillTravelAuthorization IN CURRENT INSTANCE)
The second part of the composition is not necessary for the first task that has been assigned the position Phd Student.
Retain Familiar: When several resources are available to undertake an activity, the ability to allocate an activity within a given workflow case to the same resource that undertook a preceding activity. For instance, any PhD Student available can undertake the Register at Conference task, but it should be allocated to the same person that undertook the Submit Paper task.
Register at Conference: (HAS POSITION PhDStudent)
AND IF POSSIBLE (IS PERSON WHO DID SubmitPaper IN CURRENT INSTANCE)
Capability-based Allocation: The ability to offer or allocate instances of a task to resources based on their specific capabilities. For instance, instances of the Submit Paper task must be allocated to someone with a degree:
Submit Paper: HAS CAPABILITY Degree
Organizational Allocation: The ability to offer or allocate instances of a task to resources based their position within the organization and their relationship with other resources. For instance, the Sign Travel Authorization task must be allocated to someone that is reported by (the position of) the person that undertook the Fill Travel Authorization task:
Sign Travel Authorization: IS REPORTED BY POSITION OF
PERSON WHO DID ACTIVITY FillTravelAuthorization IN ANOTHER INSTANCE
RAL covers all the creation patterns. Pattern Automatic execution was not explicitly used because it does not involve resource assignments and, thus, it is directly supported by all business process management tools with execution capabilities.
The current version of the standard notation for business process modelling (BPMN 2.0) allows using different languages for resource management. The table below presents a comparison of the coverage of BPMN regarding resource management from the study performed by Russell et al. when they introduced the workflow resource patterns to the current version (BPMN 2.0) "enriched" with RAL.