You are on page 1of 13

Airline Booking System

Software Requirement Specification -


Situation: “XYZ Airways” are one of the private airlines in India, which caters large number of people. It
has about 10 planes in which 5 serves for domestic and 5 for international. As the company is doing
good business, they want to make the reservation system as a computerized Airline Reservation System.
The plane details, their departure and arrival time, source and destination are as follows.

The system should get the passengers details such as name, age, address, passport number, which plane
he/she wants to travel and the destination point. The software should provide search options. If the
source point and destination point are entered, then all the planes traveling between these planes with
arrival and departure time should be displayed for the sake of passenger. The software should have
option for checking availability of the tickets. If the ticket is not available, a short message will appear as
“ticket unavailable” will be displayed to the passenger. The software should have facility to cancel the
reservation of the ticket and also can modify the changes if the customer has some changes in his
reservation ticket.

A small statement regarding cancellation should be displayed to passenger after cancellation of their
tickets. The ticket which is cancelled is then added up to the available ticket column. The airline software
should have the facility to print the ticket with all the details such as data, name of the plane,
destination with timings and the class along with the passenger details. The price list of the ticket is also
put up according to the class the passenger prefers to travel.

PURPOSE: The main purpose of this software is to reduce the manual error involved in the airline
reservation process and make it convenient for the customers to book the flights as when they require
such that they can utilize this software to make reservations, modify reservations or cancel a
particular reservation.

SCOPE:

The name of the software is “AIRLINE RESERVATION SYSTEM”. This software provides options for
viewing different flights available with
different timings for a particular date and provides customers with thefacility to book a ticket, modify or
cancel a particular reservation but it does not provide the customers with details of cost of the ticket
and it does not allow the customer to modify a particular part of his reservation and he/she can modify
all his details.

DEFINITIONS, ACRONYMS AND ABBREVIATIONS:

ARS Airline Reservation System


LAN-Local Area Network 
GUI-Graphical User Interface
OS-Operating System
RAM-Random Access Memory
MB-Mega Bytes
GB-Giga Bytes
Mbps-Megabits per second
HDD-Hard Disk Drive

PRODUCT PERSPECTIVE:
The “ARS” software is an independent application. It is a self-
contained product. The system interfaces, user interfaces and hardware interfacesrelated with this
software are defined as follows.

System Interfaces: The client systems should be able to share the data available in the data base
through the network connection.

User Interfaces: The screen formats and menu structure should be in such a way that even have users
will find it easy to use. The product must be use-friendly and very interactive. The functionality provided
by the system like displaying error messages should adapt itself to the different users of the software.

Software Interfaces:
Name of the language: Visual Basics

Communication Interfaces:
There is an LAN used for communication among the different client systems to be used.

Memory Constraints: The system would require disk space of 10 GB and a 256 MB HDD and 64MB RAM
for client systems.

Operation: The users can first make a reservation in a particular flight for a particular date and time. The
system provides the customer with a pin code which gives him access to either make any changes in his
reservation or cancel a reservation. These must also be back up of data to enable any easy recovery
from any features.

Site Adaptive Requirements:

The “ARS” software is an independent and self-contained product and no modification are required to
adapt to a particular installation.

PRODUCT FUNCTIONS:
The major functions include-

•Providing flight details

•Flight bookings for a particular destination, date and time and also providing with a pin code.

•Allowing the customer to modify or cancel his reservation provided the correct pin code is given.

•Displaying a report of the number of people flying in a particular flight.


USER CHARACTERISTICS: No technical experience is required basic knowledge of handling system is
sufficient.

CONSTRAINTS:

•Regulatory policies: It is a mandatory that no text book must be left empty or contains insufficient data.

•Hardware limitations: There must be a 64 MB on board memory

•Control functions: The software must be very user-friendly and display appropriate error messages.

•Interfaces to other applications: Not applicable.

•Parallel operations: It must support many users simultaneously.

