Do Bugs Propagate? An Empirical Analysis of Temporal Correlations among Software Bugs
Sat 17 Jul 2021 01:30 - 01:50 at ECOOP 1 - Potpourri (time band 2) Chair(s): Lingming Zhang
The occurrences of bugs are not isolated events, rather they may interact, affect each other, and trigger other latent bugs. Identifying and understanding bug correlations could help developers localize bug origins, predict potential bugs, and design better architectures of software artifacts to prevent bug affection. Many studies in the defect prediction and fault localization literature implied the dependence and interactions between multiple bugs, but few of them explicitly investigate the correlations of bugs across time steps and how bugs affect each other. In this paper, we perform social network analysis on the temporal correlations between bugs across time steps on software artifact ties, i.e., software graphs. Adopted from the correlation analysis methodology in social networks, we construct software graphs of three artifact ties such as function calls and type hierarchy and then perform longitudinal logistic regressions of time-lag bug correlations on these graphs. Our experiments on four open-source projects suggest that bugs can propagate as observed on certain artifact tie graphs. Based on our findings, we propose a hybrid artifact tie graph, a synthesis of a few well-known software graphs, that exhibits a higher degree of bug propagation. Our findings shed light on research for better bug prediction and localization models and help developers to perform maintenance actions to prevent consequential bugs.
Fri 16 JulDisplayed time zone: Brussels, Copenhagen, Madrid, Paris change
08:00 - 09:00 | Empirical Studies / Parallelism (time band 3)ECOOP Technical Papers at ECOOP 1 Chair(s): Hakjoo Oh Korea University | ||
08:00 20mTalk | CodeDJ: Reproducible Queries over Large-Scale Software Repositories ECOOP Technical Papers Petr Maj Czech Technical University, Konrad Siek Czech Technical University in Prague, Jan Vitek Northeastern University / Czech Technical University, Alexander Kovalenko Czech Technical University in Prague DOI | ||
08:20 20mTalk | Enabling Additional Parallelism in Asynchronous JavaScript Applications ECOOP Technical Papers DOI | ||
08:40 20mTalk | Do Bugs Propagate? An Empirical Analysis of Temporal Correlations among Software Bugs ECOOP Technical Papers Xiaodong Gu Shanghai Jiao Tong University, China, Sunghun Kim Hong Kong University of Science and Technology, Yo-Sub Han Yonsei University, Hongyu Zhang University of Newcastle DOI |
Sat 17 JulDisplayed time zone: Brussels, Copenhagen, Madrid, Paris change
01:10 - 02:30 | Potpourri (time band 2)ECOOP Technical Papers at ECOOP 1 Chair(s): Lingming Zhang University of Illinois at Urbana-Champaign | ||
01:10 20mTalk | Differential Privacy for Coverage Analysis of Software Traces ECOOP Technical Papers Yu Hao Ohio State University, Sufian Latif Ohio State University, Hailong Zhang Fordham University, Raef Bassily Ohio State University, Atanas Rountev Ohio State University DOI | ||
01:30 20mTalk | Do Bugs Propagate? An Empirical Analysis of Temporal Correlations among Software Bugs ECOOP Technical Papers Xiaodong Gu Shanghai Jiao Tong University, China, Sunghun Kim Hong Kong University of Science and Technology, Yo-Sub Han Yonsei University, Hongyu Zhang University of Newcastle DOI | ||
01:50 20mTalk | Linear Promises: Towards Safer Concurrent Programming ECOOP Technical Papers Ohad Rau Georgia Institute of Technology, Caleb Voss Georgia Institute of Technology, Vivek Sarkar Georgia Institute of Technology DOI | ||
02:10 20mTalk | Dealing with Variability in API Misuse Specification ECOOP Technical Papers Rodrigo Bonifácio Computer Science Department - University of Brasília, Stefan Krüger Independent Researcher, Krishna Narasimhan TU Darmstadt, Eric Bodden University of Paderborn; Fraunhofer IEM, Mira Mezini TU Darmstadt, Germany DOI |