A Software Requirements Specification (SRS) is a document, which is used as a communication medium between the customers. A software requirement specification in its most basic form is a formal document used in communicating the software requirements between the customer and the developer.
An SRS document concentrates on WHAT needs to be done and carefully avoids the solution (how to do). It serves as a contract between development team and the customer. The requirements at this stage is written using end user terminology. If necessary, later a formal requirement specification will be developed from it.
SRS is a complete description of the behavior of a system to be developed and may include a set of use-cases that describes the interactions, the users will have with the software.
Purpose of SRS
SRS is a communication tool between Customer / Client, Business Analyst, System developers, Maintenance teams. It can also be a contract between purchaser and supplier.
● It will give firm foundation for the design phase
● Supports project management and control
● Helps in controlling and evolution of system
A software Requirement specification should be Complete, Consistent, Traceable, Unambiguous, and Verifiable.
The following should be addressed in system specification −
● Define the functions of the systems
● Define the Hardware / Software Functional Partitioning
● Define the Performance Specification
● Define the Hardware / Software Performance Partitioning
● Define Safety Requirements
● Define the User Interface (user’s manual)
● Provide Installation Drawings/Instructions
● Software Requirement specification template
Revision History
Date | Description | Author | Comments |
<date> | <Version 1> | <Your Name> | <First Revision> |
Document Approval
The following software requirements specification has been accepted and approved by the following −
Signature | Printed Name | Title | Date |
<Your Name> | Lead Software Eng. | ||
David | Instructor | ||