A system is robust if it can withstand arbitrary damage. There are many practical ways to design in robustness but there is no satisfactory measure of robustness. Reliability theory is a useful tool for examining the probability of failure for a pre-defined type of loading, however low probability-high consequence events may be missed. Whilst it is not easy to put forward a unified theory of robustness, one insight into the lack of robustness is gained by identifying how a system is vulnerable. If a system is vulnerable in any one way then it is not robust. Like robustness, vulnerability has been defined differently in different contexts.