0% found this document useful (0 votes)
172 views12 pages

001 SRS Software Requirements Specification Template

This document provides a template for a Software Requirements Specification (SRS) document. The SRS is created after requirements have been collected from stakeholders and agreed upon. It contains sections for project overview, general description, specific requirements, analysis models, change management process, and appendices. The template is meant to guide users in documenting considerations for their specific software project requirements.

Uploaded by

Wey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
172 views12 pages

001 SRS Software Requirements Specification Template

This document provides a template for a Software Requirements Specification (SRS) document. The SRS is created after requirements have been collected from stakeholders and agreed upon. It contains sections for project overview, general description, specific requirements, analysis models, change management process, and appendices. The template is meant to guide users in documenting considerations for their specific software project requirements.

Uploaded by

Wey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 12

Version [0.

0]

Software Requirements
Specification

Prepared By: [Your Name]


Software Requirements Specification Template
[The SRS template is used provide a recording of the all agreed upon requirements. The Software
Requirements Specification is a document created by the system analysts AFTER all the requirements
have been collected from all stakeholders. The information recorded in this document will be used by the
technical team for actual design of the final solution.]

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

SOFTWARE REQUIREMENTS SPECIFICATION TEMPLATE.......................................................................................II

PROJECT OVERVIEW.........................................................................................................................................................II

REVISION HISTORY.............................................................................................................................................. II

1. INTRODUCTION............................................................................................................................................... 1

1.1 PURPOSE.................................................................................................................................................................1

1.2 SCOPE.....................................................................................................................................................................1

1.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS.............................................................................................................1

1.4 REFERENCES.............................................................................................................................................................1

1.5 OVERVIEW...............................................................................................................................................................1

2. GENERAL DESCRIPTION................................................................................................................................... 2

2.1 PRODUCT PERSPECTIVE..............................................................................................................................................2

2.2 PRODUCT FUNCTIONS................................................................................................................................................2

2.3 USER CHARACTERISTICS..............................................................................................................................................2

2.4 GENERAL CONSTRAINTS.............................................................................................................................................2

2.5 ASSUMPTIONS AND DEPENDENCIES..............................................................................................................................2

3. SPECIFIC REQUIREMENTS................................................................................................................................ 2

3.1 EXTERNAL INTERFACE REQUIREMENTS..........................................................................................................................3

3.1.1 User Interfaces.............................................................................................................................................3

3.1.2 Hardware Interfaces....................................................................................................................................3

3.1.3 Software Interfaces......................................................................................................................................3

3.1.4 Communications Interfaces.........................................................................................................................3

3.2 FUNCTIONAL REQUIREMENTS......................................................................................................................................3

3.2.1 <Functional Requirement or Feature #1>....................................................................................................3

3.2.2 <Functional Requirement or Feature #2>....................................................................................................3

3.3 USE CASES...............................................................................................................................................................4

3.3.1 Use Case #1..................................................................................................................................................4


1
3.3.2 Use Case #2..................................................................................................................................................4

3.4 CLASSES / OBJECTS...................................................................................................................................................4

3.4.1 <Class / Object #1>......................................................................................................................................4

3.4.2 <Class / Object #2>......................................................................................................................................4

3.5 NON-FUNCTIONAL REQUIREMENTS..............................................................................................................................4

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

3.6 INVERSE REQUIREMENTS............................................................................................................................................4

3.7 DESIGN CONSTRAINTS................................................................................................................................................4

3.8 LOGICAL DATABASE REQUIREMENTS.............................................................................................................................5

3.9 OTHER REQUIREMENTS..............................................................................................................................................5

4. ANALYSIS MODELS.......................................................................................................................................... 5

4.1 SEQUENCE DIAGRAMS...............................................................................................................................................5

4.3 DATA FLOW DIAGRAMS (DFD)...................................................................................................................................5

4.2 STATE-TRANSITION DIAGRAMS (STD)..........................................................................................................................5

5. CHANGE MANAGEMENT PROCESS................................................................................................................... 5

A. APPENDICES................................................................................................................................................... 5

A.1 APPENDIX 1.............................................................................................................................................................5

A.2 APPENDIX 2.............................................................................................................................................................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.

2.1 Product Functions


This section should provide a list of all high-level features:

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…

2.2 User Training


All requirements that pertain to user training, training the trainer sessions, hand-over etc. should be listed
here.

2.3 System Constraints


If the proposed solution will be limited by the existing hardware, Existing software etc., then these need to be
recorded here. All possible constraints should be recorded here.

2.4 Assumptions and Dependencies


This section should list all factors that may have an effect on the requirements defined in this specification.

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.

Each requirement should be:

 Specific – target a specific area for improvement.

 Measurable – quantify or at least suggest an indicator of progress.

 Assignable – specify who will do it.

 Realistic – state what results can realistically be achieved, given available resources.

 Time-related – specify when the result(s) can be achieved.

Keep the requirements formal but in a user friendly manner. Be unambiguous and succinct.

3
3.1 Integration Requirements

3.1.1 User Interfaces


 What existing systems does this system have to integrate with?
 What system interfaces are available for integration?
 Can existing systems export data in XML or CSV?
 Etc.

3.1.2 Hardware Interfaces


 Define all existing hardware interfaces
 What new hardware will be needed?
 Etc.

3.1.3 Software Interfaces


 Define all existing software interfaces
 What new software will be needed?
 Will the existing software be replaced or upgraded soon?
 How will you handle the change?
 Etc.

3.1.4 Communications Interfaces


 What channels of communication will you need into the system?
 What channels of communication will you need out of the system?
 Are there any messaging like requirements?
 What about popup alerts?
 Etc.

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.

3.2.1 Business Rules


 Define all business rules the new system will need to follow (one per requirement)

3.2.2 Transactions, Adjustments, Postings


 Are there transactional roll backs required?
 How are postings handled?

3.2.3 Security Access, Protection


 Define all requirements that relate to security

3.2.4 Data Capture, Transformation, Interpretation


 Define all Data capture requirements

3.2.5 Performance, monitoring and reporting


 Define all performance requirements

3.2.6 External Interactions


 Define all external interactions

3.2.7 Legal, Environmental, Regulatory constraints


 What existing Legal requirements are there?
 What environmental requirements are there?
 Are there regulatory constraints, if so, how do you prove you are meeting them?

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.

Each change request should record:

 Who requested the change?


 When was it requested?
 What is there reason for the change?
 Are there any consequences of making the change?
 What conflicts may arise from this change?
 Is this a new version change or an upgrade change?
 Etc.

7
A. Appendices
Appendices can be used to provide additional information.

A.1 Appendix 1
A.2 Appendix 2

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy