Software Requirements Specification document with example

By | August 2, 2017

A Software Requirements Specification (SRS) is a document that describes the nature of a project, software or application. In simple words, SRS document is a manual of a project provided it is prepared before you kick-start a project/application. This document is also known by the names SRS report, software document. A software document is primarily prepared for a project, software or any kind of application.

There are a set of guidelines to be followed while preparing the software requirement specification document. This includes the purpose, scope, functional and nonfunctional requirements, software and hardware requirements of the project. In addition to this, it also contains the information about environmental conditions required, safety and security requirements, software quality attributes of the project etc.

What is a Software Requirements Specification document?

A Software requirements specification document describes the intended purpose, requirements and nature of a software to be developed. It also includes the yield and cost of the software.

In this document, flight management project is used as an example to explain few points.

Table of Contents

Contents in Software Requirements Specification document

 

Suggested Read:

1. INTRODUCTION

1.1 PURPOSE

The purpose of this document is to build an online system to manage flights and passengers to ease the flight management. <<Include the purpose as applicable to your project >>

1.2 DOCUMENT CONVENTIONS

This document uses the following conventions. <<Include the conventions as per your application >>

DB Database
DDB Distributed Database
ER Entity Relationship

1.3 INTENDED AUDIENCE AND READING SUGGESTIONS

This project is a prototype for the flight management system and it is restricted within the college premises. This has been implemented under the guidance of college professors. This project is useful for the flight management team and as well as to the passengers.

1.4 PROJECT SCOPE

The purpose of the online flight management system is to ease flight management and to create a convenient and easy-to-use application for passengers, trying to buy airline tickets. The system is based on a relational database with its flight management and reservation functions. We will have a database server supporting hundreds of major cities around the world as well as thousands of flights by various airline companies. Above all, we hope to provide a comfortable user experience along with the best pricing available.

1.5 REFERENCES

2. OVERALL DESCRIPTION

2.1 PRODUCT PERSPECTIVE

A distributed airline database system stores the following information.

  • Flight details:
    It includes the originating flight terminal and destination terminal, along with the stops in between, the number of seats booked/available seats between two destinations etc.
  • Customer description:
    It includes customer code, name, address and phone number. This information may be used for keeping the records of the customer for any emergency or for any other kind of information.
  • Reservation description:
    It includes customer details, code number, flight number, date of booking, date of travel.

2.2 PRODUCT FEATURES

The major features of airline database system as shown in below entity–relationship model (ER model)

layout of airline database system for software requirements specification document

The diagram shows the layout of airline database system – entity–relationship model

2.3 USER CLASS and CHARACTERISTICS

Users of the system should be able to retrieve flight information between two given cities with the given date/time of travel from the database. A route from city A to city B is a sequence of connecting flights from A to B such that: a) there are at most two connecting stops, excluding the starting city and destination city of the trip, b) the connecting time is between one to two hours. The system will support two types of user privileges, Customer, and Employee. Customers will have access to customer functions, and the employees will have access to both customer and flight management functions. The customer should be able to do the following functions:

  • Make a new reservation
    • One-way
    • Round-Trip
    • Multi-city
    • Flexible Date/time
    • Confirmation
  • Cancel an existing reservation
  • View his itinerary

The Employee should have following management functionalities:

  • CUSTOMER FUNCTIONS.
    • Get all customers who have seats reserved on a given flight.
    • Get all flights for a given airport.
    • View flight schedule.
    • Get all flights whose arrival and departure times are on time/delayed.
    • Calculate total sales for a given flight.
  • ADMINISTRATIVE
    • Add/Delete a flight
    • Add a new airport
    • Update fare for flights.
    • Add a new flight leg instance.
    • Update departure/arrival times for flight leg instances.

Each flight has a limited number of available seats. There are a number of flights which depart from or arrive at different cities on different dates and time.

2.4 OPERATING ENVIRONMENT

Operating environment for the airline management system is as listed below.  <<Include the details as per your application >>

  • distributed database
  • client/server system
  • Operating system: Windows.
  • database: sql+ database
  • platform: vb.net/Java/PHP 

