Tuesday, June 13, 2006

Why Testable Requirements?

As I've mentioned before, all requirements should be testable in principle (but not necessarily directly testable in practice). Why is it important they be testable in principle?

First, requirements that are testable in principle are precise and unambigous. Testability in principle is a conceptual property of a requirement. You don't have to consult with your testers to determine whether a requirement is testable in principal. Instead, you analyze the meaning of the requirement to determine whether the question "does the product satisfy requirement x" has a yes or no answer, even if it may not be cost effective or practical to definitively determine the answer before product release.

Second, requirements that are testable in principle are, at the very least, indirectly testable in practice. Even if it can't directly implement or perform the test the requirement prescribes, your testing team can always devise simulations or other, related tests that give you a high degree of confidence the product meets the requirements.

No comments :