You are on page 1of 18

ABSTRACT

Airline
reservation
System is a
computerized
system used to
store and
retrieve
information
and conduct
transactions
related to air
travel. The goal
of the project is
to expose the
significance and
value of Airline
Reservation

AIRLINE RESERVATION SYETEM Systems.

Final Project Report

Ammar Shahid (03-134192-009)

Mubarik Hussain (03-134192-078)

Syed Faizan Alam Zaidi (03-134192-002)

Muhammad Attiq Ur Rehman (03-134192-023)


Contents

1. Introduction:............................................................................................................................2
2. Database Management System:.............................................................................................2
3. Need for Database:..................................................................................................................2
4. Advantages of using Databases:.............................................................................................2
5. Project Description:.................................................................................................................2
6. Project Overview:....................................................................................................................3
7. Product Features:....................................................................................................................3
8. Purpose:...................................................................................................................................3
9. Problems in the Existing System:............................................................................................3
10. Motivation:..............................................................................................................................4
11. Main Task:...............................................................................................................................4
12. Solution:...................................................................................................................................4
13. Result:......................................................................................................................................5
14. Normalization:.........................................................................................................................5
15. External Interfaces:.................................................................................................................5
16. Functionality:...........................................................................................................................6
17. Functional Requirements:.......................................................................................................6
18. Entity Relationship Diagram (ERD):.........................................................................................9
19. Queries:.................................................................................................................................12
20. Testing:..................................................................................................................................20
21. Pass or Fail Criteria:...............................................................................................................20
22. Conclusion:............................................................................................................................20

Page 1
Airline Reservation System
Introduction:
Our project is an airline reservation system. This project contains both “Data Definition
Language (DDL)” and “Data Manipulation Language (DML)”. The tickets which are reserved are
stored in the form of tuples or rows. The project consists of total twelve entities or tables. Each
of these entity consists of multiple attributes. Also, each table contains primary key and
appropriate foreign keys.

Database Management System:


Database Management Systems (DBMS) refer to the technology solution used to improve and
manage the storage and recover data from databases. DBMS offers an organized method to
manage databases through an interface for users as well as workloads accessing the databases
via apps.

Need for Database:


Databases are needed to store data efficiently and to perform the required queries on that data
effectively. Proper database management systems help increase organizational accessibility to
data, which in turn helps the end users share the data quickly and effectively across the
organization. A management system helps get quick solutions to database queries, making data
access faster and more accurate.

Advantages of using Databases:


There are many advantages of using a database management system over a traditional file
processing system. Some of them are:

 Reduced data redundancy


 Reduced updating errors and increased consistency
 Greater data integrity and independence from applications programs
 Improved data access to users through use of host and query languages
 Improved data security
 Reduced data entry, storage, and retrieval costs
 Smoothed development of new applications program

Project Description:
The name of the project is ‘Airline Reservation System’. As the name suggests, in this project a
user can reserve his/her ticket in the required airline. There will be two types of user in this
project: an admin and a passenger. The tickets will be originated by the admin. The user has the
liberty to choose the airline, type of seat in one of the three (economy class, first class, business

Page 2
class) given classes. The user can also select the desired destination, date and time of the flight.
The destination, date and time will be pre-determined by the administrator. This system offers
a facility for travelers and real-time users to provide easy access. Through it, they can easily
communicate in just 3 stages. No prerequisite exists for any form of Agent. In one "Airline
Reservation System" project, all of these facilities are provided.

Project Overview:
The project for the Airline Reservation System is to introduce a general airline reservation
system. Application for fares, which allows passengers to check for the availability of different
airline tickets. This project also involves various features such as user registration, adjustment
by the management staff or administrator of the application data, adding, removing or
changing passenger information, flight information, etc.

Product Features:
The Airline Reservation System has the following features:
This project is intended specifically for two kinds of audience. One is the client or the end-user.
The other is the application administrator. Some of the main product functions can be grouped
into two separate groups, which are: For the passenger and the administrator.

Purpose:
Reservations were handled manually using log books and manifests, reservation cards, and
other written media prior to the electronic era. Many basic criteria for reservations are still met
in this way. A list of the specifications of the Airline Reservation System project is the main
objective of this vision paper. This report also allows us to gather and evaluate the ideas that
have been collected for the project. Where further specifications are applied to the project, this
vision plan will be subject to change. This report is specifically prepared to set the stage for the
project's design phase.

