Scalable Isolation of Failure-Inducing Changes Via Version Comparison.

Mohammadreza Ghanavati,Artur Andrzejak,Zhen Dong
DOI: https://doi.org/10.1109/issrew.2013.6688895
2013-01-01
Abstract:Despite of indisputable progress, automated debugging methods still face difficulties in terms of scalability and runtime efficiency. To reach large-scale projects, we propose an approach which reports small sets of suspicious code changes. Its essential strength is that size of these reports is proportional to the amount of changes between code commits, and not the total project size. In our method we combine version comparison and information on failed tests with static and dynamic analysis.We evaluate our method on real bugs from Apache Hadoop, an open source project with over 2 million LOC1. In 2 out of 4 cases, the set of suspects produced by our approach contains exactly the location of the defective code (and no false positives). Another defect could be pinpointed by small approach extensions. Moreover, the time overhead of our approach is moderate, namely 3-4 times the duration of a failed software test.
What problem does this paper attempt to address?