CS 435 - Week 5 Lecture 2 - 2014-02-20
* discussed first 3 project milestones --
they are now posted along with these notes
* note that Homework 5 will NOT come out
tonight, so you can get 1st Project Milestone
in by NEXT FRIDAY FEB 28, 11:59 pm
----------------
Jalote Chapter 3 - Software Requirements Analysis
and Specification
* Software Requirements Analysis
Software Requirements Specification (SRS)
* Jalote's contention:
a high-quality SRS is a prerequisite to
high-quality software
* requirement:
IEEE definition: (from Jalote p. 37)
1) a condition or capability needed by a user
to solve a problem or achieve an objective
2) A condition or capability that must be met
or possessed by a system ... to satisfy
a contract, standard, specification,
or other formally imposed document [another
IEEE technical report]
* one important characteristic of a requirements
specification:
* describes WHAT the proposed software should
do without describing HOW the software will
do it
* desirable [pie-in-the-sky, perfect-world]
characteristics of an SRS
* correct
* an SRS is correct if every requirement
in it represents something required
in the final system
* complete
* an SRS is complete if everything the
software is supposed to do and the
responses of the software to all
classes of input data are specified
in the SRS
* unambiguous
* an SRS is unambiguous if and only if
every requirement stated has one and
only one interpretation
* verifiable
* an SRS is verifiable if and only if
every stated requirement is verifiable
* consistent
...there is no requirement in the SRS
that conflicts with another
* ranked for importance and/or stability