•Reliability requirements: Data redundancy and use of special/blank characters must be avoided.

•Safety/security considerations: The application must be exited always normally.

•Higher order language requirements: VB

ASSUMPTIONS AND DEPENDENCIES:

It is assumed that the details of the cost of ticket are already known to
thecustomer. Future changes like providing different types of flights withdifferent classes like business
class, economic class will allow the customers to benefit from one facility.

APPORTIONING OF REQUIREMENTS: The necessity of providing options to customer to choose their


seat or to choose for economic or business class can be delayed until future versions of the software are
developed.

SPECIFIC REQUIREMENTS:

EXTERNAL INTERFACE REQUIREMENTS

User Interfaces: The interface must be easy to understand. The user interface includes:

• SCREEN FORMATS/ORGANIZATION: The introductory screen will be the first to be displayed which will


allow the users to choose either of the two options, viewing flight detail or booking a ticket.

• WINDOW FORMAT/ORGANIZATION: When the user chooses some other option, then the information


pertaining to that choice will be displayed in a new window which ensures multiple windows to be
visible on the screen and the users can switch between them.

• DATA FORMAT: The data entered by the users will be alphanumeric.

• END MESSAGES: When there are some exceptions raising error like
entering invalid details, then error messages will be displayed prompting the users to re-enter the
details.

Hardware Interfaces: The system must basically support certain input and output devices.
Software Interfaces: Not applicable since the product under considerations is an independent one.

Communication Interfaces: Every client system connected through LAN establishes a communication
only with the server and not with any client system. An LAN of 10 Mbps is used.

SOFTWARE PRODUCT FEATURES-

FEATURE 1: The ability of the software is to provide the details of the flights available and
allow the customers to choose a particular destination and makes a reservation.

PURPOSE: The purpose of this is to enable the users to view the different flights available so as to make
it convenient for him to make a reservation.

STIMULUS/RESPONSE: Once the user chooses the particular option, the web pagescorresponding to that


are to be displayed on the screen i.e., it will display the different flights available to their respective
destinations and allow the customer to book a ticket.

ASSOCIATED FUNCTIONAL REQUIREMENTS-

1 FUNCTIONAL REQUIREMENTS: Once the user makes a reservation, he must be provided with a pin
code.

2 INTRODUCTION: The user must be provided with the required information within10 seconds.

3 INPUTS: The user must enter the destination with date and timings and address, age, gender,
nationality.

4 PROCESSING: Recognizing the correct details are entered that a message is displayed confirming his
reservation and displays the pin code.

FEATURE 2: The software allows the user to modify an already existing reservation made by the
customer if in case there are any changes that are to be modified in the reservations of the ticket.

PURPOSE: The purpose is to allow the customer to make any changes in his personal details or flight
booking details.

STIMULUS/RESPONSE: Once the user requests for changing his reservation, it must bedisplayed on the


screen prompting the customer to enter his pin code.

ASSOCIATED FUNCTIONALITY REQUIREMENTS:

1 FUNCTIONAL REQUIREMENTS: If the pin code provided by the customer does not match, then would
notify the person by displaying error messages.

2 INTRODUCTION: The system will allow the customer to modify his reservation provided correct pin
code has been entered by him.

3 INPUT: The user should enter his pin code which gives him access to modify his reservation.

4 PROCESSING: The pin code is processed and checked for his validity. If it is correct then the user can
modify his reservation else an error message will be displayed asking the user to enter the correct pin
code number.
5OUTPUT:Given the correct pin code, the user can now modify hisreservation. A new pin code will be ge
nerated for the customers.

FEATURE 3: The software allows the user to cancel an already existing reservation made by the
customer who has booked the ticket.

PURPOSE: The purpose is to allow the customer to cancel his reservation if not required.

STIMULUS/RESPONSE: Once the user requests for canceling his reservation, it must bedisplayed on the


screen prompting the customer to enter his pin code.

ASSOCIATED FUNCTIONAL REQUIREMENTS:

