1 / 18

An Empirical Study on Clustering for Isolating Bugs in Fault Localization

An Empirical Study on Clustering for Isolating Bugs in Fault Localization. Yanqin Huang 1 , Junhua Wu 2 , Yang Feng 1 , Zhenyu Chen 1 , Zhihong Zhao 1. Outline. Introduction Assumption Our Approach Experimental Design Experimental Results Conclusion. Introduction.

burke
Télécharger la présentation

An Empirical Study on Clustering for Isolating Bugs in Fault Localization

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Empirical Study on Clustering for Isolating Bugs in Fault Localization Yanqin Huang1, Junhua Wu2, Yang Feng1, Zhenyu Chen1, Zhihong Zhao1

  2. Outline • Introduction • Assumption • Our Approach • Experimental Design • Experimental Results • Conclusion

  3. Introduction • SBFL: Spectrum-Based Fault Location • program spectrum • risk evaluation formulas • Clustering: group tests

  4. Assumption • negligible effect of multiple faults • test cases have some similar behaviors if they due to the same fault

  5. Our Approach • SBFL Concept Figure: An example for SBFL

  6. Our Approach • Current SBFL Techniques Table: An example for SBFL

  7. Our Approach • Cluster Algorithms • Hierarchical clustering Algorithms • Partitioning clustering Algorithms e.g: simple k-means clustering

  8. Our Approach • Framework • Executing Test Cases • Collecting Profiles • Extracting BugHit Matrix • Applying Clustering • Using SBFL for Fault Localization

  9. Experimental Design • Subject Programs

  10. Experimental Design

  11. Experimental Design • Experimental Steps • Inject faults • Distinguish failures • Get execution profile • Cluster • Locate faults

  12. Experimental Results • Experimental Results on the flex program

  13. Experimental Results • Experimental Results on the grep program

  14. Experimental Results • Observations • simple k-means clustering mostly performs better than hierarchical clustering • Wong1 picked from ER5 always has the most excellent performance comparing to other techniques

  15. Experimental Results • Comparison of Wong1 from ER5 with Clustering Algorithms

  16. Experimental Results • Comparison of Wong1 and Naish2

  17. Conclusion • Conclusion • ER5 (Wong1) achieves the best results of fault localization with clustering • K-means outperforms hierarchical clustering for isolating bugs in fault localization

  18. Thank you!

More Related