Software development and Integration in Robotics (SDIR V)
Tutorial on
Component-based Robotics Engineering
Motivation
The fifth edition of the ICRA SDIR workshop reflects an increased awareness within the Robotics community for the
importance of identifying and developing software principles that support the development of new robotic systems as
composition of reusable components in order to reduce development time and cost.
Component-Based Software Engineering (CBSE) is an approach that has arisen in the software engineering community in the
last decade. It aims to shift the emphasis in system-building from traditional requirement analysis, system design and
implementation to composing software systems from a mixture of reusable off-the-shelf and custom-built components.
In order to fully exploit the potential of CBSE in robotics, the subtle relationship between best practices in robotics, robotics
requirements, needs of robotics and implementation technologies like e.g. middleware systems has to be made explicit.
Bringing together researchers from these different disciplines through tutorial on CBSE and its principles for robotics lays the
foundations towards the long-term goal of identifying the ingredients of a component model for robotics for model-driven
system design.
Content
In
Part I, we regard a component as a piece of software that implements robotic functionality (e.g. path planning) or provides
computational services to other components (e.g. synchronizing the access to a robotic device). The focus is on software
components as reusable building blocks that embed robotic functionality and on the Software Product Line approach that
promotes the definition of domain-specific component models, i.e. models that capture recurrent software abstractions in
robotics.
In
Part II, we will discuss the role of software components as architectural units of large software-intensive robotic systems,
where component are deployed on a node (i.e. a general purpose processor or an embedded computer) of a networked
computational infrastructure, and interact with other distributed components. The focus is on the support provided to system
developers by Component-based Middleware technology to hide the complexity of and help to manage hardware,
computational, and communication resources
In
Part III, we will address issues related to defining platform independent component models and models transformations. The
focus is, on the Model-Driven Engineering technique that enables the semi-automatic generation of software code from those
component models.
About the Instructors
Davide Brugali graduated in electronic engineering at
Politecnico di Milano in 1994. He received his Ph.D. degree
in computer science from Politecnico di Torino in 1998.
Since 2001, he has been an assistant professor at the Univer-
sity of Bergamo. He has been a visiting researcher at the
CMU Robotics Institute in 1997 and a visiting professor at
NASA Jet Propulsion Laboratory in 2006. Since 2000, he has been a
cochair of the IEEE Robotics Automation Society (RAS)
Technical Committee on Software Engineering for Robotics and Automation.
He is the lead author of the book Software Development—Case Studies in Java
published by Addison-Wesley in 2005 and editor of the
Springer STAR book on Software Engineering for Experimental Robotics (2006).
His main research activity is in the field of techniques to build and reuse software for robotics.
He is partner of the FP7 EU Project
Best Practice in Robotics (BRICS)
Azamat Shakhimardanov was born in 1982 in Bukhara, Uzbekistan.
He received his B.Eng degree from Tashkent State Technical University, Uzbekistan in 2004.
He received his M.Sc degree from University of Applied Sciences Bonn-Rhein-Sieg, Germany in 2007. Since then he has been involved in several EU robotics projects with a focus on software architectures. He was responsible for middleware Team in FP6 EU project RosTa. Currently he is involved in FP7 EU Project BRICS.
Cristian Schlegel is professor in
the Computer Science Department at the University of Applied Sciences Ulm. He is
member of the computer science institute and head of both, the real-time systems
lab and the autonomous mobile systems lab. He is project lead of the
collaborative center for
applied research on autonomous mobile service robots. Schlegel received his
doctoral degree and his diploma degree in computer science from the department
of computer science at the University of Ulm in 2004 and 1993, respectively.
Schlegel's research interests are in the area of algorithms and mechanisms
for intelligent systems with a focus on service robotics. His mission is to
further alleviate the gap between lab systems and robust everyday applications.
His main research activity is in the field of
model driven software development for sensori-motor systems.
He is associate editor of JOSER - Journal of Software Engineering for Robotics.
For additional information, please visit the
Home Page of Prof. Christian Schlegel.
The research leading to the organization of this workshop has received funding from the European Community's Seventh Framework Programme (FP7/2007-2013) under grant agreement n° 231940.
The research leading to the tutorial on model-driven engineering for robotics
components has received funding from state of Baden-Württemberg and the European
Regional Development Fund (ERDF).