We can define bad requirements using the Seven sins of the specifier (Meyer, 1985):
- Noise: irrelevant information
- Silence: the problem has a feature that is not mentioned by the text
- Over-specification: specification of a solution to the problem, not the problem
- Contradiction: text contains elements that describe the same feature in incompatible ways
- Ambiguity: text can be interpreted in different, mutually incompatible ways
- Forward reference: text uses a feature that is not defined until later
- Wishful thinking: description of a problem does not permit realistic validation