How do you architect your robots? State of the practice and guidelines for ros-based systems

48Citations
Citations of this article
89Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The Robot Operating System (ROS) is the de-facto standard for robotic software. If on one hand ROS is helping roboticists, e.g., by providing a standardized communication platform, on the other hand ROS-based systems are getting larger and more complex and could benefit from good software architecture practices. This paper presents an observational study aimed at (i) unveiling the state-ofthe- practice for architecting ROS-based systems and (ii) providing guidance to roboticists about how to properly architect ROS-based systems. To achieve these goals, we (i) build a dataset of 335 GitHub repositories containing real open-source ROS-based systems, (ii) mine the repositories for extracting the state of the practice about how roboticists are architecting them, and (iii) synthesize a catalog of 49 evidence-based guidelines for architecting ROS-based systems. The guidelines have been validated by 77 roboticists working on real-world open-source ROS-based systems.

Cite

CITATION STYLE

APA

Malavolta, I., Lewis, G., Schmerl, B., Lago, P., & Garlan, D. (2020). How do you architect your robots? State of the practice and guidelines for ros-based systems. In Proceedings - International Conference on Software Engineering (pp. 31–40). IEEE Computer Society. https://doi.org/10.1145/3377813.3381358

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free