Learning Objectives

  • Define the attributes of dependability and security:
    • availability
    • confidentiality
    • integrity
    • maintainability
    • reliability
    • safety
  • Illustrate the relationship among the attributes of dependability and security
  • Contrast the terms fault, error, and failure
  • List strategies to achieve dependability in the face of component failures
  • List the advantages of using formal methods in software development

How to Complete this Lesson

Complete the following learning activities: (2.75–3 hours total)

  1. Read Dependability (5 minutes)
  2. Watch Dependability (9 minutes)
  3. Read the following in Software Engineering:
    • Chapter 10: Dependable Systems (75–90 minutes)
      • Dependability properties
      • Redundancy and diversity
      • Dependable processes (skim)
      • Formal methods and system dependability (skim)
    • Chapter 12: Safety Engineering (15–30 minutes)
      • Safety-critical systems
  4. Watch Availability and Measuring Reliability (8 minutes)
  5. Faults, Errors, and Failures and Example (4 minutes)
  6. Participate in the synchronous session during the class meeting time (optional)
  7. Complete the quiz (5–8 minutes)
  8. Work on the project sprint (60 minutes)

Due

As a reminder, the following is due this lesson:

Resources

Further Reading

Avizienis et al., “Basic Concepts and Taxonomy of Dependable and Secure Computing,” IEEE Transactions on Dependable and Secure Computing, Vol. 1, No. 1, pp. 11–33, 2004

All Circuits are Busy Now: The 1990 AT&T Long Distance Network Collapse