NASA Logo

NTRS

NTRS - NASA Technical Reports Server

Back to Results
Software Fault Tolerance: A TutorialBecause of our present inability to produce error-free software, software fault tolerance is and will continue to be an important consideration in software systems. The root cause of software design errors is the complexity of the systems. Compounding the problems in building correct software is the difficulty in assessing the correctness of software for highly complex systems. After a brief overview of the software development processes, we note how hard-to-detect design faults are likely to be introduced during development and how software faults tend to be state-dependent and activated by particular input sequences. Although component reliability is an important quality measure for system level analysis, software reliability is hard to characterize and the use of post-verification reliability estimates remains a controversial issue. For some applications software safety is more important than reliability, and fault tolerance techniques used in those applications are aimed at preventing catastrophes. Single version software fault tolerance techniques discussed include system structuring and closure, atomic actions, inline fault detection, exception handling, and others. Multiversion techniques are based on the assumption that software built differently should fail differently and thus, if one of the redundant versions fails, it is expected that at least one of the other versions will provide an acceptable output. Recovery blocks, N-version programming, and other multiversion techniques are reviewed.
Document ID
20000120144
Acquisition Source
Langley Research Center
Document Type
Technical Memorandum (TM)
Authors
Torres-Pomales, Wilfredo
(NASA Langley Research Center Hampton, VA United States)
Date Acquired
September 7, 2013
Publication Date
October 1, 2000
Subject Category
Computer Programming And Software
Report/Patent Number
NAS 1.15:210616
NASA/TM-2000-210616
L-18034
Funding Number(s)
PROJECT: RTOP 522-61-21-03
Distribution Limits
Public
Copyright
Work of the US Gov. Public Use Permitted.
No Preview Available