1 FUNCTIONAL REQUIREMENTS- If the pin code provided by the customer does not match, then it would
notify the person by displaying error messages.

2 INTRODUCTION: The system will allow the customer to cancel his reservation provided correct pin
code has been entered by the customer.

3 INPUT-The user should enter his pin code which gives him access to cancel his reservation.

4 PROCESSING-The pin code is processed and checked for its validity. If it is correct, then the user can
cancel his reservation else an error message will be displayed asking the user to enter the correct pin
code number.

5 OUTPUT-Given the correct pin code, the user can now cancel his reservation.

FEATURE 4: The software must also give a report on the number of reservations made for a particular
flight.

PURPOSE: The purpose is to enable the administrator to view the number of people in a particular flight.

STIMULUS/RESPONSE: Once the user requests for this option, all the details of the customers who have
made reservation will be displayed.

ASSOCIATED FUNCTIONAL REQUIREMENTS-

1 FUNCTIONAL REQUIREMENTS-If no reservations are made, then a message is displayed that


no bookings have been made.

2 INTRODUCTION-The system will allow the administrator to view all the details of the customer who
have made reservations.

3 INPUT-The administrator must enter the password so that access is given only to him to view the
details of all the customers.

4 PROCESSING-The password is processed and checked for its validity. If it is not correct, then the
administrator is asked to enter the correct password.

5 OUTPUT-Given the correct password, the administrator can view all the details of customers with date
and time of their bookings made.
PERFORMANCE REQUIREMENTS:

• At any instant, a maximum of four nodes or users will be given access simultaneously.

• Since the program handles multiple users, if more than one person attempts to same date to the files
stored in the data base, the program will lock the data file using a 2-phase commit protocol to prevent
simultaneous access.

DESIGN CONSTRAINTS:

• Requires 256 MB on-board memory.

• Based completely on Windows functionality platform.

• The software should be portable and must be inaccessible tounauthorized users.

SOFTWARE SYSTEM ATTRIBUTES-

Reliability- The factors needed to establish the software expected reliability are

• The user inputs should be valid and within the given range.

• Normal termination of the program.

Availability-The factors guarantee the software’s availability includes proper


terminationand correct input details. Also the resources used for the projectdevelopment are Microsoft 
Certified which speaks of its high quality standards.

Security-

• It must be ensured that access will be provided to the authorized persons through user ID and
password.

• Network security will be provided by the use of firewalls.

• Checks can be performed at regular intervals to ensure data integrity.

Maintainability: The software will be developed by implementing the concept of


modularitywhich in turn reduces the complexity involved in maintaining it. Theadministrator should
have a sound technical knowledge about maintaining the software and further enhancements will be
undertaken by the developer.

Portability: The application is portable which ensures its adaptability for use on different computer
terminals with different operating systems and standards.

LOGICAL DATABASE REQUIREMENTS: The system requires the use of text files to maintain the
customers personal details and his booking details. An entity must be used to specify the various
departments and the seats available in them. This information will be used frequently by the authorities
for verification.
DATA FLOW DIAGRAM LEVEL 0:

Reservation

Airline
User Reservation Display
System

Cancellation

LEVEL 1 (a):

Accept the
Reservation
details

User
Passenger
Reserve in the database
file

LEVEL 1(b):

Accept the
Cancellation details

User
Cancel in the
Passenger
file
Database
LEVEL 2:

Display Read Passenger


User
Details

Display in
  tabular
FUNCTION POINT ANALYSIS: formCus Customer Database
AIRLINE RESERVATION SYSTEM-

Function point analysis is a structural technique of problem solving. It is a method to break system into
small components so that they can be better understood and analyzed. Function point analysis is a
unique measure for software.

1. Data communications-2

2. Distributed data processing-2

3. Performance-3

4. Heavily used configuration-2

5. Transaction rate-3

6. Online data entry-0

7. End user efficiency-1

8. Online update-0

9. Complex processing-3
10. Reusability-4

