Using abstract dependences to localize faults from procedural programs

Use of fault localization in control engineering where engineers often employ the procedural programming paradigm. Often control software is safety-critical and thus detection but also localization of bugs is uttermost important. Detecting and locating faults is one of the most important phase of Software Engineering. Many efforts have been taken to improve software development and to prevent faults. But still software faults pose that most challenging problems to software engineers.This article makes use of abstract dependencies between program variables for locating faults in programs. We motivate the underline theory and give experimental results. Our fault localization model is based on previous work that uses the abstract dependencies for fault detection. In this paper we introduce a model for method calls including parameter substitution, global variables and the return statement of methods. The results show that our model is practically applicable in the field of software debugging.

[1]  Franz Wotawa,et al.  Using abstract dependencies in debugging ∗ , 2022 .

[2]  Ron I. Kuper Dependency-Directed Localization of Software Bugs , 1989 .

[3]  Franz Wotawa,et al.  Fault Localization Based on Abstract Dependencies , 2005, IEA/AIE.

[4]  Daniel Jackson Aspect: detecting bugs with abstract dependences , 1995, TSEM.

[5]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[6]  Markus Stumptner,et al.  Model-Based Diagnosis of Hardware Designs , 1999, Artif. Intell..

[7]  Eugene H. Spafford,et al.  Debugging with dynamic slicing and backtracking , 1993, Softw. Pract. Exp..

[8]  Franz Wotawa,et al.  On the relationship between model-based debugging and program slicing , 2002, Artif. Intell..

[9]  William Lewis Johnson,et al.  Intention-based diagnosis of errors in novice programs (program understanding, debugging, intelligent computer-aided instruction) , 1986 .

[10]  Markus Stumptner,et al.  Using Design Information to Identify Structural Software Faults , 2001, Australian Joint Conference on Artificial Intelligence.

[11]  Markus Stumptner,et al.  Extending diagnosis to debug programs with exceptions , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[12]  Lee A. Gladwin,et al.  Intention-Based Diagnosis of Novice Programming Errors , 1987, IEEE Expert.

[13]  Franz Wotawa,et al.  Model-Based Diagnosis or Reasoning from First Principles , 2003, IEEE Intell. Syst..

[14]  Peter Fritzson,et al.  Generalized algorithmic debugging and testing , 1991, LOPL.

[15]  Franz Wotawa Debugging Hardware Designs Using a Value-Based Model , 2004, Applied Intelligence.

[16]  Markus Stumptner,et al.  Model-Based Debugging of Java Programs , 2000, AADEBUG.

[17]  Franz Wotawa,et al.  Introducing Alias Information into Model-Based Debugging , 2004, ECAI.