Failure assessment encompasses the identification and characterization both of potential failure mechanisms in systems under development and of actual failure occurrences in operational systems. This paper presents several of the most widely used and useful techniques for failure assessment across the system lifecycle with an emphasis on the role of software. For each technique the paper descri...