Problems in the Existing System:


Mostly throughout the globe, if a traveler needs to book an airplane ticket, he or she should
face one in every of the subsequent difficulties:

 Manually visit the airport and reserve his or her price ticket.
 Downloading the price ticket type as a paper document, filling it manually and
submitted it at the field.
 Fill the price ticket type on system and obtain the print out as paper document to
submit at the field.
 Booking the flight at some specific registered ticket counters in semi on-line system. A
passenger does not have much freedom in this process.

Page 3
 Cannot transfer the newest updates.
 No use of net services and remoting.
 Risk of misdirection. Some scams can mislead you and you will be a victim of fraud
without even realizing.
 Risk of leaking personal information once the project is below development.
 Less security due to your personal information being processed by other humans.
 No correct coordination between totally different applications and users.
 Fewer friendly users. It means that no proper guidance is available.
Due to the following issues, it is evident that there should be a secure and efficient way for
booking an airline ticket.

Motivation:
In today’s age, everything is moving towards automation. Similarly, all the transactions,
reservations, orders, booking should be done online too. The online system is effective, efficient
and flawless. There is no need to go and wait in lines and hire travel agents to book a flight. If
there is an efficient online flight reservation system, it would provide a great deal of comfort to
its users. This system is both time saving and cost effective. There is no need for the airlines to
establish offices and hire personnel just to reserve tickets and entertain complaints. They just
need a well working website with a database at its back end to store the data of the passengers
and also a person to manage that database. It is a simple and cost-saving process. Also, there
are numerus advantages of having a database management system over a simple file
processing system as discussed above.

Main Task:
The main task in this specific scenario is to store the information about the passenger and the
ticket that passenger is going to reserve and return an invoice of that ticket with the required
data of the passenger and the ticket on that invoice. The tickets are made by an administrator.
Hence, there are two types of users in this scenario i.e. an admin who can originate tickets, and
a passenger who can reserve that ticket. The need for this kind of project is to ensure security,
efficiency and effectiveness.

Solution:
This project is efficient and effective. The database management system is a very efficient and
secure way for storing sensitive information about the passengers like their contact number,
email, etc. Another very good advantage is that it allows retrieval of that information. It is easy
and quick to use. It is centralized. All the data stored is under the developer’s control and no
data is lost. The project has less dependency. It is independent of most of the external factors
like environmental hazards or thefts. The information about the passengers is efficiently stored.
It does not contain redundant data. That means that it contains data that is required. Nothing
extra or irrelevant is stored. Due to using database management system, many additional costs

Page 4
could be saved. For example, the expenses of entering the data, storing the data and retrieving
the data can be saved greatly. In a traditional file processing system, additional manpower is
required for data entry and data retrieval. Also, some room is also required to store the data.
Database management system nullify all these costs. This particular system is also more secure
because only a handful of trusted people have access to the database. In this way, the sensitive
information of the passengers is not at risk. This is a very important factor because while buying
the ticket, a passenger has to reveal their credit card or debit card number. The system has to
be secure so that the passengers can be free of such kind of worries. In this way we can build
our trust among the passengers that give us a chance. Among many of the benefits of database
management system, it is to be noted that this system is way more consistent and reliable than
any other system of file storage.

Result:
The passenger when reserves his or her ticket, every reservation is saved as a new row in the
ticket table. All the tickets can be displayed in any order user wants. Also, any query can be
implemented to obtain the desired result of the user. The output can be displayed with the help
of select keyword of Data Modification Language (DML). However, using the select keyword
with other SQL keywords like where, group by, order by, etc. can aid the user in obtaining his
preferred output in his desired order.

Normalization:
In database management system, Normalization is a technique in database design procedure
that reduces data redundancy and removes unwanted features like Insertion, Update and
Deletion. Normalization rules divides larger entities into smaller entities and associates them
using relationships. It is of three types:
 First Normal Form
 Second Normal Form
 Third Normal Form

Functionality:
The functionality of something is its usefulness, or how well it does the job it's meant to do.
Functionality is a quality of a thing that enables it to link it up with other qualities. In this
project’s case, functionality can be of two types:
1. Functionality with respect to functional requirements: Functional requirements
are those that are related to the functionality of the project. These requirements
affect the functionality of the project. For example, in this project a passenger
can reserve a ticket and then after entering the essential information buy the
ticket too. The information that the passenger enters will be saved in an entity of
the database. As the information entered by the passenger alters the database,

Page 5
it means that it affects the database. In that way it affects the functionality of the
project. So, this is the functionality of this project with respect to functional
requirements.
2. Functionality with respect to non-functional requirements: Non-functional
requirements are those that are not directly related to the functionality of the
project and it does not affect the functionality of the project. These are basically
the features of the system. For example, in this project, the responsiveness of
the system is its functionality with respect to non-functional requirements. Also,
this online system of airline reservation is available throughout the day every
day. So, its availability is also a non-functional feature of this project. Another
non-functional attribute of this project is its security. This particular system is
also more secure because only a handful of trusted people have access to the
database. In this way, the sensitive information of the passengers is not at risk.
This is a very important factor because while buying the ticket, a passenger has
to reveal their credit card or debit card number. The system has to be secure so
that the passengers can be free of such kind of worries. In this way we can build
our trust among the passengers that give us a chance. It should also be
considered that this online system of booking of flights is easily accessible. The
admin just needs to login to access the database.

Functional Requirements:
The Airline Reservation System's technical criteria are split between the passenger and the
database administrator. These functional specifications can be described in the form of use
cases. A use case is a written summary of how tasks on your system would be performed by
users. It describes, from the point of view of a user, the actions of a device as it responds to a
request. Each case of use is defined as a sequence of simple steps, starting with the target of a
consumer and ending when that goal is reached. You can describe these functional
specifications in depth as follows:
1. Use Case Name: User Registration
 Description: This use case describes the situation in which the passenger
registers with the system in order to make reservations or bookings for flights
and cab service by providing all the necessary information.
 Performer: Administrator or Passenger
 Participation: The administrator or the passenger would need to include all the
relevant information in the application form for passenger registration.
 Productivity: It will check and verify all the information entered on the
passenger registration list and that information will be accepted into the
database by the system.

2. Use Case Name: User Login

Page 6
 Description: This use case describes the situation in which the user, with the
username and password he was given when registering with the system, logs
into the program.
 Performer: Administrator or Passenger
 Participation: A username and password are created by the user or the
passenger at the time of the registering for the scheme. He then uses them to
login to the system and make reservations or display some details.
 Productivity: The application then verifies the validity of the username and
password provided by the passenger and allows the user, if the username and
password are correct, to access the information that is available on the system.

3. Use Case Name: Reserve Tickets


 Description: The scenario where the passenger books airline tickets is mentioned
in this use case.
 Performer: Passenger
 Participation: The passenger looks up the details related to different airlines
after signing into the system and checks the availability of seats on flights. If he
learns that there are some available tickets, he buys them.
 Productivity: The machine verifies the authenticity of the username and
password and then shows the passenger's details relating to different flights.

4. Use Case Name: Reserve Cab


 Description: This use case describes the situation in which the passenger needs
to reserve a cab service by providing all the necessary information.
 Performer: Passenger
 Participation: The passenger looks up the details related to the cab service after
signing into the system and checks the availability of cabs after the flight. If he
learns that there are some cabs available, he books the cab to reach his desired
destination.
 Productivity: The machine verifies the authenticity of the username and
password and then shows the details of the passenger who reserved a cab for his
use.

5. Use Case Name: Admin Logout


 Description: This case of usage describes the situation in which the application
administrator logs into the system and logs out after the work has been
completed.
 Performer: Administrator
 Participation: The system administrator logs into the application with the
username and password given to him.

Page 7
 Productivity: The system verifies the validity and exhibits the home page of the
administrator.

6. Use Case Name: Modify Passenger Information


 Description: This use case defines the situation in which the administrator adds,
deletes, and removes. Passenger information is updated or modified in the
system’s database.
 Performer: Administrator
 Participation: The application administrator, with his username and password,
logs in to the device.
 Productivity: The machine authenticates the administrator and shows the page
afterwards. Where the administrator is able to add new passengers to the
database or remove current passengers or alter the passenger information in the
database.

7. Use Case Name: Modify Flight Information


 Description: This use case defines the situation in which the administrator adds,