2.5 DESIGN and IMPLEMENTATION CONSTRAINTS

  1. The global schema, fragmentation schema, and allocation schema.
  2. SQL commands for above queries/applications
  3. How the response for application 1 and 2 will be generated. Assuming these are global queries. Explain how various fragments will be combined to do so.
  4. Implement the database at least using a centralized database management system.

2.6 ASSUMPTION DEPENDENCIES

Let us assume that this is a distributed airline management system and it is used in the following application:

  • A request for booking/cancellation of a flight from any source to any destination, giving connected flights in case no direct flight between the specified Source-Destination pair exist.
  • Calculation of high fliers (most frequent fliers) and calculating appropriate reward points for these fliers.

Assuming both the transactions are single transactions, we have designed a distributed database that is geographically dispersed at four cities Delhi, Mumbai, Chennai, and Kolkatta as shown in fig. below.

3. SYSTEM FEATURES

  • DESCRIPTION and PRIORITY

The airline reservation system maintains information on flights, classes of seats, personal preferences, prices, and bookings. Of course, this project has a high priority because it is very difficult to travel across countries without prior reservations.

  • STIMULUS/RESPONSE SEQUENCES
    • Search for Airline Flights for two Travel cities
    • Displays a detailed list of available flights and make a “Reservation” or Book a ticket on a particular flight.
    • Cancel an existing Reservation.
  • FUNCTIONAL REQUIREMENTS

Other system features include:

DISTRIBUTED DATABASE:

Distributed database implies that a single application should be able to operate transparently on data that is spread across a variety of different databases and connected by a communication network as shown in below figure.

Distributed database located in four different cities

Distributed database located in four different cities

CLIENT/SERVER SYSTEM

The term client/server refers primarily to an architecture or logical division of responsibilities, the client is the application (also known as the front-end), and the server is the DBMS (also known as the back-end).

A client/server system is a distributed system in which,

  • Some sites are client sites and others are server sites.
  • All the data resides at the server sites.
  • All applications execute at the client sites.

 

4. EXTERNAL INTERFACE REQUIREMENTS

4.1 USER INTERFACES

  • Front-end software: Vb.net version
  • Back-end software: SQL+

4.2 HARDWARE INTERFACES

  • Windows.
  • A browser which supports CGI, HTML & Javascript.

4.3 SOFTWARE INTERFACES

Following are the software used for the flight management online application. <<Include the software details as per your project >>

Software used Description
Operating system We have chosen Windows operating system for its best support and user-friendliness.
Database To save the flight records, passengers records we have chosen SQL+ database.
VB.Net To implement the project we have chosen Vb.Net language for its more interactive support.

4.4 COMMUNICATION INTERFACES

This project supports all types of web browsers. We are using simple electronic forms for the reservation forms, ticket booking etc.

 

5. NONFUNCTIONAL REQUIREMENTS

5.1 PERFORMANCE REQUIREMENTS

The steps involved to perform the implementation of airline database are as listed below.

A) E-R DIAGRAM

The E-R Diagram constitutes a technique for representing the logical structure of a database in a pictorial manner. This analysis is then used to organize data as a relation, normalizing relation and finally obtaining a relation database.

  • ENTITIES: Which specify distinct real-world items in an application.
  • PROPERTIES/ATTRIBUTES: Which specify properties of an entity and relationships.
  • RELATIONSHIPS: Which connect entities and represent meaningful dependencies between them.

 

The diagram shows the ER diagram of airline database

the diagram shows the ER diagram of airline database

B) NORMALIZATION:

The basic objective of normalization is to reduce redundancy which means that information is to be stored only once. Storing information several times leads to wastage of storage space and increase in the total size of the data stored.

If a database is not properly designed it can give rise to modification anomalies. Modification anomalies arise when data is added to, changed or deleted from a database table. Similarly, in traditional databases as well as improperly designed relational databases, data redundancy can be a problem. These can be eliminated by normalizing a database.

