05-09-2012, 05:13 PM
Software Requirements Analysis and Specification
3-Requirements.ppt (Size: 199.5 KB / Downloads: 33)
Background
Problem of scale is a key issue for SE
For small scale, understand and specifying requirements is easy
For large problem - very hard; probably the hardest, most problematic and error prone
Input : user needs in minds of people
Output : precise statement of what the future system will do
Identifying and specifying req necessarily involves people interaction
Cannot be automated
Requirement (IEEE)= A condition or capability that must be possessed by a system
Req. phase ends with a software requirements specification (SRS) document
SRS specifies what the proposed system should do
Need for SRS
SRS establishes basis of agreement between the user and the supplier.
Users needs have to be satisfied, but user may not understand software
Developers will develop the system, but may not know about problem domain
SRS is the medium to bridge the commn. gap and specify user needs in a manner both can understand
Helps user understand his needs.
users do not always know their needs
must analyze and understand the potential
the goal is not just to automate a manual system, but also to add value through IT
The req process helps clarify needs
SRS provides a reference for validation of the final product
Clear understanding about what is expected.
Validation - “ SW satisfies the SRS “
Requirements Process
Sequence of steps that need to be performed to convert user needs into SRS
Process has to elicit needs and requirements and clearly specifies it
Basic activities
problem or requirement analysis
requirement specification
validation
Analysis involves elicitation and is the hardest
Problem Analysis
Aim: to gain an understanding of the needs, requirements, and constraints on the software
Analysis involves
interviewing client and users
reading manuals
studying current systems
helping client/users understand new possibilities
Like becoming a consultant
Must understand the working of the organization , client and users
Characteristics…
Correctness
Each requirement accurately represents some desired feature in the final system
Completeness
All desired features/characteristics specified
Hardest to satisfy
Completeness and correctness strongly related
Unambiguous
Each req has exactly one meaning
Without this errors will creep in
Important as natural languages often used