Software Requirements Analysis and Specification
IEEE defines a requirement as “(1)A condition of capability needed by a user to solve a problem or achieve anobjective; (2) A condition or a capability that must be met or possessed by asystem ... to satisfy a contract, standard, specification, or other formallyimposed document”
Approaches like agile require only high-levelrequirements to be specified in written form—detailed requirements areelicited through interaction with the customer in the iteration the requirementis to be implemented and directly reflected in software.
Other approaches prefer that the requirements are specifiedprecisely. In such situations, the goal of the requirements activity is toproduce the Software Requirements Specification (SRS) that describes what theproposed software should do without describing how the software will do it.
3.1 Value of a Good SRS
– An SRS establishes the basis for agreement between theclient and the supplier on what the software product will do.
– An SRS provides a reference for validation of the finalproduct.
– A high-quality SRS is a prerequisite to high-qualitysoftware.
– A high-quality SRS reduces the development cost.
3.2 Requirement Process
The requirements process typically consists of three basictasks: problem or requirement analysis, requirements specification, and requirementsvalidation.