The Golden Rules of Requirements
In order for business analysts to achieve real success with requirements, they must follow a basic set of “Golden Rules.” These simple rules are as follows:
- Identify and define objectives
- Objectives explain WHY the system is being created
- Qualified objectives identify the desired goals, or ROI, and specify constraints
- Verify the requirements against the objectives
- Validates accurate scope for high-level requirements
- Assures consistent focus for application rules
- Provides critical management tools for scope change decisions
- Repeats verification for every iteration of the requirements and design documents
- Apply scenarios and use cases against the requirements
- Mapping the requirements flow in a simple set of scenarios and use cases could expose gaps or ambiguities in requirements
- A scenario represents the possible actions performed by the user, by asking: “what if the user does …”
- A use case represents a task-oriented user view of the system and a full end-to-end unit of work, where the user could be a person or another system that interacts with this system but is outside the scope of this system
- Applying scenarios and use cases assures valid usability and that requirements are detailed enough to handle all possible use cases and scenarios
- Mapping the requirements flow in a simple set of scenarios and use cases could expose gaps or ambiguities in requirements
- Perform a consistency review
- If one person wrote it with a specific intent, and another person reads it differently, it is ambiguous.
Attributes of Great Requirements
While requirements may differ from analyst to analyst and project to project, there are specific key attributes, which demonstrate a high degree of requirement quality. As illustrated in Figure, these attributes are:
- Unambiguous—Understood by the reader as intended by the writer
- Deterministic—An outcome that can be predicted because all of its causes are either known or are the same as those of a previous event
- Concise—Uses exacting words to relay a very specific message
- Explicit—Uses specific, detailed descriptions to relay the exact message
- Consistently Worded—Utilizes consistent terminology and framework
- Logically Consistent—Follows a logically consistent path from start to finish with no missing data or elements at any point throughout the process
- Feasible—Practical, that is doable, from business, technical, and testing perspectives
- Complete—Contains enough detail to convey what the new system must do under all circumstances
- Accurate—Identifies the right requirements to meet business goals, drivers, and needs
Figure : Attributes of great requirements