- the functions should be specified and well-defined
- References are complete
- Tools and other relevant documentations are included
Completeness
This criteria requires that the software specification contains all the necessary artifacts needed to provide a standard information system.
Consistency
This requires that the external specification should be consistent with the internal specification, which means that requirements would be traceable. It also requires that there is not ambiguity in the specification document. Also a particular requirement should not be in conflict with other requirements.
Verifiability
Specification should be specific, unambiguous and quantifiable. It should have the means to prove that the system satisfies the specified requirements.
Feasibility
This means that the based on the foreseeable possibilities, the software could be implemented. For the specification to be feasible:
- There should be enough resources to follow through
- It should be usable at the end
- It should be maintainable
- Specification should take risks into consideration
Techniques for Software Verification of Software Requirements Specification
- Manual Review
- Tool Support
- Planing: In the planning step, the review criteria in defined and roles are allocated to the members of the team
- Kick-off: Documents are distributed to all members clearly explaining the objectives of the planned review
- Individual Preparations: Various specification artifacts are examined and relevant information such as possible defects and questions are outlined
- Review Meeting: This is the actual meeting where the team discusses based on the available information and the outcomes are documented
- Rework: This step involves fixing defects and updating the the progress
- Follow-up: Checking the progress and rework carried out.