Professional Documents
Culture Documents
Enrollment No.
Page 1
A
Project
Report
On
“AIR LINES RESERVATION
SYSTEM”
CERTIFICATE
This is to certify that the project work entitled “Air Lines Reservation
Signature of Student
Date:
ACKNOWLEDGEMENT
Today after completing my project I feel great relief and satisfaction, now
when I look back, I still remember the day when I was assigned this project
“AIRLINES RESERVATION ". I was somewhat puzzled and a bit nervous and
curious where to begin from. This was a new exposure for me. At this juncture of
time when my project is completed, I would like to that who provided me power to
complete this work and to my parents who always inspired and encouraged me
throughout my life. Once again, I would like to convey my sincere and special
thanks to Mr. faculty of Computer Science, for his kind
cooperation and knowledge assistance in giving shape to this project and great
regards for all the Collage staff members who gave me the practical knowledge of
all. I believe that without their guidance the successful completion of this project
was not possible.
Date:
The project is very flexible and it can be modified if the need arises. I
hope the user will find this project work quite pleasing in its output as
general sample designing has been done to enhance the view and simple
programming statement and commands have been made use of, so that
the user had no problem in understanding the listing of the project. Files
have been used to create a systematic medium of data storage and
retrieval.
I am sure that reader will like this effort and so, I wished him/her by
hearts to ahead and turn this page.
Airways has a number of reservation offices in each city where the flights operate. Each
reservation office has a number of reservation counters to handle reservations and
cancellations. Each counter has a counter assistant who is responsible for making
reservations or cancellations. The main objective of this project to performed
reservation, cancellation and report.
In concerned to reservations, the following activities are done.
Accepts the date, sector, and class of travel from the person and checks for the
availability of a seat in the Reservation file.
Confirms the details with the prospective passenger and accepts the remaining
details.
Update the seat availability status in the reservation file and adds the passenger
details to the file. The passenger is assigned a unique Passenger Name Request
(PNR) number,
Collects the fare amount.
Update the Daily Collection file with the fare amount.
In concerned to cancellation, the following activities is done
Retrieves the details from the file using the PNR number.
Verifies the details of the ticket and computes the refund amount.
Updates the seat availability status in the reservations file and marks the
corresponding details of the file.
Makes the refund and prints the refund receipt.
Files the receipt along with the signature of the passenger .
Updates the Daily Collection file.
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 8
And Reports are generated as:-
Print the confirmed and wait-listed passenger list of flights departing .
Print the daily collection summary report.
It also generate view rates for different sector & view flight schedules for a
specific period
Show status of ticket with given PNR number.
Report on availability of flight & seats on desired date.
• SYSTEM ANALYSIS
Introduction of User
Definition of System
Identification of Need
Preliminary Investigation
The most critical phase of managing system projects is planning to launch a system
investigation, we need plan detailing the steps to be taken, the people to be questioned
and they out come expected. The initial investigation has the objective of determining
whether the users request has potential merit. The major steps are defining user
requirements. When the initial investigation is completed. The user receives a proposal
summarizing the finding the recommendation of the analyst.
A key part of feasibility analysis is gathering information about the present system.
The analyst knows what information to gather, where to find it, how to collect it and what
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 11
to make of it. The proper use of tools for gathering information is the key to successful
analysis. The tools are the traditional interview, questionnaire, and on-site observation.
We need to know, for example how to structure an interview, what makes up a
questionnaire, and what to look for on-site observations. These tools when learned help
analysis assess the effectiveness of the present system and provide the groundwork for
recommending a candidate system.
Identification of need
The system need accomplish the following functions:
The system should allow the counter assistants to handle ticketing and refunds.
While accepting reservation data, all necessary validations should be performed.
For example, the system should check whether a flight operates on the date of
travel specified by the passenger. It should also check the seat availability status.
After all data has accepted, the system should print the ticket. It should also store
the passenger details, update the daily collections, and update the seat plan.
In case of cancellation, the system should accept the PNR number from the user,
validate the PNR number and update the cancellation flag for the passenger. The
system should then print the refund receipt. It should also update the daily
collections to reflect the refund amount. The status of overbooked and wait-listed
tickets should be changed whenever a confirmed ticket is cancelled.
The system should generate the following reports:
In addition, the new system should provide facilitate passengers to perform the following
tasks:
FEASIBILITY STUDY
2.) Economic
3.) Operational
The outcome of the preliminary analysis should be clear so that an alternate way to do
the job can be found out?
1.Technical Feasibility:
During the technical feasibility studies following issues are taken into consideration
As in our proposed system our team has technically trained manpower with
knowledge of developing the system. We are going to use web technology in our
system, which is readily available. Software to be used is also available easily.
So technically the project is feasible.
2. Economic Feasibility:
The staff of the company (client) is used to the computer. They will only be given
training about the proposed system to make efficient use of it.
This feasibility study is carried out by a small group of people who are familiar with
information system techniques, who understand the part of the system that are
relevant to the project and are skilled in system analysis and design process.
Considering the above three feasibility we can say that the system is feasible and
ahead for analysis of the system.
process model). The incremental model combines elements of the linear sequential
Hardware Requirement
2. Color Monitor
3. Keyboard
5. 32 MB RAM or above
7. Speakers
PROJECT ANALYSIS
Object Oriented Programming is a method of programming that seeks to mimic the way
we form models of the world. To cope with the complexities of life, we have evolved a
wonderful capacity to generalize, classify and generate abstractions. Almost every noun
in our vocabulary represents a class of objects sharing some set of attributes or behavioral
traits.
The entire basis of Object Oriented Programming, infect is defining the Object in Object
Oriented Programming. Object is a unit that combines both code and data together. And
an object is an instance of a class. Class is a type of data structure defined to hold both
Object Oriented Programming also allows you to design and implement your application
more quickly than traditional approaches. Object Oriented Programming also makes code
easier to maintain so that you can refine the implementation without causing major
problems.
programming has taken the best ideas of structured programming and has combined
them with several powerful concepts that allow you to organize your programs more
a problem into its constituent parts. Each component becomes a self-contained object
that contains its own instructions and data related to that object. Through this process,
As you probably know, all programs are composed of two fundamental elements:
program statements (code) and data. Code is that part of a program that performs
programming mechanism that binds together code and the data it manipulates,
and that keeps both safe from outside interference and misuse.
In an object-oriented language, code and data may be bound together in such a way
that a self-contained black box is created. Within the box are all necessary data and
code. When code and data are linked together in this fashion, an object is created.
Within an object, the code, data, or both may be private to that object or public.
Private code or data is known to, and accessible only by, another part of the object.
That is, private code or data may not be accessed by a piece of the program that exists
outside the object. When code or data is public, other parts of your program may access
it, even though it is defined within an object. Typically, the public parts of an object
are used to provide a controlled interface to the private elements of the object.
Polymorphism
Polymorphism (from the Greek, meaning “many forms”) is the quality that allows one
interface to be used for a general class of actions. The specific action is determined by
the exact nature of the situation. A simple example of polymorphism is found in the
matter what type of actual steering mechanism is used. That is, the steering wheel works
the same whether your car has manual steering, power steering, or rack-and-pinion
steering. Therefore, once you know how to operate the steering wheel, you can drive
any type of car. The same principle can also apply to programming. For example,
consider
a stack (which is a first-in, last-out list). You might have a program that requires three
different types of stacks. One stack is used for integer values, one for floating-point
values, and one for characters. In this case, the algorithm that implements each stack
is the same, even though the data being stored differs. In a non-object-oriented language,
you would be required to create three different sets of stack routines, calling each set
by a different name, with each set having its own interface. However, because of
polymorphism, in C++ you can create one general set of stack routines (one interface)
that works for all three specific situations. This way, once you know how to use one
“one interface, multiple methods.” This means that it is possible to design a generic
allowing the same interface to be used to specify a general class of action. It is the
compiler’s job to select the specific action (i.e., method) as it applies to each situation.
You, the programmer, don’t need to do this selection manually. You need only
was, of course, supported at run time. However, C++ is a compiled language. Therefore,
Inheritance
Inheritance is the process by which one object can acquire the properties of another
object. The reason this is important is that it supports the concept of hierarchical
hierarchical (i.e., top-down) classifications. For example, a Red Delicious apple is part
of the classification apple, which in turn is part of the fruit class, which is under the
larger class food. That is, the food class possesses certain qualities (edible, nutritious,
etc.) that also apply, logically, to its fruit subclass. In addition to these qualities, the
fruit class has specific characteristics (juicy, sweet, etc.) that distinguish it from other
food. The apple class defines those qualities specific to an apple (grows on trees, not
tropical, etc.). A Red Delicious apple would, in turn, inherit all the qualities of all
preceding classes, and would define only those qualities that make it unique.
Without the use of hierarchies, each object would have to explicitly define all of
its characteristics. However, using inheritance, an object needs to define only those
qualities that make it unique within its class. It can inherit its general attributes from
its parent. Thus, it is the inheritance mechanism that makes it possible for one object
however, that you can use C++ to write any type of program, using any type of
approach. The fact that C++ supports object-oriented programming does not mean
that you can only write object-oriented programs. As with its predecessor, C, one of
customer, and requirements problems and their impact on software. All the
verification, and maintenance problems. All the above factors have been
analyzed.
Business Risk: (1) Software is developed keeping in mind that there is demand in
custom, so that to avoid the market risk. (2) Software is designed to fit into
the overall business strategy for the custom department, to avoid the
person’s team, so that they could know much about the product working
and sell in the market. (4) It has the strong management support, and not
The class and object layer: It contains the class hierarchies that enable the system
to be created using generalizations and increasingly more targeted
specializations.
The message layer: It contains the design details that enable each object to
communicate with its collaborators. This layer establishes the external and
inters interfaces for the software.
The responsibilities layer: It contains the data structure and algorithmic design for
all attributes and operations for each object.
♦ User can view list of stations along with their code, charges for document and
non-document by selecting option 1 from the main menu.
♦ User can book the courier by selecting option 2 from the main menu. Users
have to input details of courier, consignor and consignee, and data is saved in
the file – customer. at.
♦ User can search for station information by giving station code, by selecting
option 3 from the main menu.
♦ User can search and view customer details by selecting option 4 from the main
menu.
♦ User can view daily booking status by selecting option 1 from the report menu.
♦ User can view monthly booking status by selecting option 2 from the report
menu.
♦ User can add, modify or delete station records by selecting option 1, 2 or 3 from
the edit station menu.
1. Economic Feasibility
Economic analysis is the most frequently used technique for evaluating the
effectiveness of a proposed system. More commonly known as cost / benefit
analysis; in this procedure we determine the benefits and savings that are
expected from a proposed system and compare them with costs. We found the
benefits outweigh the costs; we take a decision to design and implement the
new proposed system.
2. Technical Feasibility
3. Operational Feasibility
4. Social feasibility
5. Management feasibility
6. Legal feasibility
7. Time feasibility
SYSTEM DESIGN
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 32
Introduction
System design provides the understandings and procedural details necessary for
implementing the system recommended in the system study. Emphasis is on the
translating the performance requirements into design specifications. The design has is a
transition from a user-oriented document (System proposal) to a document oriented to the
programmers or database personnel.
1) Logical Design
2) Physical Design
A data flow diagram shows the logical flow of the system. For a system it
describes the input (source), output (destination), FILE (data stores) and procedures (data
flows) all in a format that meets the user’s requirement. When analysis prepare the
logical system design, they specify the user needs at a level of detail that virtually
determines the information flow into an out of the system and the required data resources.
The logical design also specifies input forms and screen layouts.
The activities following logical design are the procedure followed in the physical
design e.g., producing programs, software, file and a working system. Design
specifications instruct the user about what the system should do.
Outputs from computer system are required primarily to communicate the results
of processing to users; they are also used to provide a permanent hard copy of these
results for later consultation. Various types of outputs required can be listed as below:
• Interactive outputs, which involve the user is communicating directly with the
computer, It is particularly important to consider human factor when
designing computer outputs. End user must find outputs easy to use and
useful to their jobs, without quality output, user may find the entire system
unnecessary and avoid using it. The term “Output” in any information system
may apply to either printer or displayed information. During the designing the
output for this system, it was taken into consideration, whether the
information to be presented in the form of query of report or to create
documents etc.
• When and how often output and their format is needed. While designing
output for project based Attendance Compilation System, the following
aspects of outputs designing were taken into consideration.
• The outputs (i.e., well formatted table outputs in the screen itself) designed
are simple to read and interpret.
• Format of each output was another important point taken into consideration.
Output media, for each output appropriate media is decided whether it will be
displayed on screen or will be taken to printer or both.
• Other output design related specifications, i.e., how frequently the outputs
will be generated, how many pages or sheets approximately it will keep up,
what is its planned use and output distribution to users are also taken into
account.
These were a few major designing issues, which were taken into consideration,
while deciding the output specifications for the system. As direct beneficiary of reports is
the user community, they were consulted constantly at every level. Formats and screen
design for various reports were identified, taking into account the user requirements.
Before finalising these were given to users for any improvement and suggestions. End
users issues taken into consideration were Readability, Relevance and Acceptability.
Once all the output reports to be generated by HARS system were identified, they
were given to users for their acceptance. For prototyping various outputs, final outputs
models were created with dummy data, before they were finalized.
Output Sources:
• Tabular contents
• Graphic format
• Using Icons
Output Definition:
Types of outputs
Data items
• Number of characters
Input Design:
The input design is the link that ties the information system into the user’s world.
Input specifications describe the manner in which data enters the system for processing.
Input design features can ensure the reliability of the system and produce results from
accurate data, or they can result in the production of erroneous information.
• Data entry, the activity of putting data into the computer processing.
• Avoid delay
Input stages several activities have to be carried out as part of the overall input
process. They include some or all of the following.
Input Performa were designed, after a careful discussion with users. It was
attempted to cover all user requirements. Designed Performa were given to user for any
suggestion and final approval.
Various data items were identified and wherever necessary were recorded. As the
data concerning of HARS is voluminous in nature and number of case will grow
dynamically in future, proper care was taken for accuracy and consistency of data.
• Wherever items are coded, input code is checked for it’s validly with respect
to several checks.
• Utmost care has been taken to incorporate the validation at each stage of the
system. E.g. when entering records into employee information table for
employee, it is checked that whether the corresponding employee exists in the
employee information table etc.,
Enough messages and dialogue boxes are provided while design screen, which does guide user at
the time of any errors, or at time of entry. This feature provides a user-friendly interface to native
users. It can be emphasized that input deigns of HARS system is so designed that it ensures easy
and error free data entry mechanism. Once one is sure of input data the output formatting
becomes a routine work.
PROJECT DESIGN
Reservation
Reservations for a flight commence 30 days before the date of the flight. The procedure
for making reservations is given below. The procedure described below deals with the
provisional reservations the can be made through telephone conversation.
On receiving request for reservation from a person, the counter assistant performs the
following activities:
Accepts the date, sector, and class of travel from the person and checks for the
availability of a seat on the requested date. The details about the availability seats
and the seat plan are kept in the Reservation file.
Confirms the details with the prospective passenger and accepts the remaining
details. These details include the preferences such as a window or an aisle seat, a
smoking or a non-smoking zone, meal preferences such as vegetarian or non-
vegetarian, and special service requests (SSR), such as dietary and medical
considerations.
Update the seat availability status in the reservation file and adds the passenger
details to the file. The passenger is assigned a unique Passenger Name Request
(PNR) number, which is used to access ticket details for queries and cancellation.
Collects the fare amount.
Prints the ticket and gives it to the passenger.
Update the Daily Collection file with the fare amount.
Horizon Airways also provides for overbooked and wait-listed tickets for the economy
class. Overbooking is allowed for 10 seats per flight. For example, if the capacity of an
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 40
aircraft is 340 seats, booking are made for 350 seats, that is, 340 seats + 10 overbooked
tickets. If the number of bookings exceeds the capacity and overbooking, a wait-listed
ticket is issued to the passenger with his or her consent. An overbooked or wait-listed
passenger is accommodated on the flight depending on the availability of a seat when the
passenger checks in. A passenger who cannot be accommodated on a flight is given full
refund.
Cancellation
On receiving a cancellation request from a passenger the counter assistant performs the
following tasks:
Retrieves the details from the file using the PNR number.
Verifies the details of the ticket and computes the refund amount.
Updates the seat availability status in the reservations file and marks the
corresponding details of the file.
Makes the refund and prints the refund receipt.
Files the receipt along with the signature of the passenger.
Updates the Daily Collection file.
The amount of refund is calculated based on the ticket status and the date cancellation. If
the ticket is wait-listed or overbooked, full amount is refunded.
STATION
DATE
CUSTOMER
PROGRAM STRUCTURE
STATION
DATE
CUSTOMER
Modules in class STATION:
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 45
• addition() : Function to add new station record in the
file.
• modification() : Function to modify existing record of
station.
• deletion() : Function to delete existing record of the
station.
• list() : Function to display list of all stations.
• search() : Function to search information for
station.
• amount() : Function to calculate and return total
amount for the given information of
station.
• foundcode() : Function to return station code found in
the file or not.
FLOW CHART
1. Station Information
2. Booking
3. Search Station
4. Customer Record MENU
5. Reports
6. Edit Station
0. Quit
Enter your Choice :
Input Ch
If Y
1
Ch=1
If Y
2
Ch=2 “AIR LINES RESERVATION SYSTEM”
Enrollment No.
If IfN Page 48
Ch=6
Ch=0 Ch=3
Ch=5
STOP
6 Y N N N Y
Y 345
If
Ch=4
MENU
if MENU
eof
if N
stcode = file.stcode
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 51
Y
if Y
eof MENU
if
code = file.code N
Input Ch
If Y
R1
Ch=1
If Y
R2
Ch=2
If Y
Ch=0 MENU
if
eof 5
if N
date = booking date
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 54
Y
R2
switch to next record
if
eof 5
if N
month = booking month
6 to next record
switch
Input Ch
If Y
E1
Ch=1
If Y
E2
Ch=2
If Y
Ch=3 E3
N
“AIR LINES RESERVATION SYSTEM”
Y Enrollment No.
Page 56
If
Ch=0 MENU
E1
technique may well System in large part for the wide spread use of the E-R model.
Lines: which link attribute to entity set and entity set to relationship sets
Entity-Relationship Diagram
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 61
The following diagram depicts various entities involved in the airline reservation
system the attributes of entities and the relationships between entities:
SS
R
Seat First Class Seats
Zone Statu Aircraft available
Meal Type
s
Cancel
Flight
Seat Flag Dep. Time
No.
preference
Arr.Time
Operates
in
1
Sector
ID SECTOR Week Day 2
Description
Week Day 1
Full descriptions of the system actually consist of a set of data flow diagram.
Specification:
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 62
Here we have used YOURDON’s data flow symbols.
with the system. The terms source and sink are interchangeable with
system.
# include <iostream.h>
# include <fstream.h>
# include <string.h>
# include <stdlib.h>
# include <stdio.h>
# include <ctype.h>
# include <dos.h>
# include <conio.h>
# include <process.h>
class TICKET
{
private:
void
ADD_RECORD(char[10],char[15],char[15],int,int);
public:
void ADDITION(void);
void ENQUIRY(void);
char *FLIGHTNO(int);
protected:
char fltno[10],from[15],to[15];
int ecofair,exefair;
};
class PASSENGER
{
public:
void
ADD_RECORD(int,int,char[26],char[36],int,char,char);
void DELETE_TICKET(int);
int DELETE_FLIGHT(int);
void LIST(void);
int LAST_TICKETNO(void);
int SEATS(int);
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 67
int FOUND(int);
char *NAME(int);
void PASS_INFO();
void MODIFY();
protected:
char Class,name[26],address[36],sex;
int slno,age,ticketno;
};
count++;
}
file.close();
return fltno;
}
int i=1;
fstream file;
file.open("TICKET.DAT",ios::in);
while(file.read((char*)this, sizeof(TICKET)))
{
if(sno == i)
break;
i++;
}
file.close();
strcpy(pfltno,fltno);
if(p.SEATS(sno)>=250)
{
gotoxy(5,21);
cout<<"\7Sorry! SEATS ARE NOT AVAILABLE";
getch();
return;
}
gotoxy(3,23);
clreol();
cout<<"E=ECONOMIC,X=EXECUTIVE or PRESS <ENTER> TO
EXIT";
do
{
gotoxy(3,21);
clreol();
cout<<"BY WHICH CLASS YOU WOULD LIKE TO TRAVEL :
";
pclass = getche();
pclass = toupper(pclass);
if(pclass == 13)
return;
} while(pclass !='E' && pclass !='X');
clrscr();
gotoxy(72,3);
cout<<"<0>-EXIT";
gotoxy(34,2);
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 71
cout<<"RESERVATION";
gotoxy(5,5);
cout<<"NAME : ";
gotoxy(5,6);
cout<<"ADDRESS : ";
gotoxy(5,7);
cout<<"SEX M/F : ";
gotoxy(5,8);
cout<<"AGE : ";
do
{
valid = 1;
gotoxy(5,25);
clreol();
cout<<"ENTER THE NAME OF THE PASSENGER";
gotoxy(15,5);
clreol();
gets(pname);
if(pname[0] == '0')
return;
if(strlen(pname) < 1 || strlen(pname) > 25)
{
valid = 0;
gotoxy(5,25);
clreol();
cout<<"\7ENTER CORRECTLY {RANGE : 1 TO 25}";
getch();
}
} while(!valid);
do
{
valid = 1;
gotoxy(5,25);
clreol();
cout<<"ENTER THE ADDRESS OF THE PASSENGER";
gotoxy(15,6);
clreol();
gets(paddress);
if(paddress[0] == '0')
return;
if(strlen(paddress) < 1 || strlen(paddress) > 35)
{
valid = 0;
gotoxy(5,25);
clreol();
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 72
cout<<"\7ENTER CORRECTLY {RANGE : 1 TO 35}";
getch();
}
} while(!valid);
do
{
gotoxy(5,25);
clreol();
cout<<"ENTER THE SEX OF THE PASSENGER";
gotoxy(15,7);
clreol();
psex = getche();
psex = toupper(psex);
if(psex == '0')
return;
} while(psex !='M' && psex !='F' );
do
{
valid = 1;
gotoxy(5,25);
clreol();
cout<<"ENTER THE AGE OF THE PASSENGER";
gotoxy(15,8);
clreol();
gets(t1);
t2 = atoi(t1);
page = t2;
if(t1[0] == '0')
return;
if(page < 1 || page > 100)
{
valid = 0;
gotoxy(5,25);
clreol();
cout<<"\7ENTER CORRECTLY ";
getch();
}
} while(!valid);
clrscr();
gotoxy(11,4);
cout<<"****************************************************";
gotoxy(11,21);
p.ADD_RECORD(tno,sno,pname,paddress,page,psex,pclass);
getch();
}
PASS_INFO();
cout<<"\nENTER THE TICKET NUMBER OF THE PASSENGER";
cin>>tcno;
fstream file;
file.open("PASS.DAT",ios::in|ios::out);
int m=0;
int l;
file.read((char*)this,sizeof(PASSENGER));
while(!file.eof())
{ m++;
if(tcno==ticketno)
{
l=(m-1)*sizeof(PASSENGER);
cout<<l;
getch();
clrscr();
gotoxy(72,3);
cout<<"<0>-EXIT";
gotoxy(34,2);
cout<<"RESERVATION";
gotoxy(5,5);
cout<<"NAME : ";
gotoxy(5,6);
cout<<"ADDRESS : ";
gotoxy(5,7);
cout<<"SEX M/F : ";
gotoxy(5,8);
cout<<"AGE : ";
gotoxy(5,25);
clreol();
cout<<"ENTER THE NAME OF THE PASSENGER";
gotoxy(15,5);
clreol();
gets(pname);
gotoxy(5,25);
clreol();
cout<<"ENTER THE ADDRESS OF THE PASSENGER";
gotoxy(15,6);
clreol();
gets(paddress);
gotoxy(5,25);
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 75
clreol();
cout<<"ENTER THE SEX OF THE PASSENGER";
gotoxy(15,7);
clreol();
psex = getche();
psex = toupper(psex);
gotoxy(5,25);
clreol();
cout<<"ENTER THE AGE OF THE PASSENGER";
gotoxy(15,8);
clreol();
gets(t1);
t2 = atoi(t1);
page = t2;
cout<<"CLASS:E(ECONOMIC) OR X(EXECUTIVE)";
pclass=getche();
if(strlen(paddress)!=0)
strcpy(address,paddress);
if(strlen(pname)!=0)
strcpy(name,pname);
if(strlen(t1)!=0)
age=page;
if(psex!=13)
sex=psex;
if(pclass!=13)
Class=pclass;
file.seekp(l);
file.write((char*)this,sizeof(PASSENGER));
file.close();
return;
}
else
file.read((char*)this,sizeof(PASSENGER));
}
}
void PASSENGER :: PASS_INFO()
{
fstream file;
file.open("PASS.DAT",ios::in);
cout<<" PASSENGERS
INFORMATION\n";
cout<<"
**************************\n";
gotoxy(2,4);
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 76
cout<<"T.NO.";
gotoxy(11,4);
cout<<"S.NO.";
gotoxy(25,4);
cout<<"NAME";
gotoxy(48,4);
cout<<"ADDRESS";
gotoxy(66,4);
cout<<"AGE";
gotoxy(70,4);
cout<<"SEX";
gotoxy(74,4);
cout<<"CLASS";
gotoxy(1,5);
cout<<"*********************************************************
**********************";
int tno,sno,page;
char pname[26],paddress[36],psex,pclass,pfltno[10];
int i=6;
while(file.read((char*)this,sizeof(PASSENGER)))
{
tno=ticketno;
sno=slno;
strcpy(pname,name);
strcpy(paddress,address);
page = age;
psex = sex;
pclass = Class;
gotoxy(2,i);
cout<<tno;
gotoxy(11,i);
cout<<sno;
gotoxy(20,i);
cout<<pname;
gotoxy(45,i);
cout<<paddress;
gotoxy(67,i);
cout<<page;
gotoxy(71,i);
cout<<psex;
gotoxy(77,i);
cout<<pclass;
i++;
}
file.close();
}
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 77
//THIS FUNCTION RETURNS THE LAST TICKET NO. IN THE
PASSENGER FILE
while(file.read((char*)this,sizeof(PASSENGER)))
{
if(tno == ticketno)
{
found = 1;
break;
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 78
}
}
file.close();
return found;
}
clrscr();
int row = 8,found = 0,flag = 0;
char ch;
gotoxy(3,4);
cout<<"FLIGHT NO.----> "<<ticket.FLIGHTNO(sno);
gotoxy(28,2);
cout<<"**LIST OF PASSENGERS**";
gotoxy(5,6);
cout<<"TICKET NO. NAME
CLASS ";
gotoxy(4,7);
cout<<"*******************************************************";
fstream file;
file.open("PASS.DAT",ios::in);
file.seekg(0,ios::beg);
while(file.read((char*)this,sizeof(PASSENGER)))
{
if(sno == slno)
{
flag = 0;
delay(20);
found = 1;
gotoxy(5,row);
cout<<ticketno;
gotoxy(17,row);
cout<<name;
gotoxy(49,row);
if(Class == 'X')
cout<<"EXECUTIVE";
else
cout<<"ECONOMIC";
if(row == 21)
{
flag = 1;
row = 7;
gotoxy(5,23);
cout<<"PRESS ANY KEY TO CONTINUE OR PRESS <ESC>";
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 80
ch = getch();
if(ch == 27)
break;
clrscr();
gotoxy(32,3);
cout<<"LIST OF PASSENGERS";
gotoxy(2,5);
cout<<"TICKET NO. NAME CLASS ";
}
else
row++;
}
}
if(!found)
{
gotoxy(5,10);
cout<<"\7RECORDS NOT FOUND";
}
if(!flag)
{
gotoxy(5,23);
cout<<"PRESS ANY KEY TO CONTINUE....";
getch();
}
file.close();
}
//PAGE 11
clrscr();
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 83
fstream file;
file.open("PASS.DAT",ios::in);
while(file.read((char*)this,sizeof(PASSENGER)))
if(ticketno == tno)
break;
file.close();
int i = 1;
file.open("TICKET.DAT",ios::in);
while(file.read((char*)this,sizeof(TICKET)))
{
if(slno == i)
break;
i++;
}
file.close();
PASSENGER p;
gotoxy(11,4);
cout<<"****************************************************";
gotoxy(11,21);
cout<<"****************************************************";
gotoxy(33,6);
cout<<"TICKET NO. : "<<tno;
gotoxy(17,9);
cout<<from<<" TO "<<to;
gotoxy(45,9);
cout<<"FLIGHT NO. : "<<fltno;
gotoxy(20,11);
cout<<"PASSENGER NAME : "<<p.NAME(tno);
gotoxy(20,13);
cout<<"ADDRESS : "<<address;
gotoxy(20,15);
cout<<"SEX : "<<sex;
gotoxy(20,17);
cout<<"AGE : "<<age;
gotoxy(45,19);
if(Class == 'E')
cout<<"TOTAL FAIR : "<<ecofair;
else
cout<<"TOTAL FAIR : "<<exefair;
do
{
gotoxy(10,23);
clreol();
cout<<"CANCEL THIS TICKET (Y/N) : ";
ch = getch();
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 84
ch = toupper(ch);
} while(ch != 'Y' && ch != 'N');
if(ch == 'N')
return;
DELETE_TICKET(tno);
gotoxy(10,25);
cout<<"\7TICKET CANCELLED";
getch();
}
// PAGE 12
clrscr();
char t1[10],ch;
int t2,tno,valid;
do
{
valid = 1;
gotoxy(3,23);
clreol();
cout<<"PRESS <ENTER> TO SEE LIST OR 0 TO EXIT";
gotoxy(3,20);
clreol();
cout<<"ENTER THE TICKETNO. OF THE PASSENGER : ";
gets(t1);
t2 = atoi(t1);
tno = t2;
if(t1[0] == '0')
return;
if(strlen(t1) == 0)
{
valid = 0;
LIST();
clrscr();
}
if(FOUND(tno) && valid)
{
valid = 0;
gotoxy(3,23);
clreol();
cout<<"\7RECORD NOT FOUND";
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 85
getch();
}
} while(!valid);
clrscr();
fstream file;
file.open("PASS.DAT",ios::in);
while(file.read((char*)this,sizeof(PASSENGER)))
if(ticketno == tno)
break;
file.close();
int i = 1;
file.open("TICKET.DAT",ios::in);
while(file.read((char*)this,sizeof(TICKET)))
{
if(slno == i)
break;
i++;
}
file.close();
PASSENGER p;
gotoxy(11,4);
cout<<"****************************************************";
gotoxy(11,21);
cout<<"****************************************************";
gotoxy(33,6);
cout<<"TICKET NO. : "<<tno;
gotoxy(17,9);
cout<<from<<" TO "<<to;
gotoxy(45,9);
cout<<"FLIGHT NO. : "<<fltno;
gotoxy(20,11);
cout<<"PASSENGER NAME : "<<p.NAME(tno);
gotoxy(20,13);
cout<<"ADDRESS : "<<address;
// PAGE 13
gotoxy(20,15);
cout<<"SEX : "<<sex;
gotoxy(20,17);
cout<<"AGE : "<<age;
gotoxy(45,19);
if(Class == 'E')
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 86
cout<<"TOTAL FAIR : "<<ecofair;
else
cout<<"TOTAL FAIR : "<<exefair;
gotoxy(10,25);
cout<<"PRESS ANY KEY TO CONTINUE....";
getch();
}
gotoxy(3,23);
if(!DELETE_FLIGHT(sno) )
cout<<"\7RECORDS NOT FOUND.PRESS ANY KEY TO
CONTINUE....";
else
void main(void)
{
// PAGE 14
PASSENGER p;
TICKET ticket;
RESERVE r;
ticket.ADDITION();
int ch,ch1;
while(1)
{
clrscr();
gotoxy(29,9);
cout<<"AIR TICKET RESERVATION";
gotoxy(29,10);
cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~";
gotoxy(30,11);
cout<<"1 : RESERVATION";
gotoxy(30,12);
cout<<"2 : CANCELLATION";
gotoxy(30,13);
cout<<"3 : PASSENGER RECORDS ->";
gotoxy(30,14);
cout<<"4 : ENQUIRY";
gotoxy(30,15);
cout<<"5 : LIST OF PASSENGERS";
gotoxy(30,16);
cout<<"6 : QUIT";
gotoxy(30,18);
cout<<"ENTER YOUR CHOICE : ";
cin>>ch;
switch(ch)
{
case 1:
r.RESERVATION();
break;
case 2:
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 88
r.CANCELLATION();
break;
case 3:
clrscr();
gotoxy(29,10);
cout<<" PASSENGER RECORDS ";
gotoxy(29,11);
cout<<"~~~~~~~~~~~~~~~~~~~~~~~";
gotoxy(33,12);
cout<<"1 : PASSENGER INFORMATION";
gotoxy(33,13);
cout<<"2 : MODIFY";
gotoxy(33,14);
cout<<"0 : EXIT";
gotoxy(33,16);
cout<<"ENTER YOUR CHOICE--->";
cin>>ch1;
if(ch1==1)
{clrscr();
p.PASS_INFO();
getch(); }
else
if(ch1==2)
{clrscr();
p.MODIFY();}
else
break;
break;
case 4:
ticket.ENQUIRY();
gotoxy(2,23);
cout<<"PRESS ANY KEY TO CONTINUE....";
getch();
break;
case 5:
p.LIST();
break;
case 6:
exit(0);
default:
cout<<"ENTER THE CORRECT CHOICE";
}
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 89
}
}
OUTPUT SCREEN
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 90
LOGIN PAGE OF
AIRLINES TICKET RESERVATION
SOFTWARE TESTING:
The purpose of this document is to cover testing of Horizon Airways project from all
aspects i.e. from module wide testing to system integration testing.
Software testing is a process of executing a program with objective of finding an
error. Software quality should be a primary concern in software development efforts.
Software testing and evaluation are traditional method of checking software quality. It
consists of putting together various coded pieces of a design, testing them and correcting
the parts of the code or the design that is not correct. At this stage some errors are
introduced purposely to test whether the program will spot them.
Test summary document with test results (Quality Record) for each test case with
problems found during the test execution. After review of test summary document, it will
be decided if any test case is to be repeated or if the identified problem should be
converted into “a defect” to be fixed in subsequent release of product.
Data entry:
Module interface is tested to ensure that information properly flows into and our of the
program unit under test. The local data is structure is examined to ensure that data stored
temporarily maintained its integrity during all steps in an algorithm’s execution.
Boundary conditions are tested to ensure that the module operates properly at boundaries
established to limit or restrict processing. All independent paths through the control
structure are exercised to ensure that all statements in a module have been executed at
lest once. And finally, all error handling paths are tested.
Thus the unit testing is done after code development, reviewed, and verified for correct
syntax and in unit testing we execute each module one by one and prepare a report of
result.
Integration technique:
Integration testing is a systematic technique for constructing the program structure while
conducting tests to uncover errors associated with interfacing. The objective is to take
unit tested modules and build a program structure that has been dictated by design. Their
are three type of integration testing, each are discussed below.
BOTTOM OF INTEGERATION:
This technique begins construction and testing with atomic modules. Because modules
are integrated from the bottom up, processing required for module subordinate to a given
level’s always available and the need for stubs are eliminated.
REGRESSION TESTING:
This technique is the activity that help to ensure that changes during the testing do not
introduce unintended behavior or additional errors.
Validation testing:
Validation succeeds when software functions in a manner that can be reasonably
expected by the customer. There are two types of validation testing these are discussed
below.
ALPHA TESTING:
The alpha tests are conducted at the developer’s site by a customer. The software is used
in a natural setting with the developer. Alpha tests are conducted in a controlled
environment.
BETA TESTING:
The beta tests are conducted at one or more customer sites by the end use of the software.
Unlike, the alpha testing, the developer is generally not present. Therefore, the beta test is
a “live” application of the software in an environment that cannot be controlled by the
developer. The customer records all problems that are encountered during beta testing
and reports these to the developer at regular intervals. As a results of problems reported
during beta test. The software developer makes modifications and then prepares for
release of the software product to the entire customer base.
“AIR LINES RESERVATION SYSTEM”
Enrollment No.
Page 100
System testing:
It is a series of different test whose primary purpose is to fully exercise the computer-
based system. These are discussed below:
RECOVERY TESTING:
It the system tests that forces the software to fail in a variety of ways and verifies that
recovery is properly performed.
SECURITY TESTING:
It attempts to verify that protection mechanisms built into a system will in fact protect, it
from improper penetration.
STRESS TESTING:
It executes a system in a manner that demands resources in abnormal quantity,
Frequency, or volume.
PERFORMANCE TESTING:
It is designed to test run-time performance of software within the context of an integrated
system. It occurs throughout all steps in the testing process.
GUI Verification
Compatibility Testing
“AIR LINES RESERVATION SYSTEM”
Functional Testing Enrollment No.
Performance Testing
Page 101
and specify measures such as passwords and encryption to provide protection. The backup
copies of software and recovery restart procedures must be available when needed.
This system will provide the facilities for both customer & operators on the same portal. So
security constraints must be applied carefully. A customer wouldn’t require to login into the
reservation system for reservation. He will simply view all the information on web. While a
counter assistant will require to have user ID & Password. After proper validation checking of
that operator he can make transactions. His total transaction details will also be recorded along
with his ID in a log Table, so that any misusage of the system can be prohibited.
System security refers to various validations on data in form of checks and controls to avoid the
system from failing. It is always important to ensure that only valid data is entered and only valid
operations are performed on the system. The system employs two types of checks and controls:
PERT Chart:
A PERT Chart is a network of boxes and arrows. To create PERT chart, first we
need to list all the activities required for completion of the project and estimate how long
each will take. Then we must determine the dependence of activities on each other. The
PERT chart gives a graphical representation of this information. PERT chart is always
used by the project manager to answer the questions like which all activities are
necessary or there in the project and how long each will take.
Here we are using boxes to represent the activities. The arrows are used to show the
dependencies of activities on one another. The activity at the head of an arrow cannot
start until the activity at the tail of the arrow is finished. The boxes in a PERT chart
can be decorated with starting and ending dates for activities.
GANTT Chart:
GANTT charts are a project control technique that can be used for several
purposes, including scheduling, budgeting, and resource planning. A Gantt chart is a bar
Start
Analysis &
Design Training
Developin
g API
Coding
Test
Help
file
creati
on
Finish
REFERENCES