Abidemi Stephanie Famuyide wrote a post a few days ago title
“15 Tips for Writing Better Requirements“.
I don’t agree with all of the tips. However there is a lot of good stuff in there. And I particularly like the last one that describes ways to word a requirement.
- Define one requirement at a time. This implies that the requirement should be atomic. Don’t be tempted to use conjunctions like and, or, also, with and the like. This is particularly important because it can prevent developers and testers from missing requirements.
- Avoid using let-out clauses like but, except, if necessary.
- Each requirement must form a complete sentence with no buzzwords or acronyms
- Each requirement must contain a subject (user/system) and a predicate (intended result, action or condition).
- Avoid describing how the system will do something. Only discuss what the system will do. Refrain from system design; Normally, if you catch yourself mentioning field names and software objects in the requirements specification document, you’re most likely in the wrong zone.
- Avoid ambiguity caused by using acronyms like etc, approx. and the like
- Avoid the use of indefinable terms like user-friendly, versatile, robust, approximately, minimal impact. Such terms often mean different things to different people
- Avoid rambling, using unnecessarily long sentences or making references to unreachable documents.
- Do not speculate; avoid drawing up wish lists of features that are impossible to achieve. Saying you want a system to handle all unexpected failures is wishful thinking since no system will ever be a 100%
- Avoid duplication and contradictory statements
- Do not express suggestions or possibilities. You can identify these wherever you see statements like might, may, could, ought, etc
- Avoid creating a jigsaw puzzle where requirements are distributed across documents, causing you cross-reference documents. It can make your requirements specification document extremely difficult to read
- Do not forward reference or refer to a requirement that is yet to be defined. Again, your objective is to make the document as much of an easy read as you can
- Use active or positive statements such as “The system shall…” instead of stating “the system shall not…”
- “Shall“ should be used where requirements are being stated, “will” should be used to represent statements of facts; while “should” represents a goal that needs to be achieved
Go and visit her site “Business Analyst Learnings” where she invites you to “rub minds”.
(There is oodles of great information and resources related to Business Analysis.)