Openness and flexibility
The overall objective of this activity is to provide the conceptual and technological means that will allow other work packages to develop and re-engineer open and flexible robotic software artefacts, to define metrics to assess their degree of openness and flexibility, to review them according to these metrics, and to define design principles and implementation guidelines to revise and improve them.
The IEEE Standard Glossary of Software Engineering Terminology defines flexibility as the "ease with which a system or component can be modified for use in applications or environments other than those for which it was specifically designed".
The following scientific and technical key issues will be addressed:
- A first challenge to achieving software flexibility is the possibility to predict the class of changes that are likely to occur over the lifespan of the software system. For this purpose, the following issues will be addressed:
- To identify requirements of a robotic system are more likely to remain stable over time
- To identify de facto standards which are enforced in the robotic domain
- To analyse the kind of evolution that a robotic system undergoes
- A second key challenge to achieving software flexibility is the possibility to assess the software quality of a robotic system design. The main issue is to define appropriate quantitative metrics.
- A third key challenge to achieving software flexibility is the possibility to identify recurrent design problems and define reusable design solutions (design patterns). Design patterns let some aspects of system structure vary independently of other aspects, thereby making a system more robust to a particular kind of change.
- Identifying Best Practice in system flexibility and metrics to evaluate implementations of robotic software artefacts
- Assessing system flexibility of robotic software artefacts
- Defining design principles, implementation guidelines, and evaluation criteria for enhancing openness and flexibility of Best Practice robotic software artefacts
Results:
- L. Gherardi. Variability Modeling and Resolution in Component-based Robotics Systems. PhD school in Mechatronics, Information Technology, New Technologies and Mathematical Methods. University of Bergamo, Italy. April 15. 2013.
- D. Brugali, L. Gherardi, A. Luzzana and A. Zakharov. A Reuse-Oriented Development Process for Component-based Robotic Systems. In Proceedings of the 3rd International Conference on Simulation, Modeling and Programming for Autonomous Robots (SIMPAR 2012), November 5-8, 2012, Tsukuba, Japan.
- L. Gherardi, D. Brugali and D. Comotti. A Java vs. C++ performance evaluation: a 3D modeling benchmark. In Proceedings of the 3rd International Conference on Simulation, Modeling and Programming for Autonomous Robots (SIMPAR 2012), November 5-8, 2012, Tsukuba, Japan.
- M. Guarnieri, E. Magri, D. Brugali and L. Gherardi. A Domain Specific Language for Modeling Differential Constraints of Mobile Robots. In Proceedings of the 12th International Conference on Autonomous Robot Systems and Competitions (), April 11, 2012, Guimaraes, Portugal.ISBN: 978-972-98603-4-8
- D. Brugali, L. Gherardi, M. Klotzbücher, H. Bruyninckx. Service Component Architectures in Robotics: the SCA-Orocos integration. In 1st International ISoLA Workshop on Software Aspects of Robotic Systems, October 17-18, 2011, Vienna, Austria.
- L. Gherardi, D. Brugali. An eclipse-based Feature Models toolchain. In Proc. of the 6th Workshop of the Italian Eclipse Community (Eclipse-IT 2011), September 22-23, 2011, Milano, Italy.
- D. Brugali, L. Gherardi, E. Riccobene, P. Scandurra. A formal framework for coordinated simulation of heterogeneous service-oriented applications. In Proc. of the 8th International Symposium on Formal Aspects of Component Software (FACS), September 14-16, 2011, Oslo, Norway.
- Design principles, implementation guidelines, evaluation criteria for system openness and flexibility and use case implementations. BRICS Deliverable D7.1 available.
- D. Brugali, L. Gherardi and P. Scandurra. A Robotics Coordination Case Study. In SDIR VI − Workshop on Software development and Integration in Robotics, IEEE/RAS International Conference on Robotics and Automation (ICRA 2011), May 2011, Shanghai, China.
- C. Schlegel, A. Steck, D. Brugali, and A. Knoll. Design Abstraction and Processes in Robotics: From Code-Driven to Model-Driven Engineering. SIMPAR 2010. Darmstadt, Germany, November 2010.
- D. Brugali, W. Nowak, L. Gherardi, A. Zakharov, and E. Prassler. Component-based Refactoring of Motion Planning Libraries. In Proc. of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2010), October 2010, Taipei / Taiwan.
- R. Bischoff, T. Guhl, E. Prassler, W. Nowak, G. Kraetzschmar, H. Bruyninckx, P. Soetens, M. Haegele, A. Pott, P. Breedveld, J. Broenink, D. Brugali and N. Tomatis. BRICS − Best practice in robotics. In Proc. of the IFR International Symposium on Robotics (ISR 2010), June 2010, Munich, Germany.
- D. Brugali. Separation of Concerns in Component-based Robotics. At French Conference on Control Architectures for Robotics (CAR 2010), Douai, France, May, 19th, 2010.
- D. Brugali and L. Gherardi. Component-Based Robotics Models and Systems. In SDIR Tutorial on Component-Based Robotics Engineering, IEEE/RAS International Conference on Robotics and Automation (ICRA 2010), May 2010, Anchorage, USA.
- G. Schreiber, A. Stemmer, R. Bischoff. The Fast Research Interface for the KUKA Lightweight Robot. In Proc. of the IEEE ICRA 2010 Workshop on ICRA 2010 Workshop on Innovative Robot Control Architectures for Demanding (Research) Applications − How to Modify and Enhance Commercial Controllers. Anchorage, May 2010, p. 15-21.
- D. Brugali and A. Shakhimardanov. Component-based Robotic Engineering. Part II: Models and systems. In IEEE Robotics and Automation Magazine, March 2010.
- D. Brugali and P. Scandurra. Component-based Robotic Engineering. Part I: Reusable building blocks. In IEEE Robotics and Automation Magazine, December 2009.