001 SRS Software Requirements Specification Template
001 SRS Software Requirements Specification Template
0]
Software Requirements
Specification
Project Overview
Customer Name:
Name of Project:
Project Manager:
Technical Lead:
Revision History
Comments Name Date Description
Initial document A N Other 12/12/2012 Prepared Document
Template Caveats:
Whilst ever intention has been made to ensure this template is as flexible as possible, each and every
software project will differ. This template can only server as a guide to what considerations need to be given
due attention. You should always review this document internally before sharing with the customer.
Contents
VERSION [0.0]................................................................................................................................................................I
.....................................................................................................................................................................................I
PROJECT OVERVIEW.........................................................................................................................................................II
REVISION HISTORY.............................................................................................................................................. II
1. INTRODUCTION............................................................................................................................................... 1
1.1 PURPOSE.................................................................................................................................................................1
1.2 SCOPE.....................................................................................................................................................................1
1.4 REFERENCES.............................................................................................................................................................1
1.5 OVERVIEW...............................................................................................................................................................1
2. GENERAL DESCRIPTION................................................................................................................................... 2
3. SPECIFIC REQUIREMENTS................................................................................................................................ 2
3.5.1 Performance.................................................................................................................................................4
3.5.2 Reliability......................................................................................................................................................4
3.5.3 Availability....................................................................................................................................................4
3.5.4 Security.........................................................................................................................................................4
3.5.5 Maintainability.............................................................................................................................................4
3.5.6 Portability.....................................................................................................................................................4
4. ANALYSIS MODELS.......................................................................................................................................... 5
A. APPENDICES................................................................................................................................................... 5
2
1. Introduction
The introduction to the Software Requirement Specification (SRS) document should provide an overview of the
complete SRS document. All Entries to this document must be validated with the customer before an
agreement is made to include them in a project revision. All Revisions should be record at the start of this
template and sign-off given before work is committed to.
1.1 Purpose
State the purpose of this document, its intended audience and the how it is to be used.
1.2 Scope
Include in this section all comments related to what is included in the project and what is not. Be sure to
identify the major modules that are expected to be delivered. For Example: This project will deliver a simple
software solution that will integrate with one known system. The software will include administration,
reporting, security and Service levels. This software will not look at addressing the upgrade of existing
hardware. Any limitations or constraints imposed by working legacy hardware will be documented and
flagged to the customer
1
2. High Level Description
This section of the SRS should describe the general factors of the proposed system. All references to features
should be at a high-level and in user friendly terminology. This section does not state specific requirements.
1. The software will allow data capture via webpage user interface
2. The software will support ad-hoc reporting and customizable reports can be uploaded.
3. The software will save all data to storage on the internal network.
4. The software…
1. Assumptions may include what existing operating systems you are expecting to use?
2. What version of SQL is available?
3. It is assumed there will be ample storage space for 5 years’ worth of data acquisition?
2
3. Specific Requirements
This section will list all requirements in a formal manner. Specific details will be given, not on the how, but on
the what. Software design decisions will be guided by these requirements and failure to capture them can
result in project over-run.
Realistic – state what results can realistically be achieved, given available resources.
Keep the requirements formal but in a user friendly manner. Be unambiguous and succinct.
3
3.1 Integration Requirements
4
3.2 Functional Requirements
This section describes all functional requirements of the proposed software project. Each requirement can be
grouped into the following categories. Functional requirements define the software-functionality that the
developers must build into the product to eempower its users, with the ability to accomplish their tasks, and
fulfil their businesses requirements.
5
3.5 Non-Functional Requirements
Non-functional requirements are more Constraints or standards that have been imposed upon the system,
which it must exhibit or comply with. Non-functional requirements define the system’s qual-ity characteristics.
As a general rule of thumb, non-functional requirements can end with “-ity”, although not always!
3.5.1 Performance
What requirements define the performance requirements?
How many records per minute does the system need to handle?
Does the system support concurrency?
Etc.
3.5.2 Reliability
What requirements are there for reliability?
How will this be measured?
Does this need to be monitored?
Etc.
3.5.3 Availability
What up time requirements are there?
What process will be used to handle system unavailability?
What load will cause a downtime?
Etc.
3.5.4 Security
Who will have access to what areas?
How will those users be authenticated and then authorized?
How will new users be managed, added to and removed from the system?
How will the system be protected from abuse?
What requirements are there on the data being stored?
Do passwords and credit card information need to be encrypted? if so, how and to what standards?
3.5.5 Maintainability
How will the system be maintained?
Does it support automatic updates?
What requirements are their around maintenance, and any potential consequences?
Etc.
6
5. Change Management Process
Describe here the process that will be followed to handle changes to requirements and document versioning.
Describe the process-flow so that new change requests can be made from both the customer and the vender
and the resulting process for validating and integrating them into this specification.
7
A. Appendices
Appendices can be used to provide additional information.
A.1 Appendix 1
A.2 Appendix 2