skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Abstraction and the methodical development of fault-tolerant software

Thesis/Dissertation ·
OSTI ID:7065437

The reliable operation of software is a factor of increasing importance with the use of computers for critical functions. Software in general is demonstrably unreliable, particularly in the presence of external failures. Software that continues to provide reliable, if degraded, service in spite of external failures is termed fault-tolerant. Fault-tolerant software uses redundancy in code and data to recover from failures. Because few tools are available to guide the introduction of redundancy for the most cost-effective improvement in reliability, an ad hoc approach is commonly used. Unfortunately, such an approach cannot guarantee that the most serious potential failures have even been recognized. There is, therefore, a need for a methodical approach to deciding where to introduce redundancy. Abstraction has provided a foundation for the methodical development of correct software. As a conceptual tool, it simplifies the structure of software and supports both the precise specification of its behavior in the absence of failures and the ease of reasoning about it. This thesis provides a foundation for the methodical development of fault-tolerant software, using abstraction as the basis for describing both failures and the behavior of software in the presence of those failures.

Research Organization:
Carnegie-Mellon Univ., Pittsburgh, PA (USA)
OSTI ID:
7065437
Resource Relation:
Other Information: Thesis (Ph. D.)
Country of Publication:
United States
Language:
English