MEIR KALECH

Senior Academic

Spectrum-based fault diagnosis with partial traces

Bruno Sotto-Mayor, Roni Stern,Meir Kalech

Finding the root cause of observed software bugs, also referred to as software fault diagnosis, is a challenging problem that often must be solved in order to maintain software reliability. Spectrum-Based Fault Localization (SFL) is a powerful technique for automated software fault diagnosis that leverages execution traces. However, having the exact trace of every executed function is not common in real-world software projects, since tracing incurs significant overhead. Instead, many projects maintain log files to track execution, from which only partial execution traces may be extracted. This raises a key challenge: how can we diagnose fault faults (bugs) correctly given only partial execution traces?One way to do so is to run SFL using only the available partial traces. This approach is very limited, as it ignores all components that are not in the partial trace, which may even include the buggy components we are looking for. To overcome this limitation, we propose to use trace reconstruction techniques to synthetically add components to the given partial traces. These techniques analyze possible execution paths, which are extracted via static code analysis. In this work, we consider three trace reconstruction techniques: Rec-Min, Rec-Max, and Rec-Weighted. Rec-Min adds to the partial traces components present in all possible execution paths. Rec-Max adds to the partial trace components that exists in at least one execution path. Rec-Weighted applies a more refined approach. It assigns likelihood scores to the missing components based on the number of execution paths that pass through them. Then, it adapts SFL to intelligently consider these likelihood scores. Empirical evaluation on 109 faulty versions of 10 projects from the Defects4J dataset demonstrates that using our trace reconstruction techniques significantly enhances fault localization compared to the baseline SFL that only uses the partial traces. In some cases, using Rec-Weighted enabled reducing the wasted effort by 34.4 %.

Publication language English
Journal Journal of Systems and Software
Volume 232
Publication status Published - 01.02.2026
Article Number 112689

Keywords

Execution logs
Fault localization techniques
Software fault diagnosis
Software reliability
Spectrum-Based fault localization (SFL)

ASJC Scopus subject areas

Software
Information Systems
Hardware and Architecture
Access to Document
10.1016/j.jss.2025.112689
Other files and links
Link to publication in Scopus