Fault Tolerance And Resistance To Subversion. Computers fail due to accidental or malicious activities. The system being designed must be able to recover from the traditional forms of failures such as crashes and software failures, as well as being able to protect itself from deliberate attempts to compromise it.