Software Requirements Specification (SRS)
Airline Reservation System
SRS
20/12/2017
Government Sadiq college and Women University
Submitted to
Ma’am Rubab Zahid
Group Member: Dua Mehdi, Saira Iftikhar ,Aqsa Muzammil
1
1. INTRODUCTION
Purpose:
The purpose of this software is to reduce the manual errors involved in the
airline reservation process and make it convenient for the customer to book the flight
as when they require such that they can utilize this software to make reservations,
modify reservation and cancel these reservation.
Scope:
The name of this software is “Airline Reservation system”.This software
provides option for viewing different flights available with different timing for a
particular date and provides customer with the facility to book a ticket,modify and
cancel a particular reservation but it does not provide the customer with detail of the
cost of ticket and it does not allow the customer to modify a particular part of his
reservation and he/she can modify all his detail.
2
2. SPECIFIC REQUIREMENTS
2.1 EXTERNAL INTERFACE REQUIREMENT
2.1.1 User Interface Requirements
User interface is used to provide communication between users and system. Our product should
have communication between them. Because, Airline Ticket System is a web-based system and
it should get input from users for processing. Firstly the system should ask to its users about
where they will go, when they will go, which option they will use (least money or least
time).Users will enter their desired place, date period and they will select an option (least time or
least money) for finding the optimized path. The system gets these inputs by using user interface.
Then, the system will study to find an optimized path for users according to least money or least
time constraint which is selected by users. After that, the system will give appropriate output for
users via user interface. Finally users will see the optimized path at their screen according to
their selected option.
User interface elements should be easy to understand. Part of user interface should be well-
organized on screen and the parts should be concatenated right. When users look at the interface,
they understand which pane is used for which purpose. Each task of an interface should be
specified clearly and users should use them correctly. For example, when users press to any
button on interface, they should know which operations are done by pressing this button.
The user interface should be easy to learn. When users use the user interface, they should know
which element is used to which operations. We should teach using of the user interface to users
3
simply. If it is hard to learn, then teaching will take long time and there will be an extra cost for
teaching of product.
The interface actions and elements should be consistent. When users press any button, required
actions should be done by the system.
The screen layout and color of the user interface should be appealing. When users look at the
screen, it will have a nice vision. Colors will be selected clearly, thus eyes of users won’t be
tired.
2.1.2 Hardware Interface Requirements
Airline Ticket System is a web-based project. So any personal computer, which has an internet
browser, is enough to use this system.
2.1.3 Software Interface Requirements
In Airline Ticket System, users will use application program via the user interface program.
When database management system access is required, the system establishes a connection to the
database management system, once the connection is created; the client program can
communicate with the database management system. A standard called Open Database
Connectivity (ODBC) provides an application programming interface (API), which allows
client-side programs to call database management system, as long as PC has the necessary
software installed. Most database management system vendors provide ODBC drivers for their
systems. A user can actually connect to several database management system and send query and
transaction requests using the Open Database Connectivity (ODBC) API, which are then
4
processed at the server site. Any query results are sent back to user, which can process or display
the result as needed.
The ODBC specification offers a procedural API for using SQL queries to access data. An
implementation of ODBC will contain one or more applications, a core ODBC library, and one
or more database drivers. The core library, independent of the applications and DBMS, acts as an
interpreter between the applications and the database drivers, whereas the database drivers
contain the DBMS specific details. Thus a programmer can write applications that use standard
types and features without concern for the specifics of each DBMS that the applications may
encounter. Likewise, database driver implementers need only know how to attach to the core
library. This makes ODBC modular.
2.1.4 Communication Protocol Requirements
Hypertext Transfer Protocol (HTTP) shall be used to provide a communication between system
and users. Because, Airline Ticket System is a web-based system which should be reached on
World Wide Web by users. Hypertext Transfer Protocol (HTTP) is a communications protocol
which is used to transfer or convey information on intranets and the World Wide Web. Its
original purpose was to provide a way to publish and retrieve hypertext pages. Development of
HTTP was coordinated by the W3C (World Wide Web Consortium) and the IETF (Internet
Engineering Task Force), culminating in the publication of a series of RFCs, most notably RFC
2616 (June 1999), which defines HTTP/1.1, the version of HTTP in common use. HTTP is a
request/response protocol between a client and a server. The client making an HTTP request,
such as a web browser, is referred to as the user agent. The responding server, which stores or
creates resources such as HTML files and images, is called the origin server. In between the user
5
agent and origin server may be several intermediaries, such as proxies, gateways, and tunnels.
HTTP is not constrained to using TCP/IP and its supporting layers, although this is its most
popular application on the Internet. Indeed HTTP can be implemented on top of any other
protocol on the Internet, or on other networks. HTTP only presumes a reliable transport; any
protocol that provides such guarantees can be used. Typically, an HTTP client initiates a request
by establishing a Transmission Control Protocol (TCP) connection to a particular port on a host
(port 80 by default; see List of TCP and UDP port numbers). An HTTP server listening on that
port waits for the client to send a request message.
2.2 Software Product Features
2.2.1 Functional Requirements
6
7
2.2.2 Non-Functional Requirements
The system should be web-based system. Users should use the system via internet. Thus, when
they want to go anywhere and book a flight ticket efficiently, they need to have only internet.
Each user should have a user account. The system should ask the username and password to
users. It doesn’t permit to unregistered access for reservation.
2.3 Software System Attributes
Reliability: When user wants to call the system over a given period of time, the system should
correctly deliver services as expected by the user. The reliability of the system shall be good if it
delivers services as specified. Otherwise, reliability is bad and it shall produce unexpected
output. So, program should be changed according to right situation.
Availability: When the system has any request at any given time, system should be available, it
should be up and running and able to deliver useful service at this time. The availability of the system
shall be good if it delivers services when it is requested. Otherwise, if requests are not responded at any
given time then it implies bad availability.
Security: The system should resist accidental or deliberate intrusions, when users operate on the
system. If the system should not resist accidental or deliberate intrusions, then important data – such as
credit card number, id number, username, etc. – which belongs to user, shall be stolen by hacker. Thus,
security of the system shall be low and trust of users shall be ruined. So, security of the system is very
important for users.
Maintainability: When the system is used, new requirements may emerge. When these
requirements are emerged, the system should be changeable to accommodate these requirements for
8
maintaining the usefulness of the system. If the system is not maintainable, then the system can not be
modified for new requirements. In this situation, a new system should be developed for provide new
requirements. The maintainability is important for avoiding from cost.
Performance: The system should use the minimum part of memory. The processes of the system
should use the processor most efficiently. User should finish operation in the least time interval.
Repairability: When the system is used, system failures are inevitable. The disruption caused by
failure can be minimized if the system can be repaired quickly. So, the system should be possible to find
the problem, access the component that has failed and make changes to fix that component. When the
system has a repair, the source code should be modified.
2.4 Database Requirements
In our project, there are two types of databases. One of them keeps user information. Information
is user name, surname, country, city, password, e-mail address and address. It is necessary to
keeping users information in the database. For example, if one user buys more than two or three
tickets by using our system, the system shall provide some discounts on ticket fee for this user.
By this way, company increases its profit.
Another type keeps companies flight information. Information is company name, departure time,
arrival time, locations (source and destination), price of flight and time which is between
departure to arrival time. For example, if we think our system, there are five companies. So,
there are five databases. Each of the companies has a one database. The system shall set up
relationship between the databases to find an optimal ways to go to the place where customers
want to go.
9
Finally, we have to create databases. If they are invalid, system can’t work properly. We can
only store information in the databases.
3. ADDITIONAL MATERIAL
3.1 REFERENCES
3.1.1 Websites:
www.google.com
www.wikipedia.org
3.2.1 Documents:
Documentation.pdf
IEEE- 830.pdf
Software Engineering Seventh Edition Ian Sommerville
Note: All documents are provided by our department.
10