User Tools

Site Tools


Task Definition Metamodel

Tasks describe via which steps (what: the ordering of steps) and in which manner (how: the kind of execution) to accomplish a particular job. For this, a vocabulary with a semantics is needed not only for the task names but also for the in-attributes, the out-attributes, and the task results. The task definition meta-model allows domain experts at Composition Tier 2 to specify that vocabulary and its meaning for a particular domain. Tasks are realized at Composition Tier 3.

Separating task definitions and task realizations makes sure that the behavior developer uses only that vocabulary with the given semantics as has been agreed by the domain experts. This not only ensures composability of task blocks but also ensures that the robot finally shows the extended behavior.

The domain-specific task definitions at Composition Tier 2 ensure that different tasks talk about activities in the same way. In consequence, tasks belonging to the same domain talk about the same activity when they use the same name and their input / output arguments as well as their result values follow the same domain-specific vocabulary and meaning.

A task definition as the interface specification of a task contains input and output attributes of a primitive type (int, bool, etc.) and returns a result (TaskResult). The set of all contained SkillResults models the possible results a task could evaluate to. Each TaskResult maps to either SUCCESS or ERROR and contains an additional value to provide further result details (e.g. ERROR and “No Path” for a transportation task).

See also


This document contains material from:

  • Schlegel2021 Christian Schlegel, Alex Lotz, Matthias Lutz, Dennis Stampfer. “Composition, Separation of Roles and Model-Driven Approaches as Enabler of a Robotics Software Ecosystem”. Chapter 3 in book Software Engineering for Robotics, Ana Cavalcanti, Jon Timmis, Brijesh Dongol, Rob Hierons, Jim Woodcock (editors), Springer Nature Switzerland, (to appear as Open Access)
  • Schlegel2020 Christian Schlegel, Dennis Stampfer, Alex Lotz, Matthias Lutz, “Robot Programming”. Chapter 8 in book Mechatronics and Robotics: New Trends and Challenges, Marina Indri and Roberto Oboe (editors), CRC Press.
  • Lutz2017 Matthias Lutz, “Model-Driven Behavior Development for Service Robotic Systems: Bridging the Gap between Software- and Behavior-Models,” 2017. (unpublished work)
modeling:metamodels:task-definition · Last modified: 2020/12/04 17:17