Title
Parallel debugging: An investigative study
Abstract
AbstractAbstractIn the simultaneous localization of multiple software faults, a parallel debugging approach has consistently been utilized. The effectiveness of a parallel debugging approach is critically determined by the type of clustering algorithm and the distance metric used. However, clustering algorithms that group failed tests based on their execution profile similarity with distance metrics such as Euclidean distance, Jaccard distance, and Hamming distance are considered to be problematic and not appropriate. In this paper, we conducted an investigative study on the usefulness of the problematic parallel debugging approach that makes use of k‐means clustering algorithm (that groups failed tests based on their execution profile similarity) with Euclidian distance metric on three similarity coefficient‐based fault localization techniques in terms of localization effectiveness. Secondly, we compare the effectiveness of the problematic parallel debugging approach with one‐bug‐at‐a‐time debugging approach (OBA) and a state‐of‐the‐art parallel debugging approach named MSeer. The empirical evaluation is conducted on 540 multiple‐fault versions of eight medium‐sized to large‐sized subject programs with two, three, four, and five faulty versions. Our results suggest that clustering failed tests based on their execution profile similarity and the utilization of distance metrics such as Euclidean distance is indeed problematic and contributes to the reduction of effectiveness in localizing multiple faults.Figure 1 shows a program with test cases. The results of our controlled experiments showed that, even though the problematic parallel debugging approach is useful and better in comparison with the OBA debugging approach, yet, it is not as effective when compared with the existing state‐of‐the‐art parallel debugging approach.Therefore, the result affirms the previous studies claims that performing failed tests clustering based on their execution profile similarity, estimating the number of clusters based on the number of failed tests, and the utilization of metrics like Euclidian distance to measure the due‐to relationship between failed test cases are problematic and not appropriate which indeed reduces the effectiveness of a parallel debugging approach. View Figure
Year
DOI
Venue
2019
10.1002/smr.2178
Periodicals
Keywords
Field
DocType
multiple faults,parallel debugging,program debugging,program spectra,software fault localization
Systems engineering,Software engineering,Engineering,Debugging
Journal
Volume
Issue
ISSN
31
11
2047-7473
Citations 
PageRank 
References 
0
0.34
0
Authors
2
Name
Order
Citations
PageRank
Abubakar Zakari122.10
Sai Peck Lee214222.55