Spectrum-based Software Fault Localization: A Survey of Techniques, Advances, and Challenges
Higor A. de Souza, Marcos L. Chaim, Fabio Kon

TL;DR
This survey reviews Spectrum-based Fault Localization (SFL) techniques, highlighting their current state, challenges, and future research directions to improve debugging efficiency in software development.
Contribution
It provides a comprehensive overview of SFL methods, analyzes their limitations, and proposes future research avenues for industry adoption and effectiveness enhancement.
Findings
SFL techniques vary in fault types and spectra used.
Challenges include reducing suspicious entities and handling multiple faults.
Future research needs user studies and improved spectra combination.
Abstract
Despite being one of the most basic tasks in software development, debugging is still performed in a mostly manual way, leading to high cost and low performance. To address this problem, researchers have studied promising approaches, such as Spectrum-based Fault Localization (SFL) techniques, which pinpoint program elements more likely to contain faults. This survey discusses the state-of-the-art of SFL, including the different techniques that have been proposed, the type and number of faults they address, the types of spectra they use, the programs they utilize in their validation, the testing data that support them, and their use at industrial settings. Notwithstanding the advances, there are still challenges for the industry to adopt these techniques, which we analyze in this paper. SFL techniques should propose new ways to generate reduced sets of suspicious entities, combine…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software Reliability and Analysis Research · Software Engineering Research
