The Forgotten Case of the Dependency Bugs: On the Example of the Robot Operating SystemSEIP
A dependency bug is a software fault that manifests itself when accessing an unavailable asset. Dependency bugs are pervasive and we all hate them. This paper presents a case study of dependency bugs in the Robot Operating System (ROS), applying mixed methods: a qualitative investigation of 78 dependency bug reports, a quantitative analysis of 1354 ROS bug reports against 19553 reports in the top 30 GitHub projects, and a design of three dependency linters evaluated on 406 ROS packages.
The paper presents a definition and a taxonomy of dependency bugs extracted from data. It describes multiple facets of these bugs and estimates that as many as 15% (!) of all reported bugs are dependency bugs. We show that lightweight tools can find dependency bugs efficiently, although it is challenging to decide which tools to build and difficult to build general tools. We present the research problem to the community, and posit that it should be feasible to eradicate it from software development practice.
Tue 7 JulDisplayed time zone: (UTC) Coordinated Universal Time change
16:05 - 17:05 | A4-Cyber-Physical SystemsSoftware Engineering in Practice / Technical Papers / Demonstrations at Baekje Chair(s): Joanne M. Atlee University of Waterloo | ||
16:05 12mTalk | Adapting Requirements Models to Varying EnvironmentsTechnical Technical Papers Dalal Alrajeh Imperial College London, Antoine Cailliau ICTEAM, UCLouvain, Axel van Lamsweerde Université catholique de Louvain | ||
16:17 12mTalk | Comparing Formal Tools for System Design: a Judgment StudyTechnical Technical Papers Alessio Ferrari CNR-ISTI, Franco Mazzanti ISTI-CNR, Davide Basile University of Florence, Maurice H. ter Beek ISTI-CNR, Alessandro Fantechi University of Florence DOI Pre-print | ||
16:29 3mTalk | Demo: SLEMI: Finding Simulink Compiler Bugs through Equivalence Modulo Input (EMI)Demo Demonstrations Shafiul Azam Chowdhury University of Texas at Arlington, Sohil Lal Shrestha The University of Texas at Arlington, Taylor T Johnson Vanderbilt University, Christoph Csallner University of Texas at Arlington Link to publication DOI Media Attached | ||
16:32 12mTalk | The Forgotten Case of the Dependency Bugs: On the Example of the Robot Operating SystemSEIP Software Engineering in Practice Anders Fischer-Nielsen IT University of Copenhagen, Zhoulai Fu IT University of Copenhagen, Denmark, Ting Su ETH Zurich, Switzerland, Andrzej Wąsowski IT University of Copenhagen, Denmark Pre-print | ||
16:44 3mTalk | PROMISE: High-Level Mission Specification for Multiple RobotsDemo Demonstrations Sergio Garcia Chalmers | University of Gothenburg, Patrizio Pelliccione University of L'Aquila and Chalmers | University of Gothenburg, Claudio Menghi University of Luxembourg, Thorsten Berger Chalmers | University of Gothenburg, Tomas Bures Charles University, Czech Republic | ||
16:47 12mTalk | How do you Architect your Robots? State of the Practice and Guidelines for ROS-based SystemsSEIP Software Engineering in Practice Ivano Malavolta Vrije Universiteit Amsterdam, Grace Lewis Carnegie Mellon Software Engineering Institute, Bradley Schmerl Carnegie Mellon University, USA, Patricia Lago Vrije Universiteit Amsterdam, David Garlan Carnegie Mellon University |