• DocumentCode
    2357096
  • Title

    Method for designing and placing check sets based on control flow analysis of programs

  • Author

    Geoghegan, Sean J. ; Avresky, D.R.

  • Author_Institution
    Dept. of Comput. Sci., Texas A&M Univ., College Station, TX, USA
  • fYear
    1996
  • fDate
    30 Oct-2 Nov 1996
  • Firstpage
    256
  • Lastpage
    265
  • Abstract
    Proposes a formal approach for adding fault detection to software. An assertion-based formalism is used to represent algorithm specifications. This representation is then used to generate a flowgraph or decision-to-decision graph (ddgraph), which is used to construct an execution path tree. The information gained from this algorithm representation is used to aid in the design of software-based fault tolerance techniques. Algorithm-based fault tolerance (ABFT) techniques are used to detect data structure-corrupting faults and checks are added to detect program flow errors. Flowgraph and ddgraph representations provide information to predict future program flow from the current flow. During execution, the current program location is recorded, along with the expected flow. Checks are placed to verify that the program flow follows the predicted flow. Fault coverage has been estimated through experiments with SOFIT (SOftware-based Fault Injection Tool), and the data is presented to demonstrate the effectiveness of the method
  • Keywords
    data structures; program control structures; program diagnostics; program verification; software fault tolerance; software tools; trees (mathematics); SOFIT; algorithm representation; algorithm specifications; algorithm-based fault tolerance techniques; assertion-based formalism; check set placement; current program location; data structure-corrupting fault detection; decision-to-decision graph; execution path tree; fault coverage estimation; flowgraph; future program flow prediction; program control flow analysis; program flow error detection; software fault detection; software-based fault injection tool; Application software; Computer errors; Computer science; Data structures; Design methodology; Encoding; Fault detection; Fault tolerance; Hardware; Software algorithms;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Reliability Engineering, 1996. Proceedings., Seventh International Symposium on
  • Conference_Location
    White Plains, NY
  • Print_ISBN
    0-8186-7707-4
  • Type

    conf

  • DOI
    10.1109/ISSRE.1996.558838
  • Filename
    558838