Skip to main content

Software Bug Localization Based on Key Range Invariants

  • Conference paper
  • First Online:
Software Analysis, Testing, and Evolution (SATE 2018)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 11293))

Included in the following conference series:

  • 623 Accesses

Abstract

Bug localization is expensive and time-consuming during software debugging. The traditional software bug localization based on range invariants need to monitor all variables in the system, requires a large of runtime overhead. However, this overhead is not necessary. Because only a set of key variables can really affect the results of the system. Therefore, this paper proposes a software bug localization method based on key range invariants. First, add the key variables screening phase in the original method. By combining the dynamic filtering mechanism with the static reduction mechanism, the key variables set of the program are screened. Then, the values of the key variables in all successful test cases are counted to obtain the key range invariants. Finally, bug localization is performed by monitoring the values of the key variables in failure test cases. When we need to minimize the overhead of monitoring variables, we can use this method to ignore variables that are considered unimportant. The experimental results show that, the method can still maintain a good bug localization effect only monitoring the key variable set, which verifies the effectiveness of the method.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

References

  1. Yu, K., Lin, M.X.: Advances in automatic fault localization techniques. Chin. J. Comput. 34(8), 1411–1422 (2011)

    Article  Google Scholar 

  2. Patterson, D., et al.: Recovery oriented computing (ROC): motivation, definition, techniques, and case studies. Berkeley Computer Science, vol. 9, no. 2, pp. 14–16 (2002)

    Google Scholar 

  3. Xie, M., Yang, B.: A study of the effect of imperfect debugging on software development cost. IEEE Trans. Softw. Eng. TSE 29(5), 471–473 (2003)

    Article  Google Scholar 

  4. Santelices, R., Jones, J.A., Yu, Y., Harrold, M.J.: Lightweight fault-localization using multiple coverage types. In: International Conference on Software Engineering, ICSE 2009, pp. 56–66. IEEE, Vancouver (2009). https://doi.org/10.1109/ICSE.2009.5070508

  5. Cao, H.L., Jiang, S.J., Ju, X.L.: Survey of software fault localization. Comput. Sci. 41(2), 1–6 (2014)

    Google Scholar 

  6. Liu, X.: Research on optimization of fault localization with range invariant. Harbin Institute of Technology (2016)

    Google Scholar 

  7. Ernst, M.D., Notkin, D.: Dynamically discovering likely program invariants. IEEE Trans. Softw. Eng. 27(2), 99–123 (2000)

    Article  Google Scholar 

  8. Liu, S.K., Yang, X.H., Luo, J.Q., Liu, J.: Dynamically discovering likely program invariants based on the contract. Microcomput. Inf. 22(30), 233–235 (2006)

    Google Scholar 

  9. Racunas, P., Constantinides, K., Manne, S., Mukherjee, S.S.: Perturbation-based fault screening. In: High Performance Computer Architecture, HPCA 2007, Scottsdale, AZ, USA, pp. 169–180. IEEE Computer Society (2007). https://doi.org/10.1109/HPCA.2007.346195

  10. Hangal, S., Lam, M.S.: Tracking down software bugs using automatic anomaly detection. In: International Conference on Software Engineering, ICSE 2002, Orlando, FL, USA, pp. 291–301. IEEE (2002). https://doi.org/10.1145/581376.581377

  11. Abreu, R., González, A., Zoeteweij, P., van Gemund, A.J.C.: Using fault screeners for software error detection. In: Maciaszek, L.A., González-Pérez, C., Jablonski, S. (eds.) ENASE 2008. CCIS, vol. 69, pp. 60–74. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14819-4_5

    Chapter  MATH  Google Scholar 

  12. Santos, J., Abreu, R.: Lightweight automatic error detection by monitoring collar variables. In: Nielsen, B., Weise, C. (eds.) ICTSS 2012. LNCS, vol. 7641, pp. 215–230. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-34691-0_16

    Chapter  Google Scholar 

  13. Wang, R., Ding, Z., Gui, N., Liu, Y.: Detecting bugs of concurrent programs with program invariants. IEEE Trans. Reliab. 66(2), 425–439 (2017)

    Article  Google Scholar 

  14. Le, T.D.B., Lo, D., Goues, C.L., Grunske, L.: A learning-to-rank based fault localization approach using likely invariants. In: International Symposium on Software Testing and Analysis 2016, pp. 177–188. ACM, New York (2016). https://doi.org/10.1145/2931037.2931049

  15. Rui, A., Zoeteweij, P., van Gemund, A.J.C.: Automatic software fault localization using generic program invariants. In: ACM Symposium on Applied Computing 2008, Fortaleza, Ceara, Brazil, pp. 712–717. ACM (2008). https://doi.org/10.1145/1363686.1363855

  16. Pytlik, B., Renieris, M., Krishnamurthi, S., Reiss, S.P.: Automated fault localization using potential invariants. Computer Science, pp. 273–276 (2003)

    Google Scholar 

  17. Sahoo, S.K., Criswell, J., Geigle, C., Adve, V.: Using likely invariants for automated software fault localization. ACM SIGPLAN Not. 41(1), 139–152 (2013)

    Article  Google Scholar 

  18. Menzies, T., Owen, D., Richardson, J.: The strangest thing about software. Computer 40(1), 54–60 (2007)

    Article  Google Scholar 

  19. Masri, W., Assi, R.A.: Cleansing test suites from coincidental correctness to enhance fault-localization. In: Third International Conference on Software Testing, Verification and Validation 2010, Paris, France, pp. 165–174. IEEE (2010). https://doi.org/10.1109/ICST.2010.22

  20. Zong, F.F., Huang, H.Y., Ding, Z.H.: Software fault location based on double-times-locating strategy. J. Softw. 27(8), 1993–2007 (2016)

    MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Lin Ma or Zuohua Ding .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Ma, L., Ding, Z. (2018). Software Bug Localization Based on Key Range Invariants. In: Bu, L., Xiong, Y. (eds) Software Analysis, Testing, and Evolution. SATE 2018. Lecture Notes in Computer Science(), vol 11293. Springer, Cham. https://doi.org/10.1007/978-3-030-04272-1_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-04272-1_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-04271-4

  • Online ISBN: 978-3-030-04272-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics