Flight Reservation System

Purpose: The web based “airline reservation system” project is an attempt to stimulate the basic concepts of airline reservation system. The system enables the customer to do the things such as search for airline flights for two travel cities on a specified date, choose a flight based on the details, reservation of flight and cancellation of reservation. The system allows the airline passenger to search for flights that are available between the two travel cities, namely the “Departure city” and “Arrival city” for a particular departure and arrival dates. The system displays all the flight’s details such as flight no, name, price and duration of journey etc.

After search the system display list of available flights and allows customer to choose a particular flight. Then the system checks for the availability of seats on the flight. If the seats are available then the system allows the passenger to book a seat. Otherwise it asks the user to choose another flight. To book a flight the system asks the customer to enter his details such as name, address, city, state, credit card number and contact number. Then it checks the validity of card and book the flight and update the airline database and user database. The system also allows the customer to cancel his/her reservation, if any problem occurs.

The main purpose of this software is to reduce the manual errors 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.


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 the facility 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.


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-Mega bits per second
HDD-Hard Disk Drive


The books and materials referred during the pre-development stages of the project include 
1. Software Engineering-A Practitioner’s Approach, By Roger S. Pressman.
2. Software Engineering-By James Peters.


The rest of the document deals about all the main features of this software each will its purpose and its main functions. It also gives details about the interface with other products and related functionality of each product.



The “ARS” software is an independent application. It is a self-contained product. The system interfaces, user interfaces and hardware interfaces related 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 inter-active. The functionality provided by the system like displaying error messages should adapt itself to the different users of the software.
Hardware Interfaces
Software Interfaces

Name of the language: Visual Basic

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 64 MB RAM for client systems.


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.


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.


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


• 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


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


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



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 alpha numeric.
• 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.

VISUAL BASIC is a high level programming language which evolved from the earlier DOS version called BASIC. BASIC means Beginners' All-purpose Symbolic Instruction Code. It is a very easy programming language to learn. The code look a lot like English Language. Different software companies produced different versions of BASIC, such as Microsoft QBASIC, QUICKBASIC, GWBASIC ,IBM BASICA and so on. However, people prefer to use Microsoft Visual Basic today, as it is a well developed programming language and supporting resources are available everywhere. Now, there are many versions of VB exist in the market, the most popular one and still widely used by many VB programmers is none other than Visual Basic 6. We also have VB.net, VB2005 and the latest VB2008, which is a fully object oriented programming (OOP) language. It is more powerful than VB6 but looks more complicated to master. 

VISUAL BASIC is a VISUAL and events driven Programming Language. These are the main divergence from the old BASIC. In BASIC, programming is done in a text-only environment and the program is executed sequentially. In VB, programming is done in a graphical environment. In the old BASIC, you have to write program code for each graphical object you wish to display it on screen, including its position and its color. However, In VB , you just need to drag and drop any graphical object anywhere on the form, and you can change its color any time using the properties windows. On the other hand, because the user may click on a certain object randomly, so each object has to be programmed independently to be able to response to those actions (events). Therefore, a VB Program is made up of many subprograms, each has its own program code, and each can be executed independently and at the same time each can be linked together in one way or another.

What programs can you create with Visual Basic 6?

With VB 6, you can create any program depending on your objective. For example, if you are a college or university lecturer, you can create educational programs to teach business, economics, engineering, computer science, accountancy , financial management, information system and more to make teaching more effective and interesting. If you are in business, you can also create business programs such as inventory management system , point-of-sale system, payroll system, financial program as well as accounting program to help manage your business and increase productivity. For those of you who like games and working as games programmer, you can create those programs as well. Indeed, there is no limit to what program you can create ! There are many such programs in this tutorial, so you must spend more time on the tutorial in order to learn how to create those programs. Visual Basic (VB) is the third-generation event-driven programming language and integrated development environment (IDE) from Microsoft for its COM programming model. Visual Basic is relatively easy to learn and use.

Visual Basic was derived from BASIC and enables the rapid application development (RAD) of graphical user interface (GUI) applications, access to databases using Data Access Objects, Remote Data Objects, or ActiveX Data Objects, and creation of ActiveX controls and objects. Scripting languages such as VBA and VBScript are syntactically similar to Visual Basic, but perform differently. A programmer can put together an application using the components provided with Visual Basic itself. Programs written in Visual Basic can also use the Windows API, but doing so requires external function declarations. The final release was version 6 in 1998. Microsoft's extended support ended in March 2008 and the designated successor was Visual Basic .NET (now known simply as Visual Basic). Dot net is a collection of technologies, which is used to integrate many small technologies to a single large technology such that a powerful application can be, designed which can be used from anywhere anytime.

CLS:- it is a set of rules, which is given by .net technology, which has to be followed by any .net language. It is not mandatory for any lang. To support all the rules supported by the CLS. But the language has to support the features provided by the CTS, which will be used by the CLS for its verification.

Common Type system: - it is a collection of type definitions provided by the .net framework, which has to be used by the languages, which targets .net

Note: all the languages have to support the CTS type definitions. If any language supports a data type, which is not supported by, the CTS type definitions then that language should not use that data type if the application targets to .net

Windows forms: - they are used to design desktop applications

Asp.net: asp.net is used to design 2 types of applications

Web forms: used to design web applications

Web services It is a set of instructions or a code which can be placed on the web which can be accessed by any applications written using any language for any platform or device.

Mobile forms: Used to design the device independent applications.

ADO.Net: It is a new database connectivity model based on the namespaces to interact with any databases or XML.

Base Class Libraries: It is a rich class libraries provided by the .net framework which can be used by any language which targets .net

This is like header file in C. In java u have more than 2000 packages in .net you have more than 4000 packages and the advantage is can be used by any language. 

Base Class Library support: It is a resource used by the CLR in order to load the class definitions of the assemblies used by the application.

Type definitions: It is a resource used by the CLR in order to verify the type definitions used by the application. To achieve this CLR will take the support of the CLS 

CLS: is a specification provided by the .net framework, which has to be supported or implemented by any language if it targets to the .net tech.

Note: it is not mandatory for any lang. Which targets the .net Tech to support all the rules given by the CLS. In order to verify the type definitions the CLS will take support of CTS.

CTS: is a collection of type definitions provided by the .net tech.

COM Marshalling: it is a resource used by the CLR whenever the COM interoperability takes place. This means that using the COM components in .net or .net components in COM type application.

Debug manager : It is a resource used by the CLR if any runtime error occurs to invoke the debugger such that code can be modified as per the requirement which allows to continue the processing of the application without terminating it.

Exception Manager : it is a resource used by the CLR to handle exceptions raised by the application. Provided we write the exception handling statements ie defined .if they r not handled then this resource is used to terminate the process of the application abruptly.

Security Engine: it is a resource used by the CLR to provide the access controllers to verify the security of the application.

Thread Support: Whenever the .net application uses multi-threading concept then the resources for those threads and handling of those threads will be taken care by this.

IL to native : it is a just in time compilation process which converts the MSIL instructions to the native code of the OS.

Standard JIT: it is used to compile the entire MSIL instructions to the native code of the OS.

Echo Jit: when ever a method is been invoked then the relevant MSIL instruction will be converted into the native code of the OS.

Pre JIT: it is a process of identifying the system resource to invoke the relevant JIT compiler as per the requirement.

Code Manager: it is a resource used by the CLR to manage the code present in the application like threading, exceptions.

Garbage collector: It is a resource used by the CLR in order to destroy the unused objects on a periodical basis such that the resources occupied by the unused objects will be released.

Download Flight Reservation System