Software Requirement Specification for Railway Reservation System
The SRS for Railway Reservation System is given as follows:
Introduction
· Purpose
· Scope
· Definition
· Product and its function
· Benefits and Goals
Overall Description
· Product Description
· Product Functioning
· Functions of Project
· Users of Project
Specific Requirements
· Interface Requirements
· User Requirements
· Hardware Requirements
· Software Requirements
· Logical Database Requirements
Basic Processing Action of the System Appendices
· Input/Output Formats
· Instruction for Security
· Data Model
· Functional Model
Introduction
Purpose:
The purpose of Railway Reservation System is to create Reservation, Cancel Reservation, Viewing Train Information, Viewing Reservation Details, Updating Train Information, Updating Reservation Details and Generate Reports.
Scope:
Reservation Clerk is a person to create and Cancel Reservation by entering Login Password. Manager is a person who updates the Train Information by entering his own Password. The system can handle only reservation and train details efficiently and it doesn’t contain other details about the railway administration. The main purpose of this system is
Ø Creating reservation
Ø Cancel reservation
Ø View reservation status
Ø View train schedule
Ø Generating reports
Ø Update train schedule
Ø Update reservation details
The Seats of Reservation cannot be more than the seats of Train at that date. This is a constraint that has to be followed by the Clerk when he creates the Reservation. For that purpose he wants to check the seats remaining present in the Train.
The scope of this system in creating Reservation is that, from any Railway Station we can Create Reservation, which is updated automatically in all the stations. Hence, there is no confusion to the Reservation Clerk in all the stations to create the Reservation. This can be possible by maintaining Global Database. Clerks present at different stations can access the global database and the clerks can easily understand the remaining reservation seats. It provides the ability to create reservation from different places for a train.
The system is so secured and clerk and manager utilize it. Nobody can able to access the system without his or her permission because of providing login facility to the system. The password is in the form of cipher text by using cryptography technology, so it cannot be hacked by any person. The global database can passes through network in order$to utilized!bymanagers!or clerks at different places. So, we want to provide network security because of the data not hacked by the other persons when it is going through network cables. This network security is pzovided by the cryptograrhy technology.
Definition:
This is a project, which is used to Create and Cancel Reservation and to Update the Train and Reservation details.
Product & its functions:
The Product of this project is Railway Reservation System, which is to create Reservation, Cancel Reservation, Viewing Train Information, Viewing Reservation Details, Updating Train Information, Updating Reservation Details and Generate Reports.
Benefits and Goals:
The Benefit of this project is to reduce the work of Reservation Clerk and it is easy to check the remaining seats present in the Train and easily view the Reservation Status of the Train and tells to the passenger.
The Goals of this project is that, from any Railway Station we can Create Reservation, which is updated automatically in all the stations. Hence, there is no confusion to the Reservation Clerk in all the stations to create the Reservation.
Overall Description
Product Description:
The Reservation Clerk gets the details from the passenger and he checks whether the weats are remaining in order vo grecte`the Reservation. If the seats are available, then he allocate the seat to the passenger by giving the`Reservation Slip to the passenger and he Update the Reservation details. If weats`are not`availqble, hg places the Rewervation in ‘Waiting List’.
The Resmrvation Clerk gets the details from the passenger in order to cancel the Reservation and Canwels Reserva~ion. He also$Update the!Reserva|ion details after canceling the Reserva|ion and he creates the Reservction gor the Passenger who are placed in the Waiting List.
The reservation clerk tell the reservation status to passengers who are in waiting list.
The manager updates the train information and he generates the report of the train, reservation details.
Product Functioning:
· The reservation clerk takes the detail from the passenger.
· The reservation clerk checks whether the seats are reaming or not.
· If seats are available, reservation clerk create the reservation and updates the reservation details.
· If seats are not available he place the reservation in waiting list.
· Reservation clerk cancels the reservation and update the reservation details.
· The manager updates the train information and generates the report.
Functions of Project:
There are seven functionalities provided by the Railway Reservation System.
1. Create Reservations: A passenger should be able to reserve seats in the train. A reservation form is filled by the passenger and given to the clerk, who then checks for the availability of seats for the specified date of journey. If seats are available them the entries are mode in the system regarding the train name, train number, date of journey, boarding station, destination, person name, sex and total fare. Passenger is asked to pay the required fare and the tickets are printed. It the seats are not available then the passenger is informed.
2. Cancel Reservation: A passenger wishing to cancel a reservation is required to fill a form. The passenger then submits the form and the ticket to the clerk. The clerk then deletes the entries in the system and changes the reservation status of that train. The clerk crosses the ticket by hand to mark as cancelled.
3. Update Train Info: Only the administrator or manager enters any changes related to the train information like change in the train name, train number, train route etc. in the system.
4. Generate Report: Provision for generation of different reports should be given in the system. The system should be able to generate reservation chart, monthly train report etc.
5. Verify login: For security reasons all the users of the system are given a user id and a password. Only if the id and password are correct is the user allowed entry to the system and select from the options available in the system.
6. View Reservation Status: All the users should be able to see the reservation status of the train online. The users needs to enter the train number and the pin number printed on his ticket so that the system can display his current reservation status like confirmed, RAC or Wait – Listed.
7. View Train Schedule: Provision should be given to see information related to the train schedules for the entire train network. The user should be able to see the train name, train number, boarding and destination stations, duration of journey etc.
Users of Project:
Clerk: This person uses this system to create reservation, cancel reservation, view reservation status, update reservation details, view train schedule.
Manger: This person uses this system to update train information and to genercte reports.
Specific Requirements
Interface Requirements:
The interface requirements of Railway Reser~ation System include
I
v Easy to Navigate.
v Less Graphics
v Display Error Messages ane Relevant Dialogue Boxes
v Providing high security such that not to be modified by irrelevant users.
v It must provide anl options such that(to reduce the input cctions by usevs.
User Requirements:
After a brief study of requirements of clients the requirmments of this system is given as follows:
v Login information
v Reservation details
v Train details
Hardware Requirements:
The hardware requirements of this system is given by
ü 128 MB of RAM
ü 40 GB of HDD
ü Printer
ü LAN Cable
Software Requirements:
The software requirements of this are as follows:
ü Windows 2000 OS
ü SQL
Logical Database Requirements:
The following information is to be stored in the database
ü Passenger details
ü Reservation details
ü Train details
ü Login details
Basic Processing Actions of the System
The basic actions that are performed by the system is given as follows:
Ø Verification of user
Ø Maintain Reservation details
Ø Maintain Train details
Appendices
Input/Output formats:
The input format for the system is given as follows:
Ø Login Screen
Create Reservation
Output format for the system contains the following screen
This is the form that is to modified the train details. This form consists of no of seats textbox, which shows the remaining seats present in the train. The no of seats value is automatically changed when we create or cancel reservation. This is the form which consist of two buttons for the purpose of create reservation and to cancel reservation. When the seats text box has value zero than its, says no seats are remaining in the train to create reservation.
Reports for Railway Reservation System
This is report generated by manager after modifying train details.
This is report generated by the clerk in order to give the reservation details to the manager.
This is report generated by the clerk about the passenger details who take the reservation.
Instructions for Security:
Security is an integral part of any system. Reservation clerk can create or cancel reservation when he goes through the login form. He is not able to update the train information and generating report. Manager update the train information and generate report only when he go through the login form. So, the system so secured, because of avoiding other people to update the train information and reservation details.
Data Model:
Class involved in project
Ø Passenger
Ø Manager
Ø Clerk
Ø Login
Ø Reservation
Ø Train
Ø Reports
Attributes of the Entities are:
Objective Classes | Attribute |
Passenger | P _ Name P _ Age P _ Address P _ Phoneno P _ Sex |
Train | T _ Number T _ Name T _ Time T _ Boardsta T _ Dest T _ Seatinfo |
Reservation | R _ Number R _ Seatno R _ Trainno R _ Date R _ Boardsta R _ Class R _ Cost |
Clerk | C _ Username C _ Password |
Manager | M _ Username M _ Password |
Report | Re _ Number Re _ Name |
Login | L _ Username L _ Password |
Association between the classes:
Ø Train has Reservation
Ø Clerk updates Login
Ø Clerk updates Reservation
Ø Manager updates Train
Ø Manager updates Login
Ø Manager generate Report
Ø Passenger has Reservation
Ø Clerk get details
from Passenger
Object Diagrams for the System
E-R Diagrams
Functional Model
Generating Report
Cancel Reservation View Reservation Status
View Train Schedule
Update Train Info
Verify login
Session – 4
a) DFD’s upto appropriate levels for Railway Reservation System
Create Reservation
Generating Report
Cancel Reservation
View Reservation Status
View Train Schedule
Update Train Info
Verify login
b) Draw ERD’s for RRS. Describe the relationship between different entities.
Attributes of the Entities are:
Objective Classes | Attribute |
Passenger | P _ Name P _ Age P _ Address P _ Phoneno P _ Sex |
Train | T _ Number T _ Name T _ Time T _ Boardsta T _ Dest T _ Seatinfo |
Reservation | R _ Number R _ Seatno R _ Trainno R _ Date R _ Boardsta R _ Class R _ Cost |
Clerk | C _ Username C _ Password |
Manager | M _ Username M _ Password |
Report | Re _ Number Re _ Name |
Login | L _ Username L _ Password |
Association between the classes:
Ø Train has Reservation
Ø Clerk updates Login
Ø Clerk updates Reservation
Ø Manager updates Train
Ø Manager updates Login
Ø Manager generate Report
Ø Passenger has Reservation
Ø Clerk get details
from Passenger
c) Design Data Dictionary for RRS.
Data Dictionary
The Dictionary of the terms that are used in railway reservation system is given in the below table:
Name | Expansion of Name | Where Used | Additional Description |
Passenger | In Functional Diagrams & Data Diagrams | This is an object who wants to create, cancel reservation and to check reservation, train status. | |
Clerk | Reservation Clerk | In Functional Diagrams & Data Diagrams | This is an object who creates, cancel, and checks reservation status and update reservation info. |
Admin | Manager | In Functional Diagrams & Data Diagrams | This is an object whomaintains reservation and train info and generate report. |
Printer | In Functional Diagrams & Data Diagrams | This is an object, which generate reports. | |
Login | Login information | In Functional Diagrams & Data Diagrams | This is a data base object, which stores the login password and user name. |
Reservation | Reservation Information | In Functional Diagrams & Data Diagrams | This is a data base object, which stores the reservation details. |
Train | Train Information | In Functional Diagrams & Data Diagrams | This is a data base object, which stores the train details. |
Verify login | In Functional Diagrams | This is a process in order to check the user name and password given by the clerk and manager. | |
Update Train Info | In Functional Diagrams | This is a process in order to update the train information. | |
View Train Schedule | In Functional Diagrams | This is a process in order to view the train information. | |
View Reservation Status | In Functional Diagrams | This is a process in order to view the reservation details. | |
Create Reservation | In Functional Diagrams | This is a process in order to create reservation. | |
Cancel Reservation | In Functional Diagrams | This is a process in order to cancel reservation. | |
Generate Report | In Functional Diagrams | This is a process in order to generate report. | |
P _ Name | Passenger Name | In Data Diagrams | This is an attribute of a passenger. |
P _ Age | Passenger Age | In Data Diagrams | This is an attribute of a passenger. |
P _ Address | Passenger Address | In Data Diagrams | This is an attribute of a passenger. |
P _ Phoneno | Passenger Phone No | In Data Diagrams | This is an attribute of a passenger. |
P _ Sex | Passenger Sex | In Data Diagrams | This is an attribute of a passenger. |
T _ Number | Train Number | In Data Diagrams | This is an attribute of a train. It is an unique field. |
T _ Name | Train Name | In Data Diagrams | This is an attribute of a train. |
T _ Time | Train Time | In Data Diagrams | This is an attribute of a train. |
T _ Boardsta | Train Boarding Station | In Data Diagrams | This is an attribute of a train. |
T _ Dest | Train Destination | In Data Diagrams | This is an attribute of a train. |
T _ Seatinfo | Train Seat information | In Data Diagrams | This is an attribute of a train. |
R _ Number | Reservation Number | In Data Diagrams | This is an attribute of a reservation. It is a unique attribute. |
R _ Seatno | Reservation Seat Number | In Data Diagrams | This is an attribute of a reservation. |
R _ Trainno | Reservation Train Number | In Data Diagrams | This is an attribute of a reservation, which is a foreign key for the ‘Train Info’ object. |
R _ Date | Reservation Date | In Data Diagrams | This is an attribute of a reservation. |
R _ Boardsta | Reservation Boarding Station | In Data Diagrams | This is an attribute of a reservation. |
R _ Dest | Reservation Destination | In Data Diagrams | This is an attribute of a reservation. |
R _ Class | Reservation Class | In Data Diagrams | This is an attribute of a reservation. |
R _ Cost | Reservation Cost | In Data Diagrams | This is an attribute of a reservation. |
C _ Username | Clerk User Name | In Data Diagrams | This is an attribute of a clerk |
C _ Password | Clerk Password | In Data Diagrams | This is an attribute of a clerk |
M _ Username | Manager User Name | In Data Diagrams | This is an attribute of a manager. |
M _ Password | Manager Password | In Data Diagrams | This is an attribute of a Manager |
Re _ Number | Report Number | In Data Diagrams | This is an attribute of a report. |
Re _ Name | Report Name | In Data Diagrams | This is an attribute of a report. |
L _ Username | Login User Name | In Data Diagrams | This is an attribute of a login. |
L _ Password | Login Password | In Data Diagrams | This is an attribute of a login. |