Skip to main content

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

  • 1255 Accesses

Abstract

Successful engineering principles for building software systems rely on the 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 the composition of complex systems out of 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. This chapter explains how model-driven approaches can be used to support separation of roles and composition for robotics software systems. The models, open-source tools, open-source robotics software components and fully deployable robotics software systems shape a robotics software ecosystem.

References

  1. J. Stubbe, J. Mock, S. Wischmann, The Acceptance of Service Robots: Tools and Strategies for the Successful Deployment in Companies. Study commissioned by BMWi as part of the PAiCE Technology Programme (iit-Institut für Innovation und Technik in der VDI/VDE Innovation + Technik GmbH, Berlin, 2019)

    Google Scholar 

  2. D. Brugali (ed.) Software Engineering for Experimental Robotics. Springer Tracts in Advanced Robotics (Springer, Berlin, 2007). ISBN: 3540689494

    Google Scholar 

  3. M. Hägele, N. Blümlein, O. Kleine, EFFIROB - Wirtschaftlichkeitsanalysen neuartiger Servicerobotik-Anwendungen und ihre Bedeutung für die Robotik-Entwicklung (Eine Analyse der Fraunhofer-Institute IPA und ISI im Auftrag des BMBF, 2011)

    Google Scholar 

  4. SPARC - The Partnership for Robotics in Europe. Strategic Research Agenda (SRA) for Robotics in Europe 2014–2020. euRobotics aisbl (2013 & 2014)

    Google Scholar 

  5. D. Mourtzis, Challenges and future perspectives for the life cycle of manufacturing networks in the mass customisation era. Logist. Res. 9, 2 (2016). https://doi.org/10.1007/s12159-015-0129-0

    CrossRef  Google Scholar 

  6. M. Teulieres, J. Tilley, L. Bolz, P.M. Ludwig-Dehm, S. Wägner, Industrial Robotics – Insights into the Sector’s Future Growth Dynamics (McKinsey & Company, New York, 2019)

    Google Scholar 

  7. J.F. Moore, Predators and prey: a new ecology of competition. Harv. Bus. Rev. 71(3), 75–83 (1993)

    Google Scholar 

  8. E. Kelly, Business Ecosystems Come of Age. Part of the Business Trends Series (Deloitte University Press, New York, 2015). DUP_1048-Business-ecosystems-come-of-age_MASTER_FINAL.pdf

    Google Scholar 

  9. S. Hallsteinsen, M. Hinchey, S. Park, K. Schmid, Dynamic software product lines. Computer 41(4), 93–95 (2008)

    CrossRef  Google Scholar 

  10. J. Bosch, From software product lines to software ecosystems, in Proceedings of the 13th Int. Software Product Line Conference (2009), pp. 111–119. https://doi.org/10.1145/1753235.1753251

  11. W. Mahnke, S.-H. Leitner, M. Damm, OPC Unified Architecture (Springer, New York, 2009). ISBN: 978-3-540-68898-3

    CrossRef  Google Scholar 

  12. OPC Foundation Companion Specifications. https://opcfoundation.org/about/opc-technologies/opc-ua/ua-companion-specifications/

  13. J. Bosch, P. Bosch-Sijtsema, From integration to composition: on the impact of software product lines, global development and ecosystems. J. Syst. Softw. 83(1), 67–76 (2010). ISSN:0164-1212. https://doi.org/10.1016/j.jss.2009.06.051

    CrossRef  Google Scholar 

  14. C. Schlegel, A. Lotz, M. Lutz, D. Stampfer, J.F. Inglés-Romero, C. Vicente-Chicote, Model-driven software systems engineering in robotics: covering the complete life-cycle of a robot. Inf. Technol. 57(2), 85–98 (2015). De Gruyter, Oldenbourg

    Google Scholar 

  15. L. Andrade, J.L. Fiadeiro, J. Gouveia, G. Koutsoukos, Separating computation, coordination and configuration. J. Softw. Mainten. Evol. Res. Pract. 14(5), 353–369 (2002)

    CrossRef  Google Scholar 

  16. E.A. Lee, S.A. Seshia, Introduction to Embedded Systems: A Cyber-Physical Systems Approach, 2nd edn. (MIT Press, Cambridge, 2017)

    MATH  Google Scholar 

  17. M. Lutz, D. Stampfer, A. Lotz, C. Schlegel, Service robot control architectures for flexible and robust real-world task execution: Best practices and patterns, in Informatik 2014, Workshop Roboter-Kontrollarchitekturen. LNI der GI (Springer, New York, 2014). ISBN:978-3-88579-626-8

    Google Scholar 

  18. F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, M. Stal, Pattern-Oriented Software Architecture, Volume 1, A System of Patterns (Wiley Press, Hoboken, 1996). ISBN: 978-0-471-95869-7

    Google Scholar 

  19. RobMoSys Wiki. Cited 9. Aug 2020. https://robmosys.eu/wiki/

  20. E. Scioni, N. Huebel, S. Blumenthal, A. Shakhimardanov, M. Klotzbücher, H. Garcia, H. Bruyninckx, Hierarchical hypergraphs for knowledge-centric robot systems: a composable structural meta-model and its domain specific language NPC4. JOSER - Spec. Iss. Domain-Spec. Lang. Mod. Robot. Syst. 7(1), 55–74 (2016)

    Google Scholar 

  21. RobMoSys Wiki Modeling Section. Cited 9. Aug 2020 https://robmosys.eu/wiki/modeling:<title of subordinate document>

  22. G. Engels, A. Schürr, Encapsulated hierarchical graphs, graph types, and meta types. Electron. Notes Theor. Comput. Sci. 2, 101–109 (1995)

    CrossRef  Google Scholar 

  23. M. Levene, A. Poulovassilis, An object-oriented data model formalised through hypergraphs. Data Knowl. Eng. 6, 205–224 (1991)

    CrossRef  Google Scholar 

  24. C.A. Szyperski, D. Gruntz, S. Murer, Component Software - Beyond Object-Oriented Programming. Addison-Wesley Component Software Series, 2nd edn. (Addison-Wesley, Boston, 2002)

    Google Scholar 

  25. I. Crnkovic, S. Sentilles, A. Vulgarakis, M.R.V. Chaudron, A classification framework for software component models. IEEE Trans. Softw. Eng. 37(5), 593–615 (2011). https://doi.org/10.1109/TSE.2010.83

    CrossRef  Google Scholar 

  26. C. Schlegel, A. Lotz, A. Steck, SmartSoft - The State Management of a Component. Technical Report 2011/01. Hochschule Ulm, Germany (2011) ISSN:1868-3452. http://www.zafh-servicerobotik.de/dokumente/ZAFH-TR-01-2011-ISSN-1868-3452.pdf

  27. C. Schlegel, Navigation and Execution for Mobile Robots in Dynamic Environments: An Integrated Approach. PhD thesis, Uni Ulm (2004)

    Google Scholar 

  28. D. Stampfer, A. Lotz, M. Lutz, C. Schlegel, The SmartMDSD toolchain: an integrated MDSD workflow and Integrated Development Environment (IDE) for Robotics Software. JOSER - Spec. Iss. Domain-Spec. Lang. Mod. Robot. Syst. 7(1), 3–19 (2016)

    Google Scholar 

  29. M. Lutz, Model-Driven Behavior Development for Service Robotic Systems: Bridging the Gap between Software- and Behavior-Models (work in progress)

    Google Scholar 

  30. A. Lotz, A. Steck, C. Schlegel, Runtime monitoring of robotics software components: increasing robustness of service robotic systems, in International Conference on Advanced Robotics (ICAR ’11), Tallinn, Estonia (2011)

    Google Scholar 

  31. GitHub Repository with API specifications. Cited 9. Aug 2020. https://github.com/Servicerobotics-Ulm/SmartSoftComponentDeveloperAPIcpp

  32. C. Schlegel, A. Lotz, ACE/SmartSoft - Technical Details and Internals. Technical Report 2010/01, Hochschule Ulm, Germany (2010). ISSN:1868-3452. http://www.zafh-servicerobotik.de/dokumente/ZAFH-TR-01-2010-ISSN-1868-3452.pdf

  33. A. Lotz, A. Hamann, R. Lange, C. Heinzemann, J. Staschulat, V. Kesel, D. Stampfer, M. Lutz, C. Schlegel, Combining robotics component-based model-driven development with a model-based performance analysis, in Proceedings of the IEEE International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR) (2016), pp. 170–176

    Google Scholar 

  34. The Eclipse-based Open-Source SmartMDSD Toolchain. Cited 9. Aug 2020. https://wiki.servicerobotik-ulm.de/getting-started-guide. https://projects.eclipse.org/projects/modeling.smartmdsd

  35. A. Steck, C. Schlegel, Managing execution variants in task coordination by exploiting design-time models at runtime, in Proceedings of the IEEE/RSJ International Conference on Robotics and Intelligent Systems (IROS), San Francisco, USA, September (2011)

    Google Scholar 

  36. SmartMDSD Tutorials. Cited 9. Aug 2020 https://wiki.servicerobotik-ulm.de/tutorials:<title of subordinate document>

  37. A. Elkady, T. Sobh, Robotics middleware: A comprehensive literature survey and attribute-based bibliography. J. Robot. (2012). Article ID 959013. https://doi.org/10.1155/2012/959013. https://core.ac.uk/download/pdf/52956509.pdf

  38. A. Ramaswamy, B. Monsuez, A. Tapus, Model-driven software development approaches in robotics research, in Proceedings of the 6th International Workshop on Modeling in Software Engineering (MiSE), June (2014), pp. 43–48. https://doi.org/10.1145/2593770.2593781

  39. D. Akdur, V. Garousi, O. Demirors, A survey on modeling and model-driven engineering practices in the embedded software industry. J. Syst. Arch. (2018). https://doi.org/10.1016/j.sysarc.2018.09.007

  40. E. Abraham, H. Kress-Gazit, L. Natale, A. Tacchella (organizers), Computer-Assisted Engineering for Robotics and Autonomous Systems. Dagstuhl-Seminar 17071, 12. - 17.02.2017. https://www.dagstuhl.de/17071

  41. D. Stampfer, Contributions to System Composition using a System Design Process driven by Service Definitions for Service Robotics. PhD thesis, Technische Uni München (2018)

    Google Scholar 

  42. A. Lotz, Managing Non-Functional Communication Aspects in the Entire Life-Cycle of a Component-Based Robotic Software System. PhD thesis, Technische Uni München (2018)

    Google Scholar 

  43. The RobMoSys Discourse Forum. Cited 9. Aug 2020. https://discourse.robmosys.eu/

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Christian Schlegel .

Rights and permissions

Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.

The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.

Reprints and Permissions

Copyright information

© 2021 The Author(s)

About this chapter

Verify currency and authenticity via CrossMark

Cite this chapter

Schlegel, C., Lotz, A., Lutz, M., Stampfer, D. (2021). Composition, Separation of Roles and Model-Driven Approaches as Enabler of a Robotics Software Ecosystem. In: Cavalcanti, A., Dongol, B., Hierons, R., Timmis, J., Woodcock, J. (eds) Software Engineering for Robotics. Springer, Cham. https://doi.org/10.1007/978-3-030-66494-7_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-66494-7_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-66493-0

  • Online ISBN: 978-3-030-66494-7

  • eBook Packages: Computer ScienceComputer Science (R0)