Requirements and Technical Requirement Specifications (TRS) lay at the core of the Systems Engineering framework. Requirements are the formalisation of the 'needs' of the System.
Requirements Analysis processes ensure that requirements are derived from a comprehensive system perspective and can include:
Requirements management, and the derivation of comprehensive technical requirements is an iterative and fluid process which should be performed as a pre-requisite to detailed design; however it is also a process which should be done in parallel to development. Typically, Requirements may be used to integrate the management of project resource and product functionality.
Validated and Verified Requirements ensure the realised solution is not only fit-for-purpose, but also adheres to the project objectives, and satisfies the needs of stakeholders.
Functional Requirements (FRs) are the core "shall" statements, which prescribe exactly what functions the system shall perform.
A well written requirements should contain:
Likewise, a well written requirement should not contain:
Non-Functional Requirements (NFRs) can be thought of as system attributes or, operational criteria. These are statements which govern the mechanisms of the system, or the means by which it operates. Typically, these are requirements which are not verifiable.