How to Write Software Requirements that Suck
- Put too much in one document; ignore the audience; assume that one document will serve all purposes and completely specify the system.
- Don't establish a shared vocabulary used by clients and development team.
- Don't separate functional and non-functional requirements.
- Don't involve a designer or tech lead in the writing of the requirements.
- Don't use precise, consistent language.
- Don't separate workflow, rules, and business context.
- Focus entirely on how to get data into the system; don't consider where it goes, or how to get it back out.
- Focus on how to solve a problem, rather than what needs to be solved.
- Don't understand how to convert / migrate data from the old system.
- Don't create a concise summary, mission statement, or statement of work.
- Have the wrong people review the document; assume that one person from the client department has perfect understanding of all aspects of the new system.
- Declare victory once the first draft is done; don't plan for iterations or changes.
- Don't pay any attention to secondary clients or systems.
- Organize the information poorly; let rule definitions and data mingle and repeat themselves.
- Don't institute any change management procedures; allow anyone to change the requirements at any time and don't notify anyone when they do change.
- Assume that once the clients approve the requirements they won't change their mind.
- Don't break the requirements down into versions or releases.
- Don't prioritize the requirements; if you do prioritize, use some wacky scheme like priorities from 1 to 100.
- Don't provide the client any tools to visualize the end result; rely entirely on words to describe the requirements.
- Assume that everyone is comfortable reading enormous, really dense documents.
- Don't number the paragraphs.
- Focus entirely on the system's data, how it is structured; ignore workflow.
- Assume that you can write the document entirely based on interviews; don't bother to shadow the clients while they actually do the work.
0 Comments:
Post a Comment
<< Home