deletes, and removes flight information in the system’s database. Flight
information is updated or modified.
 Performer: Administrator
 Participation: The application administrator, with his username and password,
logs in to the device.
 Productivity: Through checking the username and password, the program
authenticates the administrator. The program then shows a page where the
administrator can add new flights to the database, remove the cancelled flights,
or change the flight details.

8. Use Case Name: Deletion of Reservations


 Description: This use case defines the situation in which the administrator deals
with the termination of passengers' reservations.
 Performer: Administrator
 Participation: The application administrator, with his username and password,
logs in to the device.
 Productivity: The machine authenticates the administrator and shows the page
afterwards where the administrator searches for the name of the passenger who
demanded reservation annulment.

Page 8
Entity Relationship Diagram (ERD):
The entity relationship diagram (ERD) of a database, as can be determined by its name,
describes the relationship between the various entities and their attributes. In a particular area
of information, an entity-relationship diagram identifies interconnected items of relevance. A
simple entity-relationship model is composed of types of entities and defines relationships
between entities that may exist. In this project of airline reservation system, there are a total of
twelve entities or tables and each of that entity have different attributes or columns.
There are a total of twelve tables in this database the names of these entities or tables are as
follows:
1. Air_line
2. Airline_Specific
3. Admiin
4. Admin_Login
5. Passenger
6. Psngr_Login
7. Cab_Service
8. Ticket_Booking
9. Seat
10. Routee
11. City
12. Return_Ticket
All of the above-mentioned names are the names of each and every entity existing in the
project. Each of these entities contain relevant attributes or columns. Among those attributes,
in each entity there is a primary key. Also, appropriate foreign keys are established wherever
they are needed. All of these entities are linked together with the help of these foreign keys
which are entered along with their references.

Page 9
Class

Page 10
Diagram: -

Queries:
Some of the queries have been implemented in the SQL server file attached. The queries cover
majority of the actions that can be performed on the tables. These queries include both Data
Definition Language (DDL) and Data Modification Language (DML).
Data Definition Language (DDL):
DDL is the abbreviation of “Data Definition Language”. The purpose of this language is to define
data structures i.e. databases. This language is represented in the form of statements. The
statements of Data Definition Language can be used to create a new table or to alter an existing
table or to rename or drop an existing table. In this project, many Data Definition Language
(DDL) queries like create, drop, etc. are used.
Popular Keywords:
The most popular DDL keywords used in this project are:

 Create: The create keyword is used to create the database ‘Airline_Reservation_System’


and to create each of the twelve entities.
 Alter: An entity named ‘Admin’ was already created using the create keyword. An alter
keyword is usually followed by add keyword which adds another attribute to the entity,
drop keyword that removes an attribute from the entity or a rename keyword that
renames an already existing attribute in the entity.

Page 11
 Rename: The rename keyword can be used to rename an existing attribute from an
entity. This keyword usually follows after the alter keyword.
 Drop: The drop keyword can be used to remove an existing attribute from an entity. It
can also be used to remove an entire entity when combined with other keywords like
delete and where. This keyword usually follows after the alter keyword.
 Add: The add keyword can be used to add a new attribute in an entity. The main
purpose of this keyword in SQL is that if a user creates an entity and forgets its attribute
then he can use this keyword. This keyword usually follows after the alter keyword.
Data Modification Language (DML):
DML is the abbreviation of “Data Manipulation Language”. The purpose of this language is to
manipulate the data in data structures. Manipulation of data can be in the form of insertion,
deletion, updating, retrieving, etc. In this project, many Data Modification Language (DML)
queries like select, insert, update, delete, etc. are used.
Popular Keywords:
The most popular DML keywords are:

 Select: This is the most popular keyword in SQL. It is also a very important one. The
select keyword is used mainly for output. This keyword can be combined with many
other keywords to obtain the desired output.
 Insert: The entities are already created thanks to DDL. Now, if a user wishes to enter
data into those entities of the database, he has to use the insert keyword. There are
more than one ways to use this keyword. A user can either insert values one by one in
the entity or he can insert all the values using a single insert keyword.
 Update: This keyword is used to update an already existing data in the entity. If a user
wants to modify the data entered previously by the insert keyword, he can by using the
update keyword.
 Delete: This keyword is used to delete an already existing entire entity. If a user no
longer has a use for an already created entity and wants to remove the entity created
previously by the create keyword in DDL, he can by using the delete keyword.
Data Modification Language (DRL):

 DRL/DSL stands for Data Retrieval Language/Data Selection Language. It is a set


commands which are used to retrieve data from database server. DRL manipulates the
data in database for display purpose like aggregate function.

Page 12
Queries in Project:
Create DataBase ARS;
Use ARS;

--___________________________________DDL_________________________________
create table Passenger(
Psngr_Id int NOT NULL primary key,
Psngr_Name nvarchar(20),
Psngr_Password nvarchar(20),
Psngr_Email nvarchar(50),
Psngr_Age int,
Psngr_Gender nvarchar(10)
);
create table Psngr_Login(
Psngr_User_Name nvarchar(20),
Psngr_Password nvarchar(20)
);

create table Air_line_specific(


Air_line_Specific_Id int NOT NULL primary key,
Air_line_Type nvarchar(20),
);

create table Air_line(


Air_line_Id int NOT NULL primary key,
Air_line_Name nvarchar(20),
Air_line_Specific_Id int foreign key references Air_line_specific(Air_line_Specific_Id),
Air_line_Helpline nvarchar(20),
Air_line_Email nvarchar(20),
);

create table cab_service(


cab_id int primary key,
destinantion nvarchar(50),
Name nvarchar(50),
phone_no nvarchar(50),
cab_seat int,
E_mail nvarchar(50)
);

create table return_ticket(


Return_Id int primary key,
Option_ nvarchar(3),
);

create table Admiin(


Admn_Id int NOT NULL primary key,
Admn_Name nvarchar(20),
Admn_Email nvarchar(20),
Admn_Password nvarchar(20),
Admn_Phone nvarchar(20),
)

----------Alter Add column -------


--ALTER table Admiin

Page 13
--ADD admin_email nvarchar(20);
----------Alter drop column -------
--Alter table Admin_ drop column admin_email;

create table Admin_Login(


Admn_User_Name nvarchar(20),
Admn_Password nvarchar(20)
);

create table Seat(


Seat_Num int NOT NULL primary key,
Seat_type nvarchar(20),
Total_Seats int NOT NULL
);

create table Ticket_Booking(


Booking_Id int NOT NULL primary key,
Booking_Date nvarchar(20),
Psngr_Id int foreign key references Passenger(Psngr_Id),
Seat_Num int foreign key references Seat(Seat_Num)
);

ALTER table Ticket_Booking


ADD quantity int;

create table City(


city_id int NOT NULL primary key,
Departure nvarchar(20),
Arrival nvarchar(20),
);

create table Routee(


route_id int NOT NULL primary key,
route_time nvarchar(50),
city_id int NOT NULL foreign key references City(city_id),
);

--___________________________________DML_________________________________
insert into Passenger values
(1,'Faizan Alam Zaidi','Faizan001@1','Faizanzaidi13@gmail.com',20,'Male'),
(2,'Ammar Shahid','Pakistan@1','AmmarShahid2001@gmail.com',20,'Male'),
(3,'Attique Minhas','Attiq@1','AttiqueMinhasofficial@gmail.com',21,'Male'),
(4,'Mubarik Hussain','Mubarik@@1?','mmubarik0304@gmail.com',21,'Male');

insert into Air_line_specific values


(1,'International Flight'), (2, 'Domestic Flight');

insert into Air_line values(1, 'PIA', 2, 12, 'pia@gmail.com');

insert into City values(1, 'Islambad', 'Germany'),(2, 'Lahore', 'Dubai'),


(3, 'Karachi', 'Turkey'),(4, 'Islamabad', 'Afghanistan');

