Philosophies of Development and Testing

A Requirement Without a Consequence Is Just a Desire

In software development, we use requirements to state what must (or must not) be a part of the outcome of a project. We also use requirements to define the purpose of testing (e.g. “what is it that you expect to accomplish by testing”). Requirements show up in all the major development frameworks, albeit sometimes wearing different names (VSTS uses “Product Backlog Items” for Scrum, “User Stories” for Agile, and “Requirements” for CMMI).

However, consequences are rarely listed as part of the documentation in any of the models I have seen.