9/22 Intro/overview, terminology, concepts, design philosophy, Therac-25 9/27 Systems overview, systems concepts vocabulary (A) 9/29 Hazard analysis (D) 10/4 Fault tree analysis (D) 10/6 Design for failure, orthogonal mechanisms (A) 10/11*Requirements spec (D) 10/13*Spec of reactive systems (D) 10/18 Model checking (D) 10/20 Spec checking using Z (D) 10/25+Theorem proving (D) 10/27 Fault isolation/containment (A) 11/1* Language-based mechanisms (G) 11/3* Algs for F/T (D) 11/8 Practical F/T, TTP (D?) 11/10 Aspects of redundancy, consensus algorithms (G) 11/15 Transactions, ACID/BASE, announce/listen protocols (A) 11/17 Reliability as an OS abstraction [Peter Chen's work, et al] (A) 11/22 Introspective/self-repairing systems (G) 11/24 11/29 12/1 12/6