Page 41 - Software and Systems Requirements Engineering in Practice
P. 41
14 S o f t w a r e & S y s t e m s R e q u i r e m e n t s E n g i n e e r i n g : I n P r a c t i c e
in compliance. A similar approach can be used for other “umbrella”
requirements such as
• Compliance with Sarbanes-Oxley regulations
• Meeting all corporate security requirements
• Meeting electrical safety requirements
Characteristics of a Good Requirements Specification
As was stated in the definition of consistency, the definition of
a characteristic may be different when applied to requirements
and to a specification. A requirements specification is a filtered
compendium of requirements. Having the requirements in a
document rather than a database permits holistic views and allows
the addition of history, a rationale, etc. There are certain characteristics
that apply to specifications as opposed to individual requirements as
listed here:
• A requirements specification is feasible if building the product
specified is feasible given the state of technology, the budget,
and the allotted time.
• A requirements specification is unambiguous if there is no
pair-wise ambiguity in the specification.
• A requirements specification is valid if every requirement in it
is valid.
• A requirements specification is verifiable if every requirement
in it is verifiable. 1
• A requirements specification is modifiable if there is no
redundancy and changes to requirements are easily and
consistently made; e.g., a change to one requirement does not
require cascading changes to other requirements.
• A requirements specification is consistent if the requirement
set is internally consistent.
• A requirements specification is complete if it provides sufficient
information for complete coverage testing of the product or
system.
• A requirements specification is traceable if every requirement
in it can be traced back to its source and forward to test
cases.
• A requirements specification is concise if the removal of any
requirement changes the definition of the product or system.
1 Product or business requirements specifications typically describe features, and
as such there may be ambiguity and a lack of testability.