Location: Welcome > RAL language > Testing RAL expressiveness

Testing RAL expressiveness


In this section we show how RAL can be used in business process models and we test its expressiveness on the basis of some Workflow Resource Patterns (WRPs) introduced by Russell et al. Specifically, we use the creation patterns because they are focused on information that can/must be added at design time, so they constitute the group of patterns in which RAL fits best.







The reference business process model we are using and the structure of the organization where it is used are shown above. More detailed descriptions of this scenario are given in RAL_ontologies.



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.


Submenu