11. Installation ease-3

12. Operational ease-3

13. Multiple sites-0

14. Facilitate change-3

TEST CASES:
INPUT Processing Output
Reservation: Input the details about the Enter the passenger details:
passenger and the flight in which Name-XYZ
Reserve they are willing to travel. It Address-0522, abc apartments.
{ generates a password for the Mail id-xyz@yahoo.co.in
……. passenger. Telephone no-1989898765
……. Enter the date of traveling-
……. dd/mm/yyyy
} 1:domestic
2:international
Enter the mode: 1
Enter the plane 1 or 2 or 3
Password- 123
Cancellation: Input the Password of the Enter the Password: 131
passenger to be deleted. And
Cancel cancel the flight. Reservation Cancelled.
{
…….
…….
…….
}

Error Tracking:
Errors per requirement specification page will be denoted by Ereq.

Errors per component-design level will be denoted by Edesign.

Errors per component-code level will be denoted by Ecode.


USE Cases:

Manage Passenger reservation


Check details
Login to roles of
System access
Admin Manage Airline booking details

Working mechanism of flight booking:

The users can easily purchase a ticket by going to the ticket sale website, searching and selecting the
Manage
destination, entering the details such as name, way of travel, luggage information and dates Passenger details
and finally
making the payment via bank cards, bank transfer or through online Managepayment companies. The e-ticket is
Forgot Check
then emailed or texted on the telephone of the customer. After the customer
Module makes the purchase, the
Passwor Credenti
electronic record and the details of the ticket are saved into airline’s database.
s The database is
d als Manage ticket booking details
integrated with the passenger service system, which is then connected to the airports, airlines, travel
agencies for sharing real time information.
Manage Booking enquiry
details
SOFTWARE AND PROGRAMS USED:
Send
email to Manage Airline enquiry
User profiles

Manage Cash reports


Manage system Manage roles of User Manage User Permission
A number of software and programs have been used in order to develop the sample online booking
system. The types of programs and software used were programming languages such as Python,
development platform such as Eclipse, script language such as Java script, markup language such as
HTML and database program such as SQLite, among others. Proper installation of all the programs used
were required and basic understanding of the programs were utilized in the completion of the project.
Sources such as tutorial videos and official documentations were referred to in the case of insufficient
knowledge during the development process.

Python as a development language:

Python is a script programming language. Python is an advanced script programming language, which
can be used in many kinds of applications, is easy to learn and has simpler syntax and semantics. Since
Python contains hassle-free syntax rules, it encourages creation of advanced applications within short
time. Python combines the features of programming paradigms such as object-oriented, imperative and
procedural style. Use of functions and classes are not mandatory, and hence simple programs can be
written simply with fewer lines of codes. Loops, control-structures and use of variables are also
considerably easier in Python.

Django:

Django is a web framework designed for the development of easy and yet also advanced web
applications. Django is invented to encourage rapid development and clean, pragmatic design. Some of
the key features of Django are its facilitation of rapid web development, reliable security and impressing
scalability. Django combines the use of other open-source projects such as Apache, Python. Django is an
effective programming tool to make rich websites. Since Django is a web framework, it saves the
developer time of making bits and pieces from the scratch. Django is a collection of libraries written in
Python language, and hence coding in python is required for development in Django.

HyperText Markup Language:

HyperText Markup Language (HTML) is a popular markup language used in web pages. HTML can be
simply written in a text editor and tested through web browser. Writing in html is easy; with html it’s
also possible to add media and images to the web page.

Javascript:

Javascript is one of the most popular script languages for webpages today. Javascript (JS) is an object-
oriented language that supports features such as imperative and functional programming. JS is used to
add interactive features such as buttons, animation, games etc. Javascript is capable of creating many
different features ranging from beginner to advanced such as 2D and 3D features on a website.

Cascading Style Sheet (CSS):

