Program debugging has always been a difficult and time-consuming task in
the context of software development, where spectrum-based fault
localization (SBFL) is one of the most widely studied families of
techniques. While it's not particularly difficult to learn about the
process and empirical performance of a particular SBFL technique from
the available literature, researchers and practitioners aren't always
familiar with the underlying theories.
This book provides the first comprehensive guide to fundamental theories
in SBFL, while also addressing some emerging challenges in this area.
The theoretical framework introduced here reveals the intrinsic
relations between various risk evaluation formulas, making it possible
to construct a formula performance hierarchy. Further extensions of the
framework provide a sufficient and necessary condition for a general
maximal formula, as well as performance comparisons for hybrid SBFL
methods. With regard to emerging challenges in SBFL, the book mainly
covers the frequently encountered oracle problem in SBFL and introduces
a metamorphic slice-based solution. In addition, it discusses the
challenge of multiple-fault localization and presents cutting-edge
approaches to overcoming it.
SBFL is a widely studied research area with a massive amount of
publications. Thus, it is essential that the software engineering
community, especially those involved in program debugging, software
maintenance and software quality assurance (including both newcomers and
researchers who want to gain deeper insights) understand the most
fundamental theories - which could also be very helpful to ensuring the
healthy development of the field.