Software Requirement Specification Software Engineering
Software Requirement Specification Software Engineering
Specification
Software Engineering
CS 2002
Table of Contents
1.
Introduction .......................................................................................................................... 2
1.1 Purpose ............................................................................................................................. 2
1.2 Intended Audience and Reading Suggestions .................................................................. 2
1.3 Project Scope .................................................................................................................... 3
1.3.1
Definitions................................................................................................................. 4
1.3.2 Acronyms and Abbreviations ........................................................................................ 5
2. General characteristics ...................................................................................................... 6
2.1 Product Perspective .......................................................................................................... 6
2.2 Product Functions ............................................................................................................. 6
2.3 User Classes and Characteristics ...................................................................................... 7
2.3.1
Role based access ...................................................................................................... 7
2.4 Constraints........................................................................................................................ 8
2.4.1
Design and Implementation Constraints ................................................................... 8
2.5 Project Documentation ..................................................................................................... 9
2.6 Assumptions and Dependencies ....................................................................................... 9
3. System Features ................................................................................................................ 10
3.1 Functional requirements ................................................................................................. 10
3.2 Entity Relationship Diagram .......................................................................................... 11
4. External Interface Requirements ................................................................................... 12
4.1 External Interfaces.......................................................................................................... 12
4.2 User Interfaces................................................................................................................ 12
4.3 Hardware Interfaces ....................................................................................................... 16
4.4 Software Interfaces ......................................................................................................... 16
4.5 Communications Interfaces ............................................................................................ 16
5. The Nonfunctional Requirements .................................................................................. 17
5.1 Performance Requirements ............................................................................................ 17
5.2 Safety Requirements ...................................................................................................... 17
5.3 Security Requirements ................................................................................................... 17
5.4 Software Quality Attributes ........................................................................................... 17
5.5 Business Rules................................................................................................................ 18
6. Appendix ............................................................................................................................ 19
6.1 References ...................................................................................................................... 19
7. Group Members ................................................................................................................ 19
Page 1
1. Introduction
1.1 Purpose
This Software Requirement Specification (SRS) specifies the requirements of the Railway
Reservation System which provides the train timing details, reservation, billing and cancellation
on various types of reservation namely,
Using these systems Ticket Counter person can perform operations like finding out the train
timings and to know information about seats availability and costs of each ticket etc.
Page 2
Page 3
1.3.1 Definitions
System
System refers to the railway reservation system which provides the train timing details,
reservation, billing and cancellation on various types of reservation.
Server
A computer, or a software package, that provides a specific kind of service to the client
software running on other computers. In the case of our system, it refers to the server used by
the SLRA.
Database
This term is generally referred with the term Database Management System. A database is a
set of data that has a regular structure and that is organized in such a way that a computer can
easily find the desired information.
LAN
The LAN refers to Local Area Network, a computer network that spans around a relatively
small area. Most LANs are confined to a single building or a group of buildings. This refers to
the networking capability within by the SLRA.
Apache
Apache is the most popular Web server software. It enables a computer to host one or more
websites that can be accessed over the Internet using a Web browser.
PHP
The PHP Hypertext Preprocessor allows web developers to create dynamic content that
interacts with databases. This is a server side scripting language which is used to create the
backend of the web site.
Java Script
Java Script is a user interface scripting language developed by Netscape for its Navigator and
Communicator World-Wide Web browsers. This is the scripting language of the web which is
used to add functionalities to the web site
WAMP
Windows + Apache + My SQL + PHP
Page 4
Page 5
2. General characteristics
2.1 Product Perspective
The railway reservation system includes a web reservation system which enables the customers
to gain the train details like their timings, number of seat available and reservation billing and
cancelling the tickets.
To expand the scope of travelling the following features are expected.
Providing existing clerks with a new environment in which to make reservations for train
travelling.
Providing an avenue for customers to get their tickets in a more convenient way.
Regaining control of the railway ticket sales to avoid scalping and overselling of tickets.
Implementing a prototype of a scaled down version of the final system to test the solution
and further develop requirements.
Collecting statistics in a more efficient manner for future railroad development and
construction.
Increasing efficiency of railroads.
Therefore people can interact with the system by reserving seats and trains online and
paying using credit cards.
Page 6
SLRA Operator
This is the administrator of the site and able to access the system any time and any level.
Functions of the SLRA operator includes checking the availability of the reservation
made by the registered passenger and confirming the reservation, cancelling the
reservation and accepting the payments made by the passenger for the ticket.
The use case diagram for the SLRA Operator is given below:
Figure 1.1
User
Users will be able to visit the web site and have the access to most basic features of the
site including train timing details, train information, information about the ticket
reservation etc. Users don't have access to more advance features. In order to so users
must register and become a registered passenger. Figure 1.2 illustrates the use case
diagram for guest user.
Figure 1.2
Page 7
Registered Passenger
Registered passengers are the users that have given their information and registered in the
system. They are able to login to the system and are able to access the more advance
features of the system including checking the availability of the seats, making ticket
reservations, making payments for the reserved tickets using credit cards, making
cancellation of the reservations they have done etc. The use case diagram for the
Registered Passenger is given below:
Figure 1.3
2.4 Constraints
The Constraints for the project are:
The number of passengers that can be taking a train at once is limited to 500 passengers.
Reservation should be done prior to 60 days of the journey.
Cancellation should be done prior to 30 days of the journey
Only 5 tickets are issued per one person
Payments can be done through credit cards only. Cash is not expected.
Scalping of tickets is a popular activity in Sri Lanka, and SLRA wants to discourage
such practices
The passenger is responsible to do the pricing since we do not have access to the
accounts.
The passenger is responsible for maintain the delivered system.
Some of import details of SLRA are confidential for outsiders (Passengers).
Payroll is not fully automated due to lack of information from the passenger.
Page 8
Page 9
3. System Features
3.1 Functional requirements
Registration
Users only have limited access to the web site and able to process only basic features of the site.
So in order to gain more access to the web site a user must register with the site and become a
registered passenger by giving some basic information such as First Name, Last Name,
Username and Password, Email address, contact number.
Once the user fills the form and gets registered with the site the system will check the Username
with other existing registered-users usernames and if it is matched with another username then
the system will request the user to change the username that was entered. Otherwise registration
will be done successfully and the information will be send to the data base. If the user is not
willing to register with the site then he/she wont be able to make ticket reservations and to
access other advanced features of the site.
Login
A registered passenger can log into the system by entering the correct combination of username
and the password.
Once the registered passenger enters the username and password the system will check the
combination with the records in the database.
If it is matching with the existing record in the database then passenger can log into the system
successfully. Otherwise passenger will be warned with Incorrect username or password prompt
and system will allow them to re-enter the username and password.
Logout
Once the registered passenger finishes function after login into the system he/she must logout
from the system by clicking the "Log out" button in the interface. After login out of the system
successfully a message will be displayed "successfully logout from the system".
Page 10
Figure 1.4
Page 11
Employee:
An employee can only view the login interface and after login to the system he can just
view the front page where it can enter some record, delete it, shift it to some other place
and logout after a certain time.
Passenger:
It doesnt have any direct link with the system. It just can browse the web browser for
online booking facility. There we had to record its information and then he/she will view
the configuration page having a message.
Administrator:
System Actor:
This is a system actor that provides the whole schedule to the original system it just can
update the system according to its need, Online booking is also handled by it provides a
complete interface to passengers for online booking.
Page 12
HOME
CANCEL
HELP
Figure 1.5
When Ticket Reservation is selected it will display the following web page. The title of this
page is consistent with the function selected, and since the Ticket Reservation was selected,
the title displays Ticket Reservation. The purpose of this is to allow the user know what part
of the system they are accessing. Furthermore, the user can select any of the four
functionalities.
LOG OUT
HELP
MAIN MENU
Figure 1.6
Page 13
BACK
DISPLAY AVAILABLE
CLEAR
Figure 1.7
The Display Available illustrates the available trains, seats and the city they travel to.
However, before we get to the next page when clicking Display Available the interface
below demonstrates the Make Reservation function. The following is the list of available
seats for the trains the customer specified. The confirm button will forward the customer to
the payment page.
Page 14
CONFIRM
BACK
Figure 1.8
The following interface allows the user to pay for the ticket as appropriate. This page is part
of the Passenger Account function, and it is used to make payment for the ticket reserved.
LOG OUT
MAIN MENU
SUBMIT
CLEAR
Figure 1.9
Finally, the submit button displays the appreciation page as shown below with a button to go
to the main menu.
Page 15
LOG OUT
MAIN MENU
2012 SLRA TRAVEL SERVICES PRIVATE LIMITED
Figure 1.10
Page 16
All the view data functions should execute within one second.
All the update, delete and add functions should execute within one second.
At least 500 users should be able to login to the website at once.
Each and every user has to log in to the system using a Username and a Password and
should thereby prove their identity.
An encryption method will be used when storing the passwords in the database and
therefore even if the database is hacked the passwords would be kept safe.
Only the super admin will have full access and privileges to the system.
The user information will never be sold to other parties and will be kept secure at all
times.
Users will be authenticated to ensure that no unauthorized users gain access to private
information.
Page 17
Page 18
6 . A p p e n d ix
6.1 References
o SRS Sample
www.jsu.edu/mcis/docs/SRSSample.doc, Accessed on Aug. 05, 2012
http://www.scribd.com/doc/38642993/SRS-Documentation-for-Railway-ReservationSystem, Accessed on Oct. 07, 2012
o SRS Sample Manual Testing
www.gcreddy.net/2010/03/sample-srs-document.html, Accessed on Aug. 06, 2012
o Sumathi, S., Esakkirajan, S., 2007. Fundamentals of Relational Database
Management Systems. Berlin, Heidelberg, New York, USA: Springer
7. Group Members
Name
1)
2)
3)
4)
5)
C. Jayaweera
K. D. Ranasinghe
M. A. L. H. N. Munasinghe
J. K. H. M. Perera
T. K. R Nipuni
Index No.
10424
10392
10469
10477
10472
Page 19