Work

Software debugging using program spectra

Year: 2011
Type: dissertation
Abstract: This thesis focuses on debugging using program spectra.Program spectra captures the dynamic behaviour of a program indicating which program statements are executed by respective test cases, which include pass and fail cases.By using this information, we use functions to rank all statements to locate bugs.Statements ranked top of the ranking are more likely to be buggy.We refer to these functions as spectra metrics.In a traditional debugging task, the programmer often has to examine program execution step-by-step within a block or function of program code that is most likely to be buggy.Using program spectra information can help the programmer to narrow down to those program statements that are most likely to be buggy.The thesis contributes to the theoretical understanding of debugging single bug programs using program spectra.We propose several spectra metrics and also review other metrics suggested for bug localization.Some of the metrics that have been previously employed in other domain areas such as biological science have been adapted for the debugging area and their effectiveness have been evaluated.We propose several methods to help improve the precision of bug localization.We show by employing more information such as frequency execution and coverage of test cases can improve bug localization performance significantly.Our extensive evaluation on several benchmarks, namely Siemens Test Suite, subset of Unix Test Suite, Concordance, and Space indicate that our proposed spectra metrics are effective in improving bug localization performance.This thesis work advances the state-of-the-art of bug localization and consequently has great potential to improve the effectiveness of debugging software.
Author: Hua Jie Lee
Language: English
Subfield: Software
Open Access status: green
OpenAlex ID: W1421985439
Cites: 97
Cited by: 16
Related to: 10