A Model-Based Software Reasoning Approach to Software Debugging

  • Rui Abreu
  • Peter Zoeteweij
  • Arjan J. C. van Gemund
Part of the Studies in Computational Intelligence book series (SCI, volume 214)


Current model-based approaches to software debugging use static program analysis to derive a model of the program. In contrast, in the software engineering domain diagnosis approaches are based on analyzing dynamic execution behavior. We present a model-based approach where the program model is derived from dynamic execution behavior, and evaluate its diagnostic performance on the Siemens software benchmark, extended by us to accommodate multiple faults. We show that our approach outperforms other model-based software debugging techniques, which is partly due to the use of De Kleer’s intermittency model to account for the variability of software component behavior.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abreu, R., Zoeteweij, P., van Gemund, A.J.C.: On the accuracy of spectrum-based fault localization. In: Proc. TAIC PART 2007 (2007)Google Scholar
  2. 2.
    Abreu, R., Zoeteweij, P., van Gemund, A.J.C.: A Dynamic Modeling Approach to Software Multiple-fault Localization. In: Proc. DX 2008 (2008)Google Scholar
  3. 3.
    Abreu, R., Zoeteweij, P., van Gemund, A.J.C.: An observation-based model for fault localization. In: Proc. WODA 2008 (2008)Google Scholar
  4. 4.
    De Kleer, J.: Diagnosing intermittent faults. In: Proc. DX 2007 (2007)Google Scholar
  5. 5.
    De Kleer, J., Mackworth, A.K., Reiter, R.: Characterizing diagnoses and systems. Artif. Intell. 56, 197–222 (1992)zbMATHCrossRefGoogle Scholar
  6. 6.
    De Kleer, J., Williams, B.C.: Diagnosing multiple faults. Artif. Intell. 32(1), 97–130 (1987)zbMATHCrossRefGoogle Scholar
  7. 7.
    Groce, A.: Error explanation with distance metrics. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 108–122. Springer, Heidelberg (2004)Google Scholar
  8. 8.
    Jones, J.A., Harrold, M.J.: Empirical evaluation of the tarantula automatic fault-localization technique. In: Proc. ASE 2005 (2005)Google Scholar
  9. 9.
    Liu, C., Yan, X., Fei, L., Han, J., Midkiff, S.P.: Sober: Statistical model-based bug localization. In: Proc. ESEC/FSE-13Google Scholar
  10. 10.
    Mayer, W., Stumptner, M.: Evaluating models for model-based debugging. In: Proc. ASE 2008 (2008)Google Scholar
  11. 11.
    Pucel, X., Bocconi, S., Picardi, C., Dupre, D., Massuyes, L.: Diagnosability analysis for web services with constraint-based models. In: Proc. DX 2007 (2007)Google Scholar
  12. 12.
    Reiter, R.: A theory of diagnosis from first principles. Artif. Intell. 32(1), 57–95 (1987)zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Renieris, M., Reiss, S.P.: Fault localization with nearest neighbor queries. In: Proc. ASE 2003 (2003)Google Scholar
  14. 14.
    Wotawa, F., Stumptner, M., Mayer, W.: Model-based debugging or how to diagnose programs automatically. In: Hendtlass, T., Ali, M. (eds.) IEA/AIE 2002. LNCS, vol. 2358, p. 746. Springer, Heidelberg (2002)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Rui Abreu
    • 1
  • Peter Zoeteweij
    • 1
  • Arjan J. C. van Gemund
    • 1
  1. 1.Embedded Software LabDelft University of TechnologyThe Netherlands

Personalised recommendations