Title: Software Reliability Through Fault-Avoidance and Fault-Tolerance