Software Requirements Specification Document With Example
Software Requirements Specification Document With Example
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.
In this document, flight management project is used as an example to explain few points.
Table of Contents
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 Commented [WU1]: Definition of Terms
This document uses the following conventions. <<Include the conventions as per your
application >>
DB Database
ER Entity Relationship
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.
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.
To implement the project we have chosen Vb.Net language for its more interactive
VB.Net support.
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.