Week 3 - Software Fault Tolerance Flashcards
What is a detector?
A class of program component that asserts the validity of a predicate in a running program
What is a corrector?
A class of program that imposes a given predicate on a running program
Give an example of a detector
Run time checks
Give an example of a corrector
Exception handlers
What is forward error recovery?
Upon detection of an error, program attempts to get into a state which is no longer erroneous
What is backward error recovery?
Upon detection of an error program rolls back to a previously recorded good point
What is a recovery line?
A recovery line is a set of checkpoints across all processes to which the programs can be rolled back
What is N version programming?
The independent generation and utilisation of N functionally equivalent programs, where N >= 2. Typically uses majority voting for error detection.
When does N version programming not work?
If all versions fail on the same inputs or in similar ways
What is the coverage of dependability mechanisms?
The ratio of number of test cases successfully passed to the total number of test cases