Normalization is the process of breaking down a table into smaller tables. So that each table deals with a single theme. There are three different kinds of modifications of anomalies and formulated the first, second and third normal forms (3NF) is considered sufficient for most practical purposes. It should be considered only after a thorough analysis and complete understanding of its implications.

5.2 SAFETY REQUIREMENTS

If there is extensive damage to a wide portion of the database due to catastrophic failure, such as a disk crash, the recovery method restores a past copy of the database that was backed up to archival storage (typically tape) and reconstructs a more current state by reapplying or redoing the operations of committed transactions from the backed up log, up to the time of failure.

5.3 SECURITY REQUIREMENTS

Security systems need database storage just like many other applications. However, the special requirements of the security market mean that vendors must choose their database partner carefully.

5.4 SOFTWARE QUALITY ATTRIBUTES

  • AVAILABILITY: The flight should be available on the specified date and specified time as many customers are doing advance reservations.
  • CORRECTNESS: The flight should reach start from correct start terminal and should reach the correct destination.
  • MAINTAINABILITY: The administrators and flight in chargers should maintain correct schedules of flights.
  • USABILITY: The flight schedules should satisfy a maximum number of customers needs.

 




Author: Ravi Bandakkanavar

A Techie, Blogger, Web Designer, Programmer by passion who aspires to learn new Technologies every day. It has been 6 years since I have been publishing articles and enjoying every bit of it. I want to share knowledge and build a great community with people like you.

Suggested articles for you:

