Evaluating data-flow coverage in spectrum-based fault localization

  title={Evaluating data-flow coverage in spectrum-based fault localization},
  author={Henrique Lemos Ribeiro and H. A. D. Souza and Roberto P. A. Araujo and Marcos Lordello Chaim and Fabio Kon},
  journal={2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)},
Background: Debugging is a key task during the software development cycle. Spectrum-based Fault Localization (SFL) is a promising technique to improve and automate debugging. SFL techniques use control-flow spectra to pinpoint the most suspicious program elements. However, data-flow spectra provide more detailed information about the program execution, which may be useful for fault localization. Aims: We evaluate the effectiveness and efficiency of ten SFL ranking metrics using data-flow… Expand
Data-flow-based evolutionary fault localization
This study presents an approach to calculate the suspiciousness score for each program command by using the execution of data-flow components, and introduces a new metric to investigate the dependence of tie-break strategies in building the ranking of suspicious commands. Expand
Efficiently Finding Data Flow Subsumptions
This work model the data flow testing subsumption as a data flow analysis framework, allowing us to use efficient algorithms that quickly discover data flow subsumption relationships and suggest that the framework and algorithm can reduce the cost of data flowTesting and will work at scale. Expand
Exploiting Code Knowledge Graph for Bug Localization via Bi-directional Attention
This work proposes KGBugLocator to utilize knowledge graph embeddings to extract interrelations of code, and a keywords supervised bi-directional attention mechanism regularize model with interactive information between source files and bug reports to reach the new the-state-of-art SOTA for bug localization. Expand


Jaguar: A Spectrum-Based Fault Localization Tool for Real-World Software
The Jaguar fault localization tool is presented, which uses Spectrum-based Fault Localization techniques (SFL) to indicate faulty code excerpts in Java programs using data-flow spectrum using a lightweight approach. Expand
Assessment of spectrum-based fault localization for practical use
The goal of this thesis research was to propose strategies to improve spectrum-based fault localization, focusing on its practical use, and investigate the use of data-flow spectrum to provide contextual information for SFL. Expand
On the Accuracy of Spectrum-based Fault Localization
  • R. Abreu, P. Zoeteweij, A. van Gemund
  • Computer Science
  • Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007)
  • 2007
This work investigates diagnostic accuracy as a function of several parameters (such as quality and quantity of the program spectra collected during the execution of the system), some of which directly relate to test design, and indicates that the superior performance of a particular similarity coefficient, used to analyze the programSpectrum-based fault localization, is largely independent of test design. Expand
Experiments on the effectiveness of dataflow- and control-flow-based test adequacy criteria
An experimental study investigating the effectiveness of two code-based test adequacy criteria for identifying sets of test cases that detect faults found that tests based respectively on control-flow and dataflow criteria are frequency complementary in their effectiveness. Expand
Locating faults using multiple spectra-specific models
This paper proposes an SFL technique LOUPE, which uses multiple spectra-specific models and builds different models to evaluate the suspiciousness of statements for each spectra type respectively, since the fault type is unknown in advance. Expand
Efficiently monitoring data-flow test coverage
It is shown how to infer from branch coverage the coverage of many DUAs, while remaining DUAs are predicted with high accuracy by the same information, and testers can choose branch monitoring to approximate DUA coverage or instrument directly for DUA monitoring, which is precise but more expensive. Expand
Lightweight fault-localization using multiple coverage types
The empirical results show that the cost of fault localization using combinations of coverage is less than using any individual coverage type and closer to the best case (without knowing in advance which kinds of faults are present), and using inferred data-dependence coverage retains most of the benefits of combinations. Expand
Evaluating and Improving Fault Localization
A design space is identified that includes many previously-studied fault localization techniques as well as hundreds of new techniques, and which factors in the design space are most important, using an overall set of 395 real faults. Expand
A Debugging Strategy Based on Requirements of Testin
This paper introduces a strategy for fault localization based on the investigation of indications (or hints) provided at run-time by data-flow testing requirements and presents a case study which shows that the intuition is valid (for the subject program) and a proof-of-concept tool that implements the strategy. Expand
State dependency probabilistic model for fault localization
The studies show that the approach consistently outperforms the other evaluated techniques in terms of effectiveness in fault localization on Siemens programs, and the overall efficiency of the approach in the range of 10–30% of analyzed source code is higher than the other methods on UNIX programs. Expand