Field failures are difficult to reproduce for debugging in-house. This paper applies a BugRedux technique to capture the essential execution data and to reproduce the failures. It then applies F3, a technique to conduct fault localization of the reproduced failures.
The fault localization approach is developed by optimizing four existing spectrum-based fault localization (SBFL) techniques. Results show that aggressive filtering, using profile information, and grouping relevant entities vastly improve the performance of the SBFL techniques. The similarity of the failing executions justifies the proposed approach. The synthesized programs are sufficient to achieve fault localization. The effectiveness of the SBFL techniques is enhanced. Time and space overheads are acceptable. Thus, the paper is of great importance to the debugging of field failures.
As to the choice of SBFL techniques, the authors selected Ochiai and observation-based model (OBM) for study because of historical interest, and selected Naish1 and Naish2 because they are “optimal.” Please note, however, that the risk evaluation formulas in SBFL form a partially ordered set. Yoo et al. [1] proved mathematically that no formula can be more effective than all the other formulas. The so-called optimal techniques are only local maxima. In particular, Xie et al. [2] proved that Naish1 and Naish2 have exactly the same effectiveness. Furthermore, Xie et al. [2,3] identified ten maximal formulas in five distinct groups such that the formulas in any two groups cannot be compared in effectiveness. It would be interesting if the authors could further optimize a couple of these maximal formulas to better illustrate the advantages of their approach.