139 thoughts on “Software Requirements Specification document with example

  1. Gabson

    Hi all, I am told to prepare a system specification for “customers website” kindly assist what things I should include as this is my first time I am doing this. Thanks

    Reply
  2. siva

    i need the functional and non functional components for spice jet srs .can u just sent me ?

    Reply
  3. anu

    SIR
    I need to prepare an SRS for my project “health management app” what all information i need to collect?

    Reply
    1. Ravi Bandakkanavar Post author

      Hi Anu,

      Follow the contents given. You will understand what to be filled in.

      for instance,
      1.1 Purpose – For hospital management ......
      1.2 Document Conventions – Acronyms, if used...
      1.3 Intended Audience and Reading Suggestions – audience could be patients, doctors, visitors
      1.4 Project Scope – how useful your project would be. It is extension of the purpose
      1.5 References – sources from where you gathered the information

      Reply
  4. Josh Fleming

    Hi there thanks for the informative article. I was wondering if you can help me with a sample of srs for classified ads app . I have been looking around but an unable to find anything.

    Reply
    1. Ravi Bandakkanavar Post author

      Hi Josh,

      Thanks for your comments
      The SRS differs from project to project. It needs to be prepared as per your project. We do not have an SRS ready for “classified ads app”.

      Reply
  5. Jahir hussain

    can I get a UML diagrams for flight management sysyem

    Reply
  6. sandeep rajput

    can you give me explanation about Software requirement specification(SRS)

    Reply
    1. Ravi Bandakkanavar Post author

      Hi Sandeep,

      Software requirement specification(SRS) is a document that explains the purpose and the characteristics of your project/software/application.

      Reply
      1. Ankit Punamiya

        hi ravi,
        I am new to this field and we have a project in inline reservation/e-ticket …and i dont know how to do this…ur article is great but it would be great if you could help me in my project.. i couldnt understand anything and i am really scared…it would be great of you to help

        Reply
  7. Sudhir

    Hi,

    We are working on mobile surface launcher for defence for the first time. It’s QNX platform based system wherein we are manufacturers & we hired a software agency to develop software. They are asking for a SRS document. I had searched on internet / Wiki but not received specific details. Can u send me typical surface launcher SRS document?

    Reply
    1. Ravi Bandakkanavar Post author

      Hi Sudhir,

      I am sorry. We do not prepare SRS documents for projects. You can refer to this format and prepare your document accordingly.

      Reply
  8. Pediredla subrahmanyam

    Hey I want know,what my srs document contains..my project is game designing..

    Reply
  9. Joy

    Hi,
    i would like to know about SRS. our project is school attendance record like student and staff details,admission date,dept,Salary,time table etc..
    how can i write the test cases in test link (test management tool )??
    please let me know asap.

    Reply
  10. komal

    hi. sir I need sample project report for android application….
    please mail me if any 1 of u hav that.
    reply fast……..

    Reply
  11. Vipul Suryawanshi

    Can you please give me SRS for online shoping system large project with one of the Example in php

    Reply
    1. Ravi Bandakkanavar Post author

      Good question Joella.

      This field is an optional. While planning for a project implementation, you would need to handle multiple conditions. Constraints are the drawbacks of your project which stop your project to work in all conditions.

      Let me find an example for you.

      Reply
    1. Ravi Bandakkanavar Post author

      Hi Bhavya,

      Entity Relationship diagram describes the relationships between instances and entity types. It is primarily used for database structures.
      There are different symbols for nouns, adjectives, relationships, entities, attributes, primary etc.
      You can get more details online.

      Reply
    1. Ravi Bandakkanavar Post author

      Hi Bhavya,

      Your choice of project sounds great. We have not received what course of development will be done as part of Smart city project.
      However we can list out few important developments in Communication, technology usage, connectivity etc.
      I can help you with few ideas.

      Reply
  12. Vipul Walia

    Above srs is an example of ..you can follow the index of it and change the content according to your requirements….. For making SRS document you just need to be good in English and basic technical knowledge (ratio of 70 : 30 % ) according to my view.
    Thank you so much guru for helping us out keep updating the format of it.
    And
    Thank you for all the developers and programmer for having discussion about it cuz that’s make any content more handful.

    Reply
  13. sagar

    I want to make srs on my project which is work on LAN by which a remote system have java environment and with its help other system can run java code without install java in LAN.
    Please help me to complete my srs.

    Reply
  14. ngaraju

    Hi sir,
    The above SRS was very understandable & clear
    Could you pls help me out for gameing SRS .
    TIA…..

    Reply
  15. Jeet Dadhania

    Hi admin….
    thankyou for your explanation about this…
    now I want srs of linked website for project

    Reply
  16. Henry

    Hi Admin,

    Kindly assist me with SRS document for a location based Vendor engagement app. Need it urgently. Really appreciate

    Reply
  17. Ayesha

    Will you please send me a SRS of vehicle sharing website Project (blablacar.co.uk). its very urgent and need it on immediate basis in full detail.

    Reply
  18. Kate Fln

    Hello there!
    Impressive blog you guys have going on here. I would like assistance preparing a SRS and System Scope. Can anyone please advise me ?

    Reply
      1. Kate Fln

        Hi Ravi, Thanks for your response. I have recently started working on small project and I am keep to prepare project management documents. For starters, I need to prepare Software requirement specifications similar to the provided in this blog. ( this one is quite complicated ). Also I need to prepare Software Scope.

        Reply
        1. Ravi Bandakkanavar Post author

          Hi Kate,

          This document is application for big projects.

          For small projects you can cut down few points. You can refer to following contents.

          1. Introduction

          1.1 Purpose
          1.2 Document Conventions
          1.3 Intended Audience and Reading Suggestions
          1.4 Project Scope
          1.5 References
          2. Overall Description

          2.1 Product Perspective
          2.2 Operating Environment
          2.3 Design and Implementation Constraints
          2.4 Assumptions and Dependencies

          3. System Features

          4. External Interface Requirements

          4.1 User Interfaces
          4.2 Hardware Interfaces
          4.3 Software Interfaces

          5. Other Nonfunctional Requirements

          5.1 Performance Requirements
          5.2 Safety Requirements
          5.3 Security Requirements

        2. arati

          can you give me the explanation about non functional requirements.

        3. Ravi Bandakkanavar Post author

          Good question Aarati.

          Non functional requirements mainly deal with non coding part of the project.
          Non functional requirements concentrate on how a application should work rather than what your application should does (functional requirements).
          So non functional requirements includes performance of the the project, availability of the the project, security, compliance, documentation, deployment etc.

          An example would be – high level design like overall architectural view of your application.

          Let me know if you have further questions.

      2. priyanka n hemali

        we are just new in this field. we have get an project and we have to know that how we start this. where we should go? what question should we ask? n all. please help us. we r very scared about this. let we know ur regard. as soon as possible

        Reply
  19. ved prakash

    Hi, will you please send me a srs of ERP Project. its very urgent and need it on immediate basis in full detail with a example of ERP SYSTEM project DETAILS.

    Regards
    Ved Prakash

    Reply
      1. Henry

        Hi Ravi,

        Thanks for your response. Like I stated earlier its an inter-state bus ticketing app. Just like the app “Cheap Flights” (you can see details on google play). In this case its for bus services. The application will run only on android devices. That’s basically what the app is all about.

        Reply
        1. Ravi Bandakkanavar Post author

          Henry,

          That’s interesting. Good choice.

          So for SRS document, you will have to prepare usecases that defines all the operations/failities available in your app.

          The software and hardware requirements are quite clear here.

          Draw a class diagram based on the operations present in your app.

          Other details include the explanation in few lines about your app.

          Good Luck..!

      2. ITACHI

        Hiii Ravi

        i want to make offline cloud for my project what are the SRS of that project
        in short i want to make a drop box offline.

        Reply
  20. sagar pradhan

    i need a srs for training and placement management system can you help me out to make a srs please

    Reply
    1. Ravi Bandakkanavar Post author

      Hi Sagar,

      To prepare an SRS document I would need all your project details.
      It should be prepared based on your requirements and implementation.

      Reply
  21. aniket bhalerao

    sir i need help in creating srs of watch manufacturing company…..plzz do the needful help

    Reply
    1. Ravi Bandakkanavar Post author

      Hi,

      You need to prepare SRS document based on your project. SRS document would explain the requirements and technology used and provide the highlights of your project.

      Reply
  22. mahesh gunjkar

    sir I want srs for cloth store management system any srs that you know please send it

    Reply
  23. Harmeet Singh

    i need srs for delhi metro app which contains route between two station and map and other details like recharge parking information. can u plz help me

    Reply
  24. Dipam Lad

    Dear admin, I m unable to understand which connectors to be used between entities in ER diagrams, data flow diagrams, schema diagrams and what not. Will U help me in same matter of showing relationships among entities or different blocks and tables?

    Reply
    1. Ravi Bandakkanavar Post author

      Hi Dipam,

      For ER diagram, following types of connectors exist
      1. a double line indicates a participation constraint, totality or surjectivity all entities in the entity set must participate in at least one relationship in the relationship set;
      2.an arrow from entity set to relationship set indicates a key constraint, i.e. injectivity: each entity of the entity set can participate in at most one relationship in the relationship set;
      3.a thick line indicates both, i.e. bijectivity: each entity in the entity set is involved in exactly one relationship.
      4.an underlined name of an attribute indicates that it is a key: two different entities or relationships with this attribute always have different values for this attribute.

      Reply
  25. vineela

    i want srs document for Online books exchange system..like OLX site…please help me

    Reply
  26. mounika

    i want srs document for cooking app this aplication helps the ingredients to book the online

    Reply
    1. Ravi Bandakkanavar Post author

      Hi Mounika,

      You have to list the software and hardware requirements for your cooking app and also the environment/places where this app can be used

      Reply
  27. dilip yadav

    i want a readymade project flight management or any but client server please send

    Reply
  28. rifa

    Ravi Bandakkanavar will you help me out little bit i provide the proposal of FYP.. I need help :(

    Reply
  29. rifa

    I need help help to complete my FYP SRS plx any one help me.my project name is “digitization of hand drawn sketches” it is android based application.i need help in the diagrams(Use cases and ER diagram)

    Reply
  30. swathi

    plz i want functional requirements and uml diagrams of hierarchical energy optimization for data center network plz help me

    Reply
    1. Ravi Bandakkanavar Post author

      Swathi, UML diagrams and functional requirements should be prepared based on your project.

      “”A Software requirements specification document basically describes the intended purpose and environment for software/application under development. It completely describes the yield, cost, nature of the software/application.””

      Reply
    1. Ravi Bandakkanavar Post author

      Hi,

      SRS document should be prepared based on your project and requirements. Without this knowledge it would be difficult for me to guide you.

      Reply
  31. nikhil malegaonkar

    can you please send me srs or project report on “vehicle route optimization”?

    Reply
  32. siraj vaal

    i need a sample of a srs for a web application which can be used in arestaurant by people to view, add, rate, and comment on adifferent recipes

    Reply
  33. logesh

    hi my dear frnd i want sample srs for “performence assessing system for client requirements”. plz help me
    ur site is very helpful for us thanks a lot….

    Reply
    1. Ravi Bandakkanavar Post author

      Hi logesh,

      SRS document must be prepared based on your project’s requirements and hardware/softwares used for your project.I have mentioned the format/prototype how it should be done. Hope based on it you can create it easily. Let me know for any concerns.

      Reply
  34. Unnati

    My project is on Log analysis manager.
    Please send ER diagram and class diagram to my mail id

    Reply
    1. Ravi Bandakkanavar Post author

      HI Unnati,

      If you refer the SRS document, it involves your project related matter and the hardware/software requirements for your project. Since I do not have any idea about your project I cannot help you regarding this. Refer the document just the replace the content of your project wherever it is necessary.
      You can contact me if you come across any difficulties.

      Reply
  35. nischitha Kurunji

    please send me the ER diagrams for an IT company.
    along with use case and sequence diagram.

    Reply
  36. prashanti

    hi…can anyone help me wit SRS for ‘ONLINE JOB PORTAL’

    Reply
  37. raj

    hi…can anyone help me wit SRS for “extracting metadata from audio/video files”

    Reply
  38. dave

    Dear,I want to get full SRS documentation on title Hospital management system

    Reply
  39. krishna

    sir i want a complete srs format of ticket booking and match schedule for odi cricket match series.
    so please help me out…!!!

    Reply
  40. krishna

    sir i want a full described srs of ticket booking and schedule plan for odi cricket match series…
    so please kindly help me out..!!

    Reply
  41. sunlight

    plz send me srs diagram of university site and also designing of university website in dreamviewer as soon as posible

    Reply
  42. zuha

    please send me the ER diagrams for an IT company.
    along with use case and sequence diagram.

    Reply
  43. chaitra

    Please suggest me how to write SRS, SDD, Testplan and Testcase

    Reply
  44. qaisar

    I want to know that How to design the SRS (software requirement Specification)
    for project
    my project topic is for this website (www.bookcollection.com)

    Reply
  45. Sneha

    It’s very useful…
    plz keep on updating with more stuffs………

    Reply
  46. RAMYA

    PLS SEND ME SRS FORMAT FOR A UNIFIED APPROACH TO OPTIMIZING PERFORMANCE IN NETWORK SERVING HETEROGENOUS FLOW

    Reply
  47. Rajan

    Hi,

    I’m looking for someone to prepare SRS document for about 12 application software, proposed to be developed.

    Send out your interest to me smnatarajan@yahoo.co.in

    Regards,
    SMN

    Reply
  48. susan

    can u provide the product perspective for my project which handles the online books website

    Reply
  49. deepti jain

    PLZ MAIL ME SRS DOCUMENT OF ATM ,CAR SENSING SYSTEM ,ANDROID MOBILE APPLICATION

    Reply
    1. admin Post author

      For “Time table of college” project what all you can need ??
      List hardware and software requirements, programming language which you are going to use, Database query language etc.
      Don’t think that your project must include all the factors mentioned in the above post. Some of them may not be applicable to all kind of projects.

      Reply
  50. chibichibi

    Mr/Miss admin tnk u to your reply, Im enlightened now:) tnx a lot!!

    Reply
  51. chibichibi

    how to make a Hardware Specification?,do you have example please post!!! Tnx:-)

    Reply
  52. mojahedul islam

    It is very helpful to me to create my first srs……

    Reply

Did it help? Comment here..