Вы находитесь на странице: 1из 6

Experiment No.

2
Aim: Understanding software requirements specifications (SRS) for railway reservation
system.

Theory: -
A software requirements specification (SRS) is a document that is created when a detailed
description of all aspects of the software to be built must be specified before the project is to
commence. The SRS is developed based the agreement between customer and
contractors. It may include the use cases of how user is going to interact with
software system. The software requirement specification document consistent of all
necessary requirements required for project development.

To develop the software system, we should have clear understanding of Software


system. To achieve this, we need to continuous communication with customers to
gather all requirements. It is important to note that a formal SRS is not always written. In
fact, there are many instances in which effort expended on an SRS might be better spent in
other software engineering activities. However, when software is to be developed by a third
party, when a lack of specification would create severe business issues, or when a system is
extremely complex or business critical, an SRS may be justified.

Software Requirements Specification

1. Introduction:

1.1. Purpose: -
The purpose of this document is to describe the railway reservation system, which
provides the train timing details, reservation, billing and cancellation on various
types of reservation namely. In addition, This Railway reservation service will not
only enhance the reservation but will also help the commuters in getting support,
refunds and other real time fixes. It also states the various required constraints by
which the system will abide. The intended audience for this document is the dev
team, testing team and end users.

1.2. Scope: -

Technology has transformed many aspects of line in the 21st century, including the
way many of us make train reservations. To make ticketing more convenient for
travellers, a railway reservation system helps us in booking tickets from the comfort
of our homes or offices. While this is convenient for most people, it has made things
particularly easier for people residing in remote locations. The system will manage
the train and reservation information. Provide methods for train reservation and
cancellation. Users can also view the different train information, reservation status,
refund status etc. It also provides admin with ability to change train information and
generate reservation chart, monthly train reports etc.

1.3. Definitions, Acronyms and Abbreviations: -


Some of the few ACRONYMS, ABBREVIATIONS used in Ticket Reservation
System of Indian Railways are as follows:
 NTES – National Train Enquiry System
 PRS – passenger reservation system
 PNR – passenger name record
 RAC- Reservation Against Cancellation

1.4. References: -
 IRCTC Website
 IEEE recommended practice for SRS – IEEE Std 830-1993

1.5. Overview: -

The remaining sections of this document provide a general description, including


characteristics of the users of this project, the product’s hardware, the functional
requirements, data requirements and constraints and assumptions made while
designing or development of a Railway Reservation System. It also gives the
user’s viewpoint of the product. Section 3 gives the detail of all type of specific
requirements of this product. It also includes the external, internal requirements
and gives detailed description of functional requirements.

2. The Overall Description: -

2.1. Product Perspective: -

2.1.1. System Interfaces: -


System will have following major interfaces:
 User interface
 Hardware Interfaces
 Software Interfaces
 Communications Interfaces
2.1.2. Hardware Interfaces: -
 Computer: A computer will be required to access the website. It must
possess a minimum of 256mb of RAM for a smooth experience.
 Support for printer for report generation
 Since the application must run over the internet, all the hardware shall
require to connect internet will be hardware interface for the system.
As for e.g. Modem, WAN – LAN, Ethernet Cross-Cable.
2.1.3. Software Interfaces: -
 MySQL as SQL database server to store data.
 A windows-based operating system.
 Visual studio for coding and s/w development.
2.1.4. Communications Interfaces: -
 LAN/WLAN to connect to the internet.
 Indian Railway’s website www.indianrail.gov.in PRS enquires
regarding Berth availability, Passenger Status, Fare, Train Schedule
etc.

National Train Enquiry System (NTES) website
www.trainenquiry.com gives dynamic information about the running
status of any train and its expected arrival/departure at given station.
2.1.5. Memory Constraints: -
 Require at least 256mb of RAM and 10gb hard disk space to run
the application server. On client side memory constraints follow
constraints of corresponding browser.
2.1.6. Operations: -
System will support following major operations:
 Register
 Login
 Booking
 Cancellation
 Enquiries (Train info and reservation status)
 Update train info
 Report generation

2.2. User Characteristics: -


 Public: Any person who wants to book or enquire about availability of train/
seats. He must be comfortable in browsing and interacting with website or
app. A general knowledge of computer skills is required to access the
product.
 Admin: Representative of organisation who has authentication to make
changes in the internal data. The admin should be appropriately appointed by
the governing body. The admin be

2.3. Product Functions: -

Users with varying levels of familiarity with computers will mostly use this
system. With this in mind, an important feature of this software is that it
can be relatively simple to use. The scope of this project encompasses:
 RESERVE SEAT: A passenger should be able to reserve a seat in the train
specified by him if available. For this he has to first login, then fill a
reservation form with the details about his journey. The system checks for the
availability of the seat in the train and if the seat is available then it makes
entries regarding train name, train number, date of journey, boarding station,
destination. The passenger is the asked to pay the fare. After making payment
the passenger can print the ticket and E-ticket is sent to registered mobile
number. If seat is not available then passenger is put in the waiting list. The
system should handle standard rules provided by Indian Railways for seat
reservations.
 CANCEL RESERVATION: After passenger selects a ticket for reservation,
