CHAPTER 3        Errors, Faults, and Hazards

Learning objectives of this chapter are to understand:

•  The distinction between hazard, error, and fault.

•  The basic approaches to fault treatment.

•  The difference between degradation, design, and Byzantine faults, and which types affect software.

•  The concept and importance of anticipating faults.

•  The dependability engineering process using hazards, errors, and faults, and what can be done to prevent failures.

3.1 Errors

In the last chapter, we saw that our goal is to avoid service failures. But before considering the engineering techniques that can be used to build computer systems that meet defined dependability requirements, we need to look carefully at the notion of failure again. ...

Get Fundamentals of Dependable Computing for Software Engineers now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.