Fault Localization Models in Debugging

Debugging is considered as a rigorous but important feature of software engineering process. Since more than a decade, the software engineering research community is exploring different techniques for removal of faults from programs but it is quite difficult to overcome all the faults of software programs. Thus, it is still remains as a real challenge for software debugging and maintenance community. In this paper, we briefly introduced software anomalies and faults classification and then explained different fault localization models using theory of diagnosis. Furthermore, we compared and contrasted between value based and dependencies based models in accordance with different real misbehaviours and presented some insight information for the debugging process. Moreover, we discussed the results of both models and manifested the shortcomings as well as advantages of these models in terms of debugging and maintenance.

[1]  Raymond Reiter,et al.  A Theory of Diagnosis from First Principles , 1986, Artif. Intell..

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

[3]  Peter Struss,et al.  Model-based and qualitative reasoning: An introduction , 1997, Annals of Mathematics and Artificial Intelligence.

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

[5]  Brian C. Williams,et al.  Diagnosing Multiple Faults , 1987, Artif. Intell..

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

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

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

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

[10]  Sandeep Kumar,et al.  A Decision Tree Regression based Approach for the Number of Software Faults Prediction , 2016, ACM SIGSOFT Softw. Eng. Notes.

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

[12]  Franz Wotawa,et al.  Applying Model-Based Diagnosis to Software Debugging of Concurrent and Sequential Imperative Programming Languages , 1996 .

[13]  Laurie A. Williams,et al.  Can traditional fault prediction models be used for vulnerability prediction? , 2011, Empirical Software Engineering.

[14]  Markus Stumptner,et al.  Analysing Models for Software Debugging , 2001 .

[15]  Kai-Yuan Cai,et al.  Software Defect and Operational Profile Modeling , 1998, The Kluwer International Series in Software Engineering.