insert into cab_service values(1,'lahore Face


3','Abdulah','032999990',1,'abdulah@12gmail.com'),
(2,'islamabad Face 2','Shahid','032333990',2,'Shahid@12gmail.com');

Page 14
insert into Admiin values(1,'Gulam Mustafa','mustafa@','0323000001','mustafa@');

insert into Routee values(1,'10:00',1),(2,'11:00',2),(3,'12:00',2);

insert into Seat values(1,'Business_class',50),(2,'Business_class',50);

insert into Ticket_Booking values(1,'01/01/2021',1,1,2),(2,'02/01/2021',2,1,1),


(3,'10/01/2021',2,2,3),
(4,'12/04/2021',3,1,4), (5,'22/06/2021',1,1,5),(6,'11/01/2021',1,2,3);
delete from Ticket_Booking;

--===========UPDATE passenger
UPDATE Passenger
SET Psngr_Name = 'Attique', Psngr_Age= 18
WHERE Psngr_Name = 'Attique Minhas';
UPDATE Passenger
SET Psngr_Name = 'Mubarik', Psngr_Age= 18
WHERE Psngr_Name = 'Mubarik Hussain';

--===========delete airline
delete Air_line;
drop Air_line where Air_line_Id= 1

--=========== temporary name change of passenger age Psngr_Age atribute


SELECT Psngr_Age AS passenger_age
from Passenger;

--=========== Change name of table rename seat to set_seat


sp_rename 'Seat','Set_seat';
--=========== Change name of column booking_id to book_id of Ticket_Booking Table
sp_rename 'Ticket_Booking.booking_id','book_id';

---===========using group by
select Psngr_Id ,
max(quantity) max_quantity,
min(quantity) min_quantity,
avg(quantity) avg_quantity,
sum(quantity) sum_quantity
from Ticket_Booking group by Psngr_Id ;

---===========creat view of all passenger


create view view_Passenger as select Psngr_Id,Psngr_Name,Psngr_Age from Passenger;
select * from view_Passenger;

-- update a view
update view_Passenger set Psngr_Name = 'm.ammar' where Psngr_Name ='Ammar Shahid';

--delete from view_passenger where Psngr_Id = 3 ;

-- drop view
drop view view_Passenger;

Page 15
--___________________________________DRL_________________________________

select *from Passenger;


select *from Air_line;
select *from Air_line_specific;
select *from City;
select *from cab_service;
select *from Admiin;
select *from Routee;
select *from Seat;
select *from Ticket_Booking;
--===========order by

SELECT * FROM Air_line


ORDER BY Air_line_Name ASC;
SELECT * FROM Air_line
ORDER BY Air_line_Specific_Id DESC;
--===========top_air Line
SELECT top 2* from Air_line

--===========maximam pasenger id
SELECT max(Psngr_Id) as maximam_id_p
from Passenger;

--=========== Total Number of passenger


SELECT COUNT(Psngr_Id) as T_No_of_passenger
from Passenger;

--=========== those passenger are disply that age 18 to 25


SELECT * from passenger
WHERE Psngr_Age BETWEEN 18 AND 25;

--=========== all email display of all user


SELECT Admn_Email as ALL_user_email from Admiin
UNION
SELECT Psngr_Email FROM Passenger; 

Testing:
The Airline Reservation System test plan also reveals the staff responsible for each of them.
Task and also specifies the risks associated with the strategy for the evaluation. Testing can be
of multiple types. Some of them are:

 System Testing: Hypothetically, all the pieces should be in working order in a newly
constructed system, but in fact, each piece functions separately. Now is the time to 
bringall the parts into one systemand test it to decide whether it meets the require
ments of the customer. The purpose of the system is to take into account all the
possible variations to which it will be subjected and then force the system to its
limits. In system growth, it's a boring but necessary phase.

Page 16
 Acceptance Testing: Acceptance Testing runs the system by the real user with live
data of the scheme. Testing is crucial to the system's performance. System testing
makes a rational inference that the purpose will be successfully accomplished if all
the sections of the system are correct. Appropriate testing or no-testing results in
errors which do not occur until months later.
 Registration Testing: Registration Testing is done to confirm that new errors have
not been presented. It is critical that all the workers concerned be aware of the
implementation process. Objectives of the system's overall operation. They will need
to shine on how computerization is going to change their roles and need to
understand how the system as a whole applies to their position. It is advisable to
plan a training program that can include demonstrations, newsletters, workshops,
etc.

Pass or Fail Criteria:


If they meet the basic criteria in the project’s vision document, the test cases performed on the
project ‘Airline Reservation System’ will pass. If the desired feature is not met by the system,
the test case will be known to have failed.

Conclusion:
To conclude the discussion, it can be stated that using database is an efficient method to store
data in this type of scenario because not only this method stores data but also allows a user to
perform various queries using DML.

Thank You

Page 17

You might also like