SRS Railway New
SRS Railway New
SRS Railway New
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.
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.4. References: -
IRCTC Website
IEEE recommended practice for SRS – IEEE Std 830-1993
1.5. Overview: -
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.
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.
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
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