Software Requirement Engineering
Fall 2020
Department of Computer Science
RAILWAY RESERVATION AND
MANAGEMENT SYSTEM
B.S. (SE) SRE Presentation Report
Submitted by Syed Haider Imam Jafri (SP19-BSSE-0042).
Name: Muhammad Zeeshan Imran (SP19-BSSE-0049).
Name: Muhammad Talha Aslam (SP19-BSSE-0046).
Name: Abdullah Afzal (SP19-BSSE-0061).
Section: Am
Submitted to:
Ms. Nazish Nouman
Date: 30December,2020
DEPARTMENT OF COMPUTER SCIENCE
MUHAMMAD ALI JINNAH UNIVERSITY
22-E BLOCK 6, PECHS, KARACHI-PAKISTAN
i
Software Requirement Engineering
Fall 2020
SOFTWARE REQUIREMENTS
SPECIFICATION FOR
RAILWAY RESERVATION AND
MANAGEMENT SYSTEM
VERSION 1.2.1.0
PREPARED BY SYED HAIDER IMAM JAFRI
MUHAMMAD ZEESHAN
MUHAMMAD TALHA
ABDULLAH AFZAL
DATE : 28-12-2020
ii
Software Requirement Engineering
Fall 2020
Table of Contents
Table of Contents....................................................................................................................... ii , iii
1. Introduction ............................................................................................................................1
1.1 Product Vision ........................................................................................................................... 1
1.2 Product Description .................................................................................................................. 1
1.3 Product Scope........................................................................................................................... 1
1.3.1 In scope .................................................................................................................................. 1
1.3.2 Out scope................................................................................................................................ 2
1.4 Business Requirements........................................................................................................... 2
1.5 Business Rules.......................................................................................................................... 2
1.6 Business Risks.......................................................................................................................... 3
1.7 Business Stakeholders ............................................................................................................ 3
2. Overall Description...............................................................................................................4
2.1 Product Features ...................................................................................................................... 4
2.2 User Classes and Characteristics .......................................................................................... 4
2.3 Operating Environment............................................................................................................ 4
2.4 Design and Implementation Constraints ............................................................................... 5
2.5 User Documentation................................................................................................................. 5
2.6 Assumptions and Dependencies............................................................................................ 6
2.6.1 Constraints.............................................................................................................................. 6
3. External Interface Requirements ......................................................................................7
3.1 User Interfaces............................................................................................................................. 7
3.2 Hardware Interfaces..................................................................................................................... 7
3.3 Software Interfaces...................................................................................................................... 7
3.4 Communications Interfaces......................................................................................................... 8
iii
Software Requirement Engineering
Fall 2020
4. System Features .......................................................................................................................8
4.1 System Feature 1 ......................................................................................................................... 8
4.1.1 Description and Priority .......................................................................................................... 8
4.1.2 Functional Requirements......................................................................................................... 8
4.1.3 Add Feature Tree..................................................................................................................... 9
5. Functional Requirements ...................................................................................................10
5.1 Use-Case 1a................................................................................................................................ 10
5.2 Use-Case 1b................................................................................................................................ 10
5.2 Use-Case 2 ........................................................................................................... 11
5.2 Use-Case 3a ........................................................................................................... 12
5.2 Use-Case 3b ........................................................................................................... 12
6. Nonfunctional Requirements.............................................................................................13
6.1 Performance Requirements .................................................................................................... 13
6.2 Safety Requirements................................................................................................................ 13
6.3 Security Requirements............................................................................................................. 13
6.4 Software Quality Attributes(and so on).................................................................................. 13
7. Other Requirements .............................................................................................................14
Appendix A: Project Gantt Chart............................................................................................15
Appendix B: Analysis Models / Design Models..................................................................16
Appendix C: Screenshots of Prototypes..............................................................................21
8. References..............................................................................................................................24
iv
Software Requirement Engineering
Fall 2020
1. Introduction:
The rail booking system helps commuters inquire about locally available trains and
destinations, bookings and cancellations of tickets, inquiries about ticket status, etc.
Product Vision:
1.1 For all people in the country who suffer from the railway management. The
RAILWAY-LIVE is a mobile application that provides the online train ticket booking
and shows the train distance from initial to final destination unlike other online app
which only provide ticket booking. Our product provides ease to the people and saves
a lot of their time in booking tickets from ticket office and also provides the update of
departure and arrival of the train.
1.2 Product Description:
Passengers can book their tickets on the train where seats are available. For this, the
passenger must provide the train number he or she wants and the date the ticket will be
booked. Before booking a passenger ticket, the suitability of the train number and date of
booking is checked. Once the train number and date of booking have been confirmed, a seat
will be considered. In that case, the ticket is automatically booked and an associated ID is
stored with the other passenger details. After all tickets have been received, a certain number
of tickets have been saved in standby mode. When the waiting area is also completed, tickets
are not booked and a message of non-availability of seats is displayed. Once a ticket is
booked it can be canceled at any time. Ticket ID is searched through unique ID, and the
associated record is deleted.
1.3 Product Scope:
1.3.1 In Scope:
We want to build an application for mobile where there is a list of trains you can
select and book your ticket and can check your train details and location from the
destination. This app might take 11 to 12 months to complete. We will deploy this
project on three operating system IOS, ANDROID and harmony OS.
1
Software Requirement Engineering
Fall 2020
1.3.2 Out Scope:
• Minimizes the transaction time of issuance to less than 20 seconds per ticket.
• Enables pretravel Booking.
• Full filling customer needs by 24hour service.
• Minimizes possibilities of manipulations and malpractice.
• Enables centralized control for monitoring and auditing.
• Ensures accounting of the tickets sold across all railway zones.
1.4 Business Requirement:
Background of the Project: Background of the Project: In our county Pakistan there are
number of counters for the reservation of the seats and one can easily make reservations
and get tickets. The online railway management system will facilitate customers. It will
enquire about the train’s availability about the status and about its destination and stops.
Booking and cancelation of the tickets will be on a single click for the users. And it will
give the railway employees to check the authenticity of the tickets.
Business Opportunities: Agents will be able to sell unreserved tickets through
computerized system. The number of train ticket booking agents at the station will be
determined by the committee and the local people where the stations are located will be
selected first. Permit tickets require documentary proof. can also be issued by staff.
Business Objectives: The train management system is to manage train details, bookings,
payments, seat, Ticket. Must carry all information about train, customer, ticket, trains.
Will generate reports of payroll seats. Manages seat information and Compilation of all
Ticket records.
1.5 Business Rule:
o Only admins can make chances in the fare or freight charges.
o Online payments will be reverted to the owners account no cash service will flow in the
system.
o On cancellation full amount cannot be refunded until or unless and admin gives this
access.
o One CNIC can be registered once in the system.
2
Software Requirement Engineering
Fall 2020
1.6 Business Risks:
Since it is an online reservation system user highly depend on internet . So one the
main risks in this system in regards with business will be that we highly rely on
internet providers as well as gsm providers if both services are not available then
huge risk involving business will be there.
1.7 Business Stakeholder:
Internal Stake holders.
Railway station staff
Railway conductors
Railway Department Administration
System engineers
Railway Passengers
External Stakeholders:
PCTA
Pakistan Government
Mobile Service providers
Banks
Internet service providers
2. Overall Description:
3
Software Requirement Engineering
Fall 2020
This document contains the problem statement that the current system is facing which is
hampering the growth opportunities of the company. Contains list of stakeholders and clients
for which the solution is given for. It also identifies the needs and requirements of the
participants identified in the reflection process as part of the required work environment. Its a
list goes on and briefly outlines the main features and a brief description of each proposed
program.
2.1 Product feature:
Employing agents having knowledge in the computer department will make the most of this
program. With this in mind, the key feature of this software is that it is easy to use.
User Classes and Characteristics:
User Classes:
o Manage
o Track
o Control
o GPS
o data collection.
User Characteristics:
o Level of Education: At least the user of the system is fluent in the English
language.
o Technology Expertise: The user should be free to use standard purpose
programs on the computer.
2.2 Operating Environment:
Any window-primarily based running machine with dos support are number one
necessities for software improvement. Windows Xp, frontpage and dumps are
required. The systems have to be related through lan and connection to internet is
mandatory.
4
Software Requirement Engineering
Fall 2020
For the hardware necessities the srs specifies the logical characteristics of each
interface b/w the software program product and the hardware additives. It specifies
the hardware necessities like memory regulations, cache size, the processor, ram size
and many others. Those are required for the software to run.2.3 Design and
Implementation.
Design and Implementation Constraints:
There are several factors in client situations that may preclude designer selection.
Such factors include compliance standards, resource limits, working environment,
reliability and security requirements and policies that may affect the design of the
system. SRS (Software Needs Analysis and Specification) should identify and clarify
all such issues.
Standard Compliance: - This specifies the necessities for the requirements the
machine should follow. The standards might also encompass the document format
and accounting properties.
Hardware Limitations :- The software may have to operate on some existing or
predetermined hardware, thus imposing restrictions on the design. Hardware
boundaries can encompass the varieties of machines to be used, running machine to
be had at the machine, languages supported and boundaries on primary and secondary
storage.
Reliability and Fault Tolerance: - fault tolerance requirements can area a
prime constraint on how the gadget is to be designed. Fault tolerance necessities
regularly make the device greater complex and high-priced. Necessities about device
conduct in the face of positive varieties of faults are detailed. Healing requirements
are frequently an integral part right here, detailing what the gadget ought to do i a few
failure takes place to make sure sure residences. Reliability requirements are very
crucial for important programs.
2.3 User Documentation:
Users using windows or Linux can easily login to this service and simply make their
account by clicking on register button then a form will appear which is very basic for
everyone simply enter all details and click register a text message will pop on your phone
5
Software Requirement Engineering
Fall 2020
and there will be a pin use the pin on from the mobile and enter it on the page displayed
in front you. Or users can log on as other services such as google Facebook etc.
Same is for Android and iOS users
2.4 Assumption and Dependencies:
• booking retailers will be having a legitimate username and password to get
admission to the software program.
• the software program needs reserving agent to have complete information of
railways reservation device.
• software is depending on get admission to to net.
2.4.1 Constraint:
The system will run under windows10 or higher platform of operating system.
6
Software Requirement Engineering
Fall 2020
3. External Interface Requirements
3.1 User Interfaces
keyboard, mouse, printer
3.2 Hardware Interfaces
SERVER SIDE
Operating System: Windows 10 , 8 , 7
Processor: i3 , i5
Memory: 4 GB
Hard Drive Capacity: 250
CLIENT SIDE
Operating System: Windows 10, Windows 8 or Windows7
Browser: Internet Explorer and above. Mozilla or Google Chrome.
Memory:512 MB
3.3 Software Interfaces
Database
Microsoft office Access
Web Server
Apache server version
7
Software Requirement Engineering
Fall 2020
Programing Languages
.net
Java
3.4 Communications Interfaces
Dial Up Modem
Broadband Internet
GSM internet
4. System Features
Creating and changing issues at ease
Query issue list to any depth
Simple status and resolutions
Accuracy in work
Easy and fast retrieval of information
Work becomes very speedy
Easy to update Information
4.1 System Feature 1
The user are going to be ready to look for trains through a uniform screen. Advanced
options will be available by clicking appropriate link. [Priority = High]
4.1.1 Description and Priority
The search feature allows the user to search for a rail line train on a variety of
dimensions.
4.1.2 Functional Requirements
REQ-1: The user will have the option to express a preference of
REQ-2: The standard train search method will allow the user to specify a
preferred rail line. This is optional, i.e. the user may or may not specify the rail
line of preference.
8
Software Requirement Engineering
Fall 2020
REQ-3: The standard train search method will enable the user to search both
precise dates as well as a range of arrival and departure dates.
4.1.3 Add Feature Tree
9
Software Requirement Engineering
Fall 2020
5. Functional Requirement:
10
Software Requirement Engineering
Fall 2020
5.1 UC-1a: Add Reservation:
Summary
This use case addresses a passenger or travel agent who wants to reserve passage over the
Internet or an attendant who wants to reserve passage at the reservation counter.
Users
• Passenger
The passenger will reserve passage over the Internet at the reservation website.
• Travel Agent
The travel agent will reserve passage over the Internet at the reservation website.
o Reservation Counter Attendant
The reservation counter attendant will reserve passage for a passenger at the reservation
counter.
Preconditions
• The passenger or travel agent is logged onto the website, or the attendant is logged onto
the system. The desired train has been found and chosen using the system.
Basic Course of Events
1. The user specifies the chosen train, the originating city, the destination city, and the car
type.
2. The system makes the reservation and returns the reservation number.
Postconditions
• Passage for the user is reserved.
UC-1b: Cancel Reservation
Summary
This use case addresses a passenger or travel agent who wants to cancel a reservation
over the Internet or an attendant who wants to cancel a reservation at the reservation
counter.
Users
• Passenger
11
Software Requirement Engineering
Fall 2020
The passenger will cancel a reservation over the Internet at the reservation website.
• Travel Agent
The travel agent will cancel a reservation over the Internet at the reservation website.
• Reservation Counter Attendant
The reservation counter attendant will cancel a reservation for a passenger at the
reservation counter.
Preconditions
• The passenger or travel agent is logged onto the website, or the attendant is logged onto
the system.
Basic Course of Events
1. The user specifies the reservation number of the reservation that needs to be cancelled.
2. The system confirms that the reservation has been cancelled.
Postconditions
• The reservation is cancelled.
5.3 UC-2 Print Ticket:
Summary
This use case addresses a passenger who has reserved passage on a train and wants to
obtain the ticket from either the reservation counter or the KIOSK in the train station.
Users
• Passenger
The passenger may print a ticket from the KIOSK.
• Reservation Counter Attendant
The reservation counter attendant may print a ticket for a passenger at the reservation
counter.
Preconditions
• Passage on the train must be reserved by a passenger, and a reservation number for the
passage must be issued.
• The person desiring to obtain the ticket must know the reservation number.
Basic Course of Events
12
Software Requirement Engineering
Fall 2020
1. The user requests the system to print the ticket for the specified reservation number.
2. The system prints the ticket for the reservation number.
Postconditions
• A ticket for the reservation is printed. The reservation cannot be cancelled anymore.
5.4 UC-3a: Add a Route:
Summary
This use case addresses the adding of a route to the system.
Users
• System Administrators
System administrators must be able to add data to update and maintain the system.
Preconditions
• The supervisor is logged into the system.
Basic Course of Events
The user specifies the route stops and the name of the route to be added.
The system notifies the user that the route has been added to the system.
Postconditions
• The route is added to the system.
5.5 UC-3b: Delete a Route
Summary
This use case addresses the deletion of a route in the system
Users
• System Administrators
System administrators must be able to delete data to update and maintain the system.
Preconditions
• The supervisor is logged into the system.
Basic Course of Events
1. The user specifies the route to be deleted from the system.
2. The system indicates that the route has been deleted.
13
Software Requirement Engineering
Fall 2020
Postconditions
• The route is deleted from the system, and no more trains could be scheduled for the deleted
route.
NON-FUNCTIONAL REQUIREMENTS:
Security:
System login: For user to login it requires the valid login and password before granting further
access.
• Data encryption: the web reservation system encrypts all information before writing it into
the database.
• Maximum login attempts: this technique allows the utmost of three consecutive attempts.
• Transaction recordings: this technique shall keep a record of all failure login attempts with
user login, terminal login and time.
Maintainability:
• Problem reduction: The major problem in the payroll system shall be either resolved in two
hours maintenance window.
• Automatic backups: the web reservation system shall perform automatic backups once per
batch.
• Reliability: an easy measure of reliability is that the sum of mean solar time between
failures (MTBF), mean solar time to failures (MTTF) and mean solar time to return (MTTR).
Availability:
System availability: it's the probability that the program is working consistent with the
wants at any point of your time and it's defined as
Availability=[MTTF /(MTTF+MTTR)]*100%
OTHER REQUIREMENTS:
User Satisfaction:
The system is such it stands up to the user expectations.
Response Time:
14
Software Requirement Engineering
Fall 2020
The response of all the operation is good. This has been made possible by careful
programming.
Error Handling:
Response to user errors and undesired situations has been taken care of to ensure that the
system operates without halting.
Safety and Robustness:
System ensures the endanger of wrong actions. In other words, it should be foul proof.
System protects against human sourced strikes and take safety majors,
Portable:
The software should not be architecture specific. Flexible to the operating systems.
User Friendliness:
The system is easy to learn and understand. A native user also can use the system effectively,
with none difficulties.
Conclusion:
The reason for making this management system is that so that users and workers can have easy
access to the railways so that user does not have to waste their time in queues and workers will
not have to deal with the wrong information problems on a daily basis. This system will save
time for both parties and will be very efficient as well. People will be able to book their tickets
track their trains and check if there are any seats available on the train or not. There will be
99.99% work time and up time for this system. And there will be very less chances of errors.
There are very less security issues with the system its completely secure on all accounts. Its
secure as well as its durable. In our project we have stored all the information about the trains
scheduled and the users booking tickets and even status of trains, seat etc. We had considered the
most important requirements only; many more features and details can be added to our project in
order to obtain even more user-friendly applications. These applications are already in progress
and in future they can be upgraded and may become part of some amazing technology.
15
Software Requirement Engineering
Fall 2020
Appendix A : Project Gannt Chart:
Appendix B : Analysis Model / Design Model
16
Software Requirement Engineering
Fall 2020
Context Diagram
17
Software Requirement Engineering
Fall 2020
Echosystem Map
18
Software Requirement Engineering
Fall 2020
Use case Diagram
19
Software Requirement Engineering
Fall 2020
Activity Diagram
20
Software Requirement Engineering
Fall 2020
UML Class Diagram
Appendix C : Screenshots of Prototype
21
Software Requirement Engineering
Fall 2020
22
Software Requirement Engineering
Fall 2020
23
Software Requirement Engineering
Fall 2020
24
Software Requirement Engineering
Fall 2020
References:
https://pakrail.gov.pk/Membership/Member_Login.aspx
https://www.pakrail.gov.pk
https://www.google.com
https://www.xlsoft.com/en/products/justinmind/index.htm
l?gclid=CjwKCAiA57D_BRAZEiwAZcfCxdW_x84vPyJ
YJDfDbO0Hu4TXU-
wD2A6ICT54ZjXADwd7vGL6bFiCCBoCUzQQAvD_B
wE
25