Title :
Fault Localization for Make-Based Build Crashes
Author :
Al-Kofahi, J. ; Hung Viet Nguyen ; Nguyen, T.N.
Author_Institution :
Electr. & Comput. Eng. Dept., Iowa State Univ., Ames, IA, USA
fDate :
Sept. 29 2014-Oct. 3 2014
Abstract :
In large-scale software projects, build code has a high level of complexity, churn rate, and defect proneness. While it is desirable to have automated tools to help developers in localizing faults in build code, it is challenging to build such tools due to the dynamic nature of build code. Existing automatic fault localization methods focus on traditional code and none of them has such support for build code. This paper introduces MkFault, a novel automatic tool/method to localize faults in build code that cause run-time build failures. Given a test case that causes a run-time crash in the execution of a Make file, it returns a ranked list of statements in the Make file with their suspiciousness scores. MkFault records the evaluation traces from Make code to identify the corresponding concrete build rules and the execution traces of those rules. It then uses those traces and its novel Bayesian-like rating algorithm to give suspiciousness scores to the original statements in the Make file. Our empirical evaluation on real faults in several open-source projects has shown that MkFault can achieve high accuracy and help reduce a large percentage of the lines of code that developers need to examine.
Keywords :
Bayes methods; fault diagnosis; program debugging; project management; public domain software; software development management; Bayesian-like rating algorithm; Make code; Makefile; MkFault; automated tools; automatic fault localization methods; churn rate; defect proneness; large-scale software projects; make-based build crashes; open-source projects; run-time build failures; suspiciousness scores; Accuracy; Complexity theory; Computer crashes; Concrete; Instruments; Java; Software; build code; build crashes; build failure; fault localization;
Conference_Titel :
Software Maintenance and Evolution (ICSME), 2014 IEEE International Conference on
Conference_Location :
Victoria, BC
DOI :
10.1109/ICSME.2014.87