Mining the usage patterns of ROS primitives

The Robot Operating System (ROS) is nowadays one of the most popular frameworks for developing robotic applications. To ensure the (much needed) dependability and safety of such applications we forecast an increasing demand for ROS-specific coding standards, static analyzers, and tools alike. Unfortunately, the development of such standards and tools can be hampered by ROS modularity and configurability, namely the substantial number of primitives (and respective variants) that must, in principle, be considered. To quantify the severity of this problem, we have mined a large number of existing ROS packages to understand how its primitives are used in practice, and to determine which combinations of primitives are most popular. This paper presents and discusses the results of this study, and hopefully provides some guidance for future standardization efforts and tool developers.

[1]  Guohui Li,et al.  Comparison and evaluation of source code mining tools and techniques: A qualitative approach , 2013, Intell. Data Anal..

[2]  Alcino Cunha,et al.  A framework for quality assessment of ROS repositories , 2016, 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[3]  Jonathan I. Maletic,et al.  Comparing Approaches to Mining Source Code for Call-Usage Patterns , 2007, Fourth International Workshop on Mining Software Repositories (MSR'07:ICSE Workshops 2007).

[4]  Kerstin Eder,et al.  Verification and testing of mobile robot navigation algorithms: A case study in SPARK , 2014, 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[5]  Agostino Cortesi,et al.  Static analysis techniques for robotics software verification , 2013, IEEE ISR 2013.

[6]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[7]  Marco Kuhrmann,et al.  On the Use of Safety Certification Practices in Autonomous Field Robot Software Development: A Systematic Mapping Study , 2015, PROFES.

[8]  Stefan Holzer,et al.  Towards autonomous robotic butlers: Lessons learned with the PR2 , 2011, 2011 IEEE International Conference on Robotics and Automation.