1. Requirement Characteristics
Characteristic Description
Understandable Requirements should begrammatically correct, succinct, and written in aconsistent style.
Unambiguous Requirements should old haveonly oneinterpretation.
Testable Testers should beableto verify that therequirement is implemented correctly.
Atomic Requirements should contain asingletraceableelement.
Correct If a requirement contains facts,thesefacts should betrue.
Necessary A requirement is unnecessary is noneofthestakeholdersneedstherequirement.
Consistent Therequirement should agreeswith higherleveldocumentsrequirements.
Non-redundant Thereshould beno duplicaterequirements.
Ranked Requirements should beprioritized by importance.
Requirement Terms
Word Accepted Usage
Shall What to do
Should Howto do it
Will Declares a purpose,fact orintention
May Permissible action
(Must)* (Non-FunctionalRequirement, Constraint)
Verification Methods
Method Description
Inspection Non-Destructiveexaminationusing
sensory inspection
Demonstration Manipulateand Inspect
Test Predefined inputs, data, orstimuli
yield predicted results
Analysis Comparison to predictivemodules
and calculations
Similarity Same as something that has already
been verified
Non-Functional Requirements as User Stories
Userstories areshort, simple descriptions of a featuretold from the perspective of the
person who desires the new capability, usually a user or customer of the system. They
typically follow a simple template:
As a < type of user >, I want <some goal > so that < some reason >.
As a user, I can back up my entire hard drive.
As a user, I can indicate folders not to backup so that my backup drive isn't
filled up with things I don't need saved.
Requirements Cheat Sheet
Classifying Requirements: FURPS+
FURPS
o Functionality
o Usability
o Reliability
o Performance
o Supportability
+
o Design Requirements
o Implementation Requirements
o Interface Requirements
o Physical Requirements
Functional
Requirements
Non-Functional
Requirements