The aim of the Task metamodel is the definition of a language capable of representing the relationship between task and entities that are immersed into a Context-Aware System (CAS) running in an Ubiquitous Computing Environment (UCE).
The Task model is based on the Workflow definition by the Workflow Management Coalition (WMfC) [2]. The conceptual mapping between WfMC workflow concepts and the Task Metamodel concepts is depicted on the following table.
Workflow concept | TaMM concept |
---|---|
Task | System Task |
Process | Task Model |
Token | Token |
Sequential | Route Task |
Selective | Split-OR Task |
Iteration | Route Task |
Parallel | Split-AND Task |
Condition | Condition |
The Task metamodel defines two types of tasks: Routing tasks and System tasks. While System tasks define the system behavior, Routing tasks define the temporal relationship among System tasks. Examples of Systemn tasks are: Get Name, Show Clients, etc. There are 4 types of Routing tasks (aka Route tasks): Split-OR tasks (to define a selection among different routes according to target Task Pre Conditions), Join-OR tasks (to define a common route for a set of tasks satisfying target task Pre Condition), Split-AND tasks (to generare threads or define parallel task execution) and Join-AND tasks (to define task synchronization).
Conditions are employed to define system states. There are 4 types of Conditions: Initial Conditions (to define the initial conditions of entities that are part of the system), Pre Conditions (to define System task pre-conditions), Post Conditions (to define System task post conditions) and Final Conditions (to define final conditions of entities that are part of the system).
The task Metamodel is depicted in Figure 4 and Figure 5.
Therefore, in order to build a task model, the pattern depicted on Figure 6 should be followed.
The Figure 7 shows a Task model for the asynchronous exchange of files.
As can be seen in the example, Conditions are defined by 5 types of Expressions: Social expressions (So), Task expressions (Ta), Space expressions (Sp), Logic expressions (Lo) and Data expressions. All of these expressions should be satisfied to get the Condition satisfied.
References
[2] The Workflow Management Coalition (WfMC ).
You can reference this work as:
Ricardo Tesoriero, José A. Gallud, María D. Lozano and Víctor M. R. Penichet. CAUCE: Model-driven Development of Context-aware Applications for Ubiquitous Computing Environments. Journal of Universal Computer Science, Vol. 16, No. 15, pp. 2111-2138. 2010. Link: http://www.jucs.org/jucs_16_15/cauce_model_driven_development