Consistency in writing requirements is important on two levels – strategic and tactical. Tactically, you need to write your requirements with grammatical consistency, so that potentially ambiguous statements will be interpreted similarly. You also need to write requirements that are logically consistent, so that you avoid “impossible” requirements and gaps of unspecified meaning. Strategically, your requirements need to reflect a focus on markets and problems that are consistent with your business objectives and the vision your company is manifesting
Consistent Requirements – Revisiting
Thirteen hundred ninety-six days ago (grin), I wrote about the importance of grammatical and logical consistency in writing requirements – an emphasis on the tactical aspects of consistency in writing requirements. This article adds a brief discussion on the consistency of the requirements you write. This article is the sixth update of a series of articles on the rules of writing requirements.
Writing requirements is not like other forms of writing in one key way – you don’t want to vary the terms and language you use in your requirements documents. Remember the critiques you received when you studied writing in school for a moment. Your teacher told you not to repeatedly use the same word, but to use synonyms for that word – walked, ambled, stepped, capered, etc. Those synonyms allowed you to create imagery and helped your readers avoid boredom. Your teacher encouraged you to use metaphors that created even stronger imagery – flew, slogged, muddled, danced, etc. Those metaphors allowed you to infuse emotion into your narrative and helped your writing come to life for your readers.
As Yoda said, “Unlearn, you must!”
Requirements are not a narrative. Your primary goal is not entertainment, it is enlightenment. Don’t use varying terms to describe the same action or object – use the same terms over and over again. Don’t vary the modifiers of terms except when you are explicitly varying the context and referenced items – and then make certain that you use the same modifiers consistently for the same context and references. When dealing with anything that has some complexity, provide a figure or diagram (possibly in an appendix or glossary) that explains the explicit meanings of each term and term-modifier.
For example, if you are defining requirements for a classification system for authored works, be specific about the definitions of author, editor, publisher, and reviewer. You may also need to define a term that is used collectively for all of them, like creators.
You must consistently use the same voice – ideally the active voice. And of course, you must not use ‘the system shall.’ [There’s a great debate in the comments on that article – one thing to note – all of the people on both sides of the debate emphatically expressed their consistent use of one form or the other.]
Logical inconsistency most commonly comes from expressing the same requirement twice. If you use the exact same words to express a requirement twice, you’re being redundant and repetitive (grin #2). Most likely, the second expression of the same requirement is both unintended, and worded differently – running the risk that it will be interpreted differently, and therefore inconsistently.
You will also create logically inconsistent requirements when you express mutually exclusive requirements. These can be directly incompatible, like writing “the system must infer the value…” and “the user must provide the value…” Or they can be indirectly inconsistent like “the animal must bark” and “the animal must be a cat” – which is logically inconsistent because cats cannot bark (thereby making at least one of the requirements infeasible).
One of the elements that defines valuable requirements is that they “support your business strategy.” In the context of value, that means you have created a decomposition model for how you intend to realize value – manifesting a strategy or a component of a strategy.
A strategy, however is not always defined by a single measure. Your strategy could include financial metrics and targets, as well as a stated mission regarding customer service levels, and a long-term investment that is hoped to eventually return long-term rewards. Your requirements, while not only completely defining the mechanisms for achieving value, must also be consistent with the other elements of your strategy.
For example, you should not take advantage of uninformed costumers when you have a core value of integrity – regardless of how effective that may be at meeting financial goals. The requirements that articulated the (subordinate) goal of grifting your customers (to maximize revenue) would be inconsistent with the goal of operating with integrity.
Consistent Requirements are requirements that
- Are not in conflict with any of your strategic objectives, vision, or corporate goals
- Avoid logical inconsistencies
- Utilize consistent structure, terms, and grammar