Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 13

Writing SRS

NL Hsueh
Well-wrtten SRS
• Correct
• Unambiguous
• Complete
• Verifiable
• Consistent
• Understandable by customer
• Modifiable
• Traced
• Traceable
• Design independent
• Annotated
• Concise
• organized
Correct
• An SRS is correct if and only if
– Every requirement stated therein represents
something required of the system to be built
Unambiguous
• An SRS is unambiguous if and only if
– Every requirement stated therein has only one
intepretation
Complete
• An SRS is complete if
– Eveything that the software is supposed to do
is included in the SRS
– All pages are numbered
• Figures, tables are numbered, named, and
referenced
– No secion are marked “to be determined”
(TBD)
Verifiable
• An SRS is verifiable iff
– Every requirement state therein is verifiable

• A requirement is verifiable iff


– There exists some finite cost effective process
with which a person or machine can check
that the actual as-built software product meets
the requirement
Consistent
• An SRS is consistent iff
– (1) no reqt stated therein is in conflict with
other preceding documents, and
– (2) no subset of requirements stated therein
conflict
Understandable by customers
• When an SRS is un-ambiguous, more
verifiable, complete and consistent, it is
not understandable by customers

• Establish the traceability between


customer requirement and system
requirement
Midifiable
• An SRS is modifiable iff
– Its structure and style are such that any
necessary changes to requirements can be
made easily, completely, and consistently
• Modifiability
– There exist a table of content (index)
– Corss-reference
Traced
• An SRS is traced if the origin of each of its
requirements is clear

Fig 3-7
Traceable
• In order to design or test any component
of the software, it is necessary to know
which requirements are (perhaps) being
satisfied by the components
• Techniques
– Number every paragraph hierarchically and
never include more than one requirement in
any paragraph
– Number every requirement appears in the
SRS
Design Independent
• An SRS is design independent if
– It does not imply a specific software
architecture or algorithm

• No requirement in the SRS should limit the


design to just one alternative
Organized
• An SRS is organized if
– Requirements contained therein are easy to
locate

• Requirements are arranged so that


requirements that are related are co-
located.

You might also like