Isolating Failure Causes

  • Frank RoginEmail author
  • Rolf Drechsler


The so far introduced deductive, observational, and inductive techniques already facilitate and accelerate debugging of system models. However, the automatic determination of actual failure causes is not achieved by these techniques. This chapter proposes an experimentation technique that uses a series of experiments in terms of multiple controlled simulation runs of the fully integrated system. There, this debugging technique aims at an automatic and systematic isolation of failure causes (see Figure 6.1).


  1. Zel05.
    A. Zeller. WHY PROGRAMS FAIL - A Guide to Systematic Debugging. Morgan Kaufmann, 2005.Google Scholar
  2. ZH02.
    A. Zeller and R. Hildebrandt. Simplifying and Isolating Failure-inducing Input. IEEE Transactions on Software Engineering, 28(2):183–200, 2002.CrossRefGoogle Scholar
  3. MS06.
    G. Misherghi and Z. Su. HDD: Hierarchical Delta Debugging. In International Conference on Software Engineering, pp. 142–151, 2006.Google Scholar
  4. CS+06.
    E. Cheung, P. Satapathy, Vi. Pham, H. Hsieh, and Xi. Chen. Runtime Deadlock Analysis of SystemC Designs. In IEEE International High-Level Design Validation and Test Workshop, pp. 187–194, 2006.Google Scholar
  5. CD+05.
    Xi Chen, A. Davare, H. Hsieh, A. Sangiovanni-Vincentelli, and Y. Watanabe. Simulation Based Deadlock Analysis for System Level Designs. In Design Automation Conference, pp. 260–265, 2005.Google Scholar
  6. SB+97.
    S. Savage, M. Burrows, G. Nelson, P. Sobalvarro, and T. Anderson. Eraser: A Dynamic Data Race Detector for Multithreaded Programs. ACM Transactions on Computer Systems, 15(4):391–411, 1997.CrossRefGoogle Scholar
  7. PS03.
    E. Pozniansky and A. Schuster. Efficient On-the-Fly Data Race Detection in Multithreaded C++ Programs. In Principles and Practice of Parallel Programming, pp. 179–190, 2003.Google Scholar
  8. YRC05.
    Y. Yu, T. Rodeheffer, and W. Chen. RaceTrack: Efficient Detection of Data Race Conditions via Adaptive Tracking. ACM SIGOPS Operating Systems Review, 39(5):221–234, 2005.CrossRefGoogle Scholar
  9. HJM04.
    T.A. Henzinger, R. Jhala, and R. Majumdar. Race Checking by Context Inference. In International Conference on Programming Language Design and Implementation, pp. 1–13, 2004.Google Scholar
  10. Sto00.
    S.D. Stoller. Model-Checking Multi-threaded Distributed Java Programs. In International SPIN Workshop on SPIN Model Checking and Software Verification, pp. 224–244, 2000.Google Scholar
  11. EA03.
    M. Das, S. Lerner, and M. Seigle. ESP: Path-Sensitive Program Verification in Polynomial Time. In Conference on Programming Language Design and Implementation, pp. 57–68, 2002.Google Scholar
  12. FF01.
    H. Foster. Seven Habits of Effective Formal Verification Planning. In SOCcentral, [Online], accessed May 2008.
  13. SBR02.
    A. Siebenborn, O. Bringmann, and W. Rosenstiel. Worst-case Performance Analysis of Parallel, Communicating Software Processes. In International Workshop on Hardware/Software Codesign, pp. 37–42, 2002.Google Scholar
  14. Zel08.
    A. Zeller. Using Delta Debugging - A short tutorial. [Online], accessed October 2008.
  15. IIS.
    Fraunhofer IIS. “Modeling SystemC” training class. [Online], accessed October 2008.

Copyright information

© Springer Science+Business Media B.V. 2010

Authors and Affiliations

  1. 1.Institutsteil EntwurfsautomatisierungFraunhofer - Institut für Integrierte SchaltungenDresdenGermany
  2. 2.Universität Bremen AG RechnerarchitekturBremenGermany

Personalised recommendations