Skip to main content

Software Fault Localization via Mining Execution Graphs

  • Conference paper
Computational Science and Its Applications - ICCSA 2011 (ICCSA 2011)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6783))

Included in the following conference series:

Abstract

Software fault localization has attracted a lot of attention recently. Most existing methods focus on finding a single suspicious statement of code which is likelihood of containing bugs. Despite the accuracy of such methods, developers have trouble understanding the context of the bug, given each bug location in isolation.

There is a high possibility of locating bug contexts through finding discriminative execution sub-paths between failing and passing executions. Representing each execution of a program as a graph, discriminative sub-paths could be identified by applying a graph mining algorithm. These sub-paths may help the debugger to easily identify the major causes of faults and its infection flow through the program. In this paper, a novel approach to mine discriminative sub-graphs as indicators of program faults is proposed. We formulate an efficient function to find most discriminative patterns between weighted failing and passing graphs. Experimental results indicate that significant improvement in precision of bug localization is achieved using the proposed discriminative sub-graph mining approach.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Zhanga, D., Chena, S., Zhoub, Z.H.: Constraint Score:Anewfilter method for feature selection with pairwise constraints. The Journal of Pattern Recognition Society (2007)

    Google Scholar 

  2. Ernst, M.D., Cockrell, J., Griswold, W.G., Notkin, D.: Dynamically Discovering Likely Program Invariants to Support Program Evolution. IEEE Transactions on Software Engineering 27(2), 1–25 (2001)

    Article  Google Scholar 

  3. Harrold, M., Rothermel, G., Sayre, K., Wu, R., Yi, L.: An empirical investigation of the relationship between spectra differences and regression faults. Software Testing, Verification & Reliability 10(3), 171–194 (2000)

    Article  Google Scholar 

  4. Liu, C., Yan, X., Fei, L., Han, J., Midkiff, S.P.: Sober: Statistical model-based bug localization. In: Proc. Int. Symp. Foundations of Software Engineering, Lisbon, pp. 286–295 (2005)

    Google Scholar 

  5. Jiang, L., Su, Z.: Context-aware statistical debugging: from bug predictors to faulty control flow paths. In: Proc. Int. Conf. Automated Software Engineering, Atlanta, pp. 184–193 (2007)

    Google Scholar 

  6. Liblit, B., Naik, M., Zheng, A., Aiken, A., Jordan, M.: Scalable Statistical Bug Isolation. In: Int. Conf. Programming Language Design and Implementation, Chicago, pp. 15–26 (2005)

    Google Scholar 

  7. Hsu, H., Jones, J.A., Orso, A.: RAPID: Identifying bug signatures to support debugging activities. In: ASE (2008)

    Google Scholar 

  8. Yan, X., Cheng, H., Han, J., Yu, P.: Mining Significant Graph Patterns by LEAP Search. In: International Conference on Management of Data, pp. 433–444. ACM Press, Canada (2008)

    Google Scholar 

  9. Cheng, H., Lo, D., Zhou, Y., Wang, X.: Identifying Bug Signatures Using Discriminative Graph Mining. In: International Symptoms on Software Testing and Analysis, pp. 141–151. ACM Press, USA (2009)

    Google Scholar 

  10. Bishop, C.M.: Neural Networks for Pattern Recognition. Oxford University Press, Oxford (1995)

    MATH  Google Scholar 

  11. Liu, C., Yan, X., Yu, H., Han, J., Yu, P.S.: Mining Behavior Graphs for Backtrace of Noncrashing Bugs. In: Proceedings of SDM (2005)

    Google Scholar 

  12. Eichinger, F., Bohm, K., Huber, M.: Improved Software Fault Detection with Graph Mining. In: Proceedings of the 6th Int. Workshop on Mining and Learning with Graphs (MLG) at ICML (2008)

    Google Scholar 

  13. Eichinger, F., Böhm, K., Huber, M.: Mining Edge-Weighted Call Graphs to Localise Software Bugs. In: Daelemans, W., Goethals, B., Morik, K. (eds.) ECML PKDD 2008, Part I. LNCS (LNAI), vol. 5211, pp. 333–348. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  14. Liblit, B., Cooperative Bug Isolation, Doctor of Philosophy dissertation. University of California, Berkeley (2004)

    Google Scholar 

  15. Cleve, H., Zeller, A.: Locating causes of program failures. In: Proc. of the 27th Int. Conf. on Software Engineering, ICSE 2005 (2005)

    Google Scholar 

  16. Nessa, S., Abedin, M., Wong, W.E., Khan, L., Qi, Y.: Software Fault Localization Using N-gram Analysis. In: Li, Y., Huynh, D.T., Das, S.K., Du, D.-Z. (eds.) WASA 2008. LNCS, vol. 5258, pp. 548–559. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  17. Parsa, S., Arabi, S., Ebrahimi, N., Vahidi-Asl, M.: Finding Discriminative Weighted Sub-Graphs to Identify Software Bugs. CCIS. Springer, Heidelberg (2010)

    Book  Google Scholar 

  18. Wong, W., Debroy, V.: Software Fault Localization. IEEE Reliability Society (2009)

    Google Scholar 

  19. Lyle, J.R., Weiser, M.: Automatic Program Bug Location by Program Slicing. In: Proc. of the 2nd International Conference on Computer and Applications, Beijing, China, pp. 877–883 (1987)

    Google Scholar 

  20. Software-artifact Infrastructure Repository, http://sir.unl.edu (accsessed March 2010)

  21. Hecht, J.: New Scientist Magazine (1994), http://www.newscientist.com/article

Download references

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Parsa, S., Naree, S.A., Koopaei, N.E. (2011). Software Fault Localization via Mining Execution Graphs. In: Murgante, B., Gervasi, O., Iglesias, A., Taniar, D., Apduhan, B.O. (eds) Computational Science and Its Applications - ICCSA 2011. ICCSA 2011. Lecture Notes in Computer Science, vol 6783. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21887-3_46

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-21887-3_46

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-21886-6

  • Online ISBN: 978-3-642-21887-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics