Department of Computer Science

Composition, Separation of Roles and Model-Driven Approaches as Enabler of a Robotics Software Ecosystem

Christian Schlegel

Technische Hochschule Ulm


Successful engineering principles for building complex software systems rely on separation of concerns for mastering complexity. However, just working on different concerns of a system in a collaborative way is not good enough for economically feasible tailored solutions. A successful approach for this is building systems by composing commodity building blocks. These come “as is” and can be represented as blocks with ports via data sheets. Data sheets are models and allow a proper selection and configuration as well as the prediction of the behavior of a building block in a specific context.

In that setting, separation of concerns comes with a different flavor as different stakeholders (e.g. component supplier, system architect, system builder, safety engineer, etc.) need to become able to work independently according to their role. Separation of roles, composability and compositionality become the drivers for bundling different concerns in a role-specific way. Basically, the challenge is to identify the sweet spot between freedom-of-choice and freedom-from-choice such that different roles can do their specific part of the work independently from the others and that they can consume and provide different building blocks without direct interaction with other roles.

At its core, this is about the link between component level and system level and thinking about complex robotic systems before we build them. It is about becoming able to perform what-if analyses, to predict system level properties and to know that the required ones are matched by the selected components and the selected configuration.

In this talk, I will explain how model-driven approaches can be used to support separation of roles, composition and compositionality for robotics software systems. This is based on and underpinned by the practical work and body-of-knowledge of the EU H2020 RobMoSys project, the German national project SeRoNet and its real-world use e.g. within the Festo Robotino robots. It comes with models, open source tooling and robotic systems.

Model-driven approaches are considered to have the potential to interlink all the various topics brought up by the talks of this meeting.


[1] Matthias Lutz, Juan F. Inglés-Romero, Dennis Stampfer, Alex Lotz, Cristina Vicente-Chicote and Christian Schlegel. “Managing Variability as a Means to Promote Composability: A Robotics Perspective.” In New Perspectives on Information Systems Modeling and Design, ed. António Miguel Rosado da Cruz and Maria Estrela Ferreira da Cruz, 274-295 (2019), doi:10.4018/978-1-5225-7271-8.ch012

[2] Lotz, A., Hamann, A., Lange, R., Heinzemann, C., Staschulat, J., Kesel, V., Stampfer, D., Lutz, M., and Schlegel, C. Combining Robotics Component-Based Model-Driven Development with a Model-Based Performance Analysis. In IEEE International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), 2016, San Francisco, CA, USA.

[3] Dennis Stampfer, Alex Lotz, Matthias Lutz and Christian Schlegel. “The SmartMDSD Toolchain: An Integrated MDSD Workflow and Integrated Development Environment (IDE) for Robotics Software”. Special Issue on Domain-Specific Languages and Models in Robotics, Journal of Software Engineering for Robotics (JOSER), 7(1), 3-19 ISSN: 2035-3928, July 2016.


Department of Computer Science
Deramore Lane, University of York, Heslington,
York, YO10 5GH, UK
Tel: 01904 325500