Write a Blog >>
ICSE 2020
Wed 24 June - Thu 16 July 2020
Tue 7 Jul 2020 16:32 - 16:44 at Baekje - A4-Cyber-Physical Systems Chair(s): Joanne M. Atlee

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.

Conference Day
Tue 7 Jul

Displayed 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. AtleeUniversity of Waterloo
16:05
12m
Talk
Adapting Requirements Models to Varying EnvironmentsTechnical
Technical Papers
Dalal AlrajehImperial College London, Antoine CailliauICTEAM, UCLouvain, Axel van LamsweerdeUniversité catholique de Louvain
16:17
12m
Talk
Comparing Formal Tools for System Design: a Judgment StudyTechnical
Technical Papers
Alessio FerrariCNR-ISTI, Franco MazzantiISTI-CNR, Davide BasileUniversity of Florence, Maurice H. ter BeekISTI-CNR, Alessandro FantechiUniversity of Florence
DOI Pre-print
16:29
3m
Talk
Demo: SLEMI: Finding Simulink Compiler Bugs through Equivalence Modulo Input (EMI)Demo
Demonstrations
Shafiul Azam ChowdhuryUniversity of Texas at Arlington, Sohil Lal ShresthaThe University of Texas at Arlington, Taylor T JohnsonVanderbilt University, Christoph CsallnerUniversity of Texas at Arlington
Link to publication DOI Media Attached
16:32
12m
Talk
The Forgotten Case of the Dependency Bugs: On the Example of the Robot Operating SystemSEIP
Software Engineering in Practice
Anders Fischer-NielsenIT University of Copenhagen, Zhoulai FuIT University of Copenhagen, Denmark, Ting SuETH Zurich, Switzerland, Andrzej WąsowskiIT University of Copenhagen, Denmark
Pre-print
16:44
3m
Talk
PROMISE: High-Level Mission Specification for Multiple RobotsDemo
Demonstrations
Sergio GarciaChalmers | University of Gothenburg, Patrizio PelliccioneUniversity of L'Aquila and Chalmers | University of Gothenburg, Claudio MenghiUniversity of Luxembourg, Thorsten BergerChalmers | University of Gothenburg, Tomas BuresCharles University, Czech Republic
16:47
12m
Talk
How do you Architect your Robots? State of the Practice and Guidelines for ROS-based SystemsArtifact ReusableArtifact AvailableSEIP
Software Engineering in Practice
Ivano MalavoltaVrije Universiteit Amsterdam, Grace LewisCarnegie Mellon Software Engineering Institute, Bradley SchmerlCarnegie Mellon University, USA, Patricia LagoVrije Universiteit Amsterdam, David GarlanCarnegie Mellon University