Handbook of Software Fault Localization


Book Description

Handbook of Software Fault Localization A comprehensive analysis of fault localization techniques and strategies In Handbook of Software Fault Localization: Foundations and Advances, distinguished computer scientists Prof. W. Eric Wong and Prof. T.H. Tse deliver a robust treatment of up-to-date techniques, tools, and essential issues in software fault localization. The authors offer collective discussions of fault localization strategies with an emphasis on the most important features of each approach. The book also explores critical aspects of software fault localization, like multiple bugs, successful and failed test cases, coincidental correctness, faults introduced by missing code, the combination of several fault localization techniques, ties within fault localization rankings, concurrency bugs, spreadsheet fault localization, and theoretical studies on fault localization. Readers will benefit from the authors’ straightforward discussions of how to apply cost-effective techniques to a variety of specific environments common in the real world. They will also enjoy the in-depth explorations of recent research directions on this topic. Handbook of Software Fault Localization also includes: A thorough introduction to the concepts of software testing and debugging, their importance, typical challenges, and the consequences of poor efforts Comprehensive explorations of traditional fault localization techniques, including program logging, assertions, and breakpoints Practical discussions of slicing-based, program spectrum-based, and statistics-based techniques In-depth examinations of machine learning-, data mining-, and model-based techniques for software fault localization Perfect for researchers, professors, and students studying and working in the field, Handbook of Software Fault Localization: Foundations and Advances is also an indispensable resource for software engineers, managers, and software project decision makers responsible for schedule and budget control.




Handbook of Software Fault Localization


Book Description

Handbook of Software Fault Localization A comprehensive analysis of fault localization techniques and strategies In Handbook of Software Fault Localization: Foundations and Advances, distinguished computer scientists Prof. W. Eric Wong and Prof. T.H. Tse deliver a robust treatment of up-to-date techniques, tools, and essential issues in software fault localization. The authors offer collective discussions of fault localization strategies with an emphasis on the most important features of each approach. The book also explores critical aspects of software fault localization, like multiple bugs, successful and failed test cases, coincidental correctness, faults introduced by missing code, the combination of several fault localization techniques, ties within fault localization rankings, concurrency bugs, spreadsheet fault localization, and theoretical studies on fault localization. Readers will benefit from the authors’ straightforward discussions of how to apply cost-effective techniques to a variety of specific environments common in the real world. They will also enjoy the in-depth explorations of recent research directions on this topic. Handbook of Software Fault Localization also includes: A thorough introduction to the concepts of software testing and debugging, their importance, typical challenges, and the consequences of poor efforts Comprehensive explorations of traditional fault localization techniques, including program logging, assertions, and breakpoints Practical discussions of slicing-based, program spectrum-based, and statistics-based techniques In-depth examinations of machine learning-, data mining-, and model-based techniques for software fault localization Perfect for researchers, professors, and students studying and working in the field, Handbook of Software Fault Localization: Foundations and Advances is also an indispensable resource for software engineers, managers, and software project decision makers responsible for schedule and budget control.




Essential Spectrum-based Fault Localization


Book Description

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.










Lightweight Techniques for Automatic Software Fault Localization


Book Description

Current approaches to automatic software fault localization can be classified as either (1) statistics-based approaches, or (2) reasoning approaches. This distinction is based on the required amount of knowledge about the program s internal component structure and behavior. Statistics-based fault localization techniques such as Spectrum-based Fault Localization (SFL) use abstraction of program traces (also known as program spectra) to find a statistical relationship between source code locations and observed failures. Although SFL s modeling costs and computational complexity are minimal, its diagnostic accuracy is inherently limited since no reasoning is used. In contrast to SFL, model-based reasoning approaches use prior knowledge of the program, such as component interconnection and statement semantics, to build a model of the correct behavior of the system. On the one hand, model-based reasoning approaches deliver higher diagnostic accuracy, but on the other hand, they suffer from high computation complexity.







Software Fault Detection and Correction: Modeling and Applications


Book Description

This book focuses on software fault detection and correction processes, presenting 5 different paired models introduced over the last decade and discussing their applications, in particular to determining software release time. The first work incorporates the testing effort function and the fault introduction process into the paired fault detection and fault correction models. The second work incorporates fault dependency, while the third adopts a Markov approach for studying fault detection and correction processes. The fourth work considers the multi-release property of various software, and models fault detection and correction processes. The last work classifies faults into four types and models the fault-detection and correction processes. Enabling readers to familiarize themselves with how software reliability can be modeled when different factors need to be considered, and how the approaches can be used to analyze other systems, the book is important reference guide for researchers in the field of software reliability engineering and practitioners working on software projects. To gain the most from the book, readers should have a firm grasp of the fundamentals of the stochastic process.