OOSAD Chapter 4
OOSAD Chapter 4
OOSAD Chapter 4
Chapter Four
Requirement Validation
4.1 Introduction
Requirements are continuously validated with the client and the user. Validation is a
critical step in the development process, given that both the client and the developer
are dependent on the system specification
Requirement validation involves checking if the specification is correct, complete,
consistent, unambiguous, and realistic.
A specification is correct if it represents the client’s view of the system (i.e.,
everything in the requirements model accurately represents an aspect of the system).
It is complete if all possible scenarios through the system are described, including
exceptional behavior (i.e., all aspects of the system are represented in the
requirements model).
The system specification is consistent if it does not contradict itself.
The system specification is unambiguous if exactly one system is defined (i.e., it is
not possible to interpret the specification two or more different ways).
Finally, it is realistic if the system can be implemented within constraints.
4.2 Requirements Validation and Verification
Validation (& Verification), is the process of checking whether the requirements,
as identified, do not contradict the expectations about the system of various
stakeholders and do not contradict each other.
It is Requirements Quality Control
Validation vs. Verification
Validation: “Am I building the right product?” checking a work product against
higher-level work products or authorities that frame this particular product.
• Ensures that the software being developed (or changed) will satisfy its
stakeholders.
A product test can only be conducted once most of the system is developed. It
also requires that the system be easily modifiable such that the results of the
usability test can be taken into account
4.4 Documenting requirements elicitation
The results of the requirements elicitation activity and the analysis activity are
documented in the Requirements Analysis Document (RAD).
This document completely describes the system in terms of functional and
nonfunctional requirements and serves as a contractual basis between the client
and the developers.
The audience for the RAD includes the client, the users, the project
management, the system analysts (i.e., the developers who participate in the
requirements), and the system designers (i.e., the developers who participate in
the system design).