While the HTML elements enables the web page designers to add what content they want, CSS makes it
possible how to display the content to the user. CSS can operate independently as well as be used with
any markup languages based in XML. CSS uses simple, everyday English words and has an easy syntax.
CSS is crucial in advanced web designing as it gives control to the layout and offers numerous techniques
to make the web page look sophisticated. Currently, the basic features of CSS are supported by all main
browsers such as Internet Explorer, Safari, 10 Opera, Chrome and Firefox.

SQLite Database:

Databases are collections of similar data. Databases are used for organized collection and storing of
similar data, to be later used for specific purposes. A database contains tables with rows and columns
populated with objects, which displays connection between them. A database acts as a shared resource
for the programs which can use the information from the database. Many enterprises rely on databases
today to store a wide range of information systematically. Databases facilitate the task of searching
hundreds and thousands of records much simpler by storing them in an organized manner.

THE DESIGN STATE:

The design plan of the application was important for fast and efficient application development. A
planned layout of the website was prepared at first. Features such as system design, database design
and the way application was intended to work had to be kept in mind before starting the
implementation. After downloading the necessary platforms and programs for implementation and
learning about the features that were planned to incorporate in the application, the implementation
process started.

1. System Design:

The web-based ticket system uses client/server architecture. All requests and services are delivered over
the network in this model and the system shares resources. In ticket booking model, a client can use a
web browser to access the website and book online tickets. It is very easy to make the booking as the
system is user-friendly. The user does not have to worry about the operating system either as the web
page is supported in all popular browsers on all platforms. For the server, Django server is used in the
application. Most of the code is written in Python as Django platform is used. At the flight search query,
when the user searches preferred choices, the web server searches the database for similarities and
returns the result in user-readable form. After the customer books the selection and the payment is
verified, the data of client is saved to the company's database.

2. Database design:

The database used in the application is SQLite which comes installed with Django package. The data is
divided into four main parts named Connection, Feedback and Ticket. In the tables under Connection,
there is data such as place of origin, place of destination, departure time, arrival time, date, price, seats
available and flight name. The information in Connection will be manually coded. The Feedback section
is filled with the customer's name, email address and design when he leaves a feedback or message on
the page through the contact form in the website. The ticket section contains the itinerary of the client
after he has made the booking. This section contains information like the personal details of customer
such as name, last name, birth date, nationality and the booked flight details. This information is later
used to make ticket and send it via email to the client.

ADVANTAGES AND CHALLENGES:


While the ticket booking system has advanced in a lot of ways and has simplified air travel, there do
remain some challenges and limitations as well.

Advantages:

The reason why more and more people are purchasing their flight tickets online is because of the many
advantages and conveniences online flight booking system has to offer. Opposed to the traditional way
of purchasing tickets through travel agents office, online booking today provides the access to hundreds
of flight paths, their prices and other services at the click of a button. This can be very important for the
customer in order to find the best possible deal and the most convenient connection.The system of
searching the flights is so easy, that anybody with a computer and internet access can easily search
connections, compare prices and purchase any connection they wish to. Not only this, but this method is
much more faster, easier, hassle-free and convenient. The clients can also fully be aware of the various
policies of the company such as cancellation, baggage rules and others and can easily make use of those
services. Online flight booking not only provides easy and fast services to the customer from the
convenience of computer from anywhere in the world, but often also provides services at more
reasonable prices.

Disadvantages:

Online flight booking system has its own set of limitations as well, besides internet connectivity, the
limited knowledge and access to technology can also hinder the chances of using this service. As a result,
many people in the developing world still use the traditional method of purchasing tickets from the
offices of travel agents. Machine failures such as lost connection or unresponsive program can
sometimes also cause the disappearance of all the flight itinerary. Furthermore, the customer might not
be able to get correct or enough information from the website alone as it is not done face to face with a
person who knows everything about the connections, offers and company policies. Then there is also
the issue of security: it is sometimes possible that somebody can steal your credit card information but
developers will improve the security of the system more and more with the advancement of technology.

You might also like