Glossary · Requirements and interfaces
Software requirements specification (SRS)
German: Softwareanforderungsspezifikation (SRS)
In software engineering, a software requirements specification (SRS) is the document or model that collects all requirements for a software product or component, including functions, interfaces, performance, constraints and quality attributes, in a form that can be reviewed and verified.
- Systems engineering
- Technical documentation
In one sentence
A software requirements specification (SRS) collects all requirements for a software product in a reviewable, verifiable form.
Example
The SRS for a safety PLC application lists each safety function with its trigger, reaction, response time and required PL.
How it applies
- Engineering: The SRS is the reference for software design, code and tests; ISO/IEC/IEEE 29148 describes typical content.
- Functional safety: Safety-related applications need a safety requirements specification for software; it can be a section of the SRS if clearly identified.
- Documentation: The documentation team should get read access to the baselined SRS; it tells them which functions exist and which conditions apply.
- Review: Review the SRS with testers early; a requirement that cannot be tested is a sign that it is ambiguous or incomplete.
SRS vs. FDS
See Functional design specification (FDS). The SRS states what the software must do; the FDS explains how functions behave in the plant, often across hardware, software and HMI.