the system checks for the entries from the database and cancels the
reservation finally returning the ticket amount with some deduction according
to the rules of Indian Railways.
 UPDATE TRAIN INFORMATION: - Administrator can make changes in
train details like train name, train number, train route etc. in the system.
 REPORT GENERATION: - To generate reservation charts, monthly train
details, train schedule charts etc.
 REGISTER: - Provides Functionality for a new user to register his account.
 LOGIN/LOGOUT: Only the user with specified login id & password can get
access to the system. This provides security from unauthorized access.
 VIEW RESERVATION STATUS: -The user should be able to view the
reservation status of his ticket online. This can be done by entering the train
number and PIN number allotted to him during reservation. The system can
then display the status of reservation – confirmed, RAC or waiting.
 VIEW TRAIN INFO: - Provision to view the train schedule of the entire
network is made available online. The user can see the train name, train
number, boarding stations, stopping time, intermediate stations, duration of
journey, fare for different coaches etc.

2.4. Constraints: -
 System should support all major browsers like Chrome, Opera, IE.
 Website interface should adapt to handheld device screens.

2.5. Assumptions and Dependencies: -


Every system requires some certain parameters to work, to work as per the
requirement, our system also requires some parameters, and we assume them as
fulfilled before using this system, which are as:
 Booking agent/ user will be having his/ her own username registered before
booking of any ticket, else, they’ll have to register themselves on our website.
 This software needs booking agent/ user to have some knowledge of railway
reservation system and its working.
 Software is dependent on access of Internet, as it is a remote application, it is
necessary to have internet access.

3. System Requirements: -

This section contains the software requirements to a level of detail sufficient to enable
designers to design the system and testers to test the system.

3.1. External Interfaces: -

External Interface requirements refers to needs of this software’s front end to work
efficiently, the requirements are further classified into certain topics, which are as:
i. User Interfaces: There are basically 7 major user interfaces.
a. Login screen: Requires entering email as well as password to login.
b. Registration screen: requires entering email id, password to be used,
Name, Gender and contact number (optional) to register an account
with the system.
c. Train Details Screen: Users can select journey date as well as source
and destination to get a list of trains. They can also enter train number
directly to get information regarding a particular train.
d. Reservation Screen: The user, after selecting a train and coach, is
presented with the reservation screen which requires inputting the
names, sex, ages, berth preference of all passengers. This is displayed
in terms of a form. After successfully submitting the form, the user is
taken to the payment gateway.
e. Cancellation Screen: The user can cancel a ticket by selecting the
corresponding reservations under his name presented on the screen.
The user is prompted with a conformation screen before cancellation.
f. Reservation Status Screen: Users can view the reservation status of all
their tickets through this screen.
g. Update Train Information: This is only available to the admin. He can
edit and add train information into the list of information presented.
ii. Hardware Interfaces: Same as section 2.1.2
iii. Software Interfaces: Same as section 2.1.3

3.2. Functional Requirements: -

Functional requirements refer to the Functions, which were required before and
covered in this system/ software we have developed. Mentioned below are the
functions/ features of our software system:
 VIEW TRAIN DETAILS: The users can view the different train schedules,
train availability, journey times, intermediate stations.
 REGISTER: Provides user functionality to register an account with the
system.
 LOGIN/LOGOUT: Users can login by typing their username and password to
get access to the system and their info. The users can then safely logout by
click of a button.
 RESERVATION: The users can login and then select the journey dates and
particular train as per availability to make a reservation.
 CANCELLATION: If the customers want to cancel the ticket, they can login
to their account and successfully cancel their ticket.
 VIEW RESERVATION STATUS: The customers can view their reservation
status for different tickets by logging in with the account using which the
reservation was made.
 UPDATE TRAIN INFORMATION: Only admin has access to this feature.
He can update train details such as name, number as well as journey and
boarding stations.
 REPORT GENERATION SCREEN: Only available to admin. He can select
the report to be generated from the list presented and then print it.

3.3. Performance Requirements: The system should be available always (24/7) so that
users can access the application at any time.
3.4. SOFTWARE SYSTEM ATTRIBUTES:
3.4.1. Security: The user will require the correct username and password to login.
The passwords are encrypted using AES and then stored on the database to
provide additional security.
3.4.2. Maintainability: The application will be designed in a maintainable manner. It
will be easy to incorporate new changes and requirements henceforth.
3.4.3. Availability: The application will be built to reduce downtime in event of a
crash or power outage.
3.5. Logical Database Requirements:
i. User info: User ID, password, Name, email, contact, role
ii. Train info: train name, train number, fare
iii. Journey info: Journey Number, Train number, journey start date and time,
journey end date and time
iv. Boarding Station Info: Train Number, Journey Number, Station ID, Arrival
Time, Departure Time
v. Station Info: Station Name, Station ID, Location
vi. Reservation Info: Reservation ID, Train number, Seat number, Status, Date,
fare paid
vii. Cancellation Info: Reservation ID, Cancellation ID

Вам также может понравиться