ABSTRACT
A developers ability to successfully debug a fault is directly related to their ability to comprehend the fault. Notwithstanding improvements in software-maintenance automation, this fault comprehension task remains largely manual and time consuming. I propose an automated approach to describe software faults, thus ameliorating comprehension and reducing manual effort. My approach leverages dynamic analysis, fault localization, and source-code mining to produce a succinct, natural-language fault summary.
- T. Alrahem, A. Chen, N. DiGiuseppe, J. Gee, S.-P. Hsiao, T. P. Sean Mattox, and I. G. Harris. Interstate: A stateful protocol fuzzer for sip. In Defcon 15, 2007.Google Scholar
- D. Andrzejewski, A. Mulhern, B. Liblit, and X. Zhu. Statistical debugging using latent topic models. In S. Matwin and D. Mladenic, editors, European Conference on Machine Learning, pages 17–21, Warsaw, Poland, 2007. Google ScholarDigital Library
- A. Babenko, L. Mariani, and F. Pastore. Ava: Automated interpretation of dynamically detected anomalies. In Proceedings of International Symposium on Software Testing and Analysis, 2009. Google ScholarDigital Library
- N. Bettenburg, S. Just, A. Schröter, C. Weiss, R. Premraj, and T. Zimmermann. What makes a good bug report? In Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering, SIGSOFT ’08/FSE-16, pages 308–318, New York, NY, USA, 2008. ACM. Google ScholarDigital Library
- F. Deng, N. DiGiuseppe, and J. A. Jones. Constellation visualization: Augmenting program dependence with dynamic information. In Visualizing Software for Understanding and Analysis (VISSOFT), 2011 6th IEEE International Workshop on, pages 1–8. IEEE, 2011.Google Scholar
- F. Deng and J. A. Jones. Inferred dependence coverage to support fault contextualization. In Automated Software Engineering (ASE), 2011 26th IEEE/ACM International Conference on, pages 512–515. IEEE, 2011. Google ScholarDigital Library
- N. DiGiuseppe and J. A. Jones. Fault interaction and its repercussions. In Software Maintenance (ICSM), 2011 27th IEEE International Conference on, pages 3–12. IEEE, 2011. Google ScholarDigital Library
- N. DiGiuseppe and J. A. Jones. On the influence of multiple faults on coverage-based fault localization. In Proceedings of the 2011 International Symposium on Software Testing and Analysis, pages 210–220, 2011. Google ScholarDigital Library
- N. DiGiuseppe and J. A. Jones. Concept-based failure clustering. In Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering. ACM, 2012. Google ScholarDigital Library
- N. DiGiuseppe and J. A. Jones. Semantic fault diagnosis: automatic natural-language fault descriptions. In Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering, page 23. ACM, 2012. Google ScholarDigital Library
- N. DiGiuseppe and J. A. Jones. Software behavior and failure clustering: An empirical study of fault causality. In Software Testing, Verification and Validation (ICST), 2012 IEEE Fifth International Conference on, pages 191–200. IEEE, 2012. Google ScholarDigital Library
- N. DiGiuseppe and B. Nardi. Real genders choose fantasy characters: Class choice in world of warcraf. First Monday, 12(5), 2007.Google Scholar
- D. J. Gilmore. Models of debugging. Acta Psychologica, 78(1):151–172, 1991.Google ScholarCross Ref
- S. Grant, J. R. Cordy, and D. Skillicorn. Automated concept location using independent component analysis. In 15th Working Conference on Reverse Engineering, 2008., pages 138–142, 2008. Google ScholarDigital Library
- I. G. Harris, T. Alrahem, A. Chen, N. DiGiussepe, J. Gee, S.-P. Hsiao, S. Mattox, T. Park, S. Selvaraj, A. Tam, and M. Carlsson. Security testing of session initiation protocol implementations. ISeCure, The ISC International Journal of Information Security, 1(2):91–103, 2009.Google Scholar
- L. Jiang and Z. Su. Context-aware statistical debugging: from bug predictors to faulty control flow paths. In Proceedings of International Conference on Automated Software Engineering, pages 184–193, 2007. Google ScholarDigital Library
- A. Kuhn, S. Ducasse, and T. G´ırba. Semantic clustering: Identifying topics in source code. Inf. Softw. Technol., 49:230–243, 2007. Google ScholarDigital Library
- S. K. Lukins, N. A. Kraft, and L. H. Etzkorn. Bug localization using latent dirichlet allocation. Information and Software Technology, 52(9), 2010. Google ScholarDigital Library
- J. I. Maletic and A. Marcus. Supporting program comprehension using semantic and structural information. In Proceedings of International Conference on Software Engineering, 2001. Google ScholarDigital Library
- W. Masri. Fault localization based on information flow coverage. Software Testing, Verification and Reliability, 20(2):121–147, 2010. Google ScholarDigital Library
- A. von Mayrhauser and A. M. Vans. Program understanding behavior during debugging of large scale software. In Papers presented at the seventh workshop on Empirical studies of programmers, pages 157–179. ACM, 1997. Google ScholarDigital Library
Index Terms
- Automatically describing software faults
Recommendations
A Framework for Assessing Dependability in Distributed Systems with Lightweight Fault Injectors
IPDS '00: Proceedings of the 4th International Computer Performance and Dependability SymposiumMany fault injection tools are available for dependability assessment. Although these tools are good at injecting a single fault model into a single system, they suffer from two main limitations for use in distributed systems: (1) no single tool is ...
Revisit of automatic debugging via human focus-tracking analysis
ICSE '16: Proceedings of the 38th International Conference on Software EngineeringIn many fields of software engineering, studies on human behavior have attracted a lot of attention; however, few such studies exist in automated debugging. Parnin and Orso conducted a pioneering study comparing the performance of programmers in ...
On the influence of multiple faults on coverage-based fault localization
ISSTA '11: Proceedings of the 2011 International Symposium on Software Testing and AnalysisThis paper presents an empirical study on the effects of the quantity of faults on statistical, coverage-based fault localization techniques. The former belief was that the effectiveness of fault-localization techniques was inversely proportional to the ...
Comments