[Left] [Up] [Right] Introduction to Requirements Engineering [Left] [Up] [Right]

Writing Requirements and Specifications

Requirements and specifications need to be written in a manner that balances two key aspects: (1) they should be readable, and (2) they should lend themselves to various forms of automated processing.

Requirements
Specifications
Initial requirements are informal, incomplete, and often ambiguous .... Specifications are based upon a detailed knowledge of a product and its (required or established) capabilities...
The system should ....
The system must ....
Requirements and capabilities:
  • The system (input) requirements are ....
  • The system (output) capabilities are ....
Constraints:
  • You'll need to make sure .....
  • Natural language sentences.
  • Technical sentences (e.g., written in BNF).
  • UML-like class diagrams for system structure.
  • UML-like FSM/statechart and activity diagrams for system behavior.
  • Equations, charts, tables .....
  • Design rules .....
Validation of requirements supported by traceability to specifications and design subsystems/objects. Verification of specifications supported by formal testing procedures, numerical simulations of system behavior, experiments in the lab ... etc.

Table 1. Comparison of Requirements and Specifications


Section 6-3: April, 2003. [Left] [Up] [Right]