Java Project On Airline Reservation System
Java Project On Airline Reservation System
1. INTRODUCTION
Page NO
INTRODUCTION
1. INTRODUCTION
1.1 ABOUT THE PROJECT
Airline reservation systems were first introduced in the late 1950s as
relatively simple standalone systems to control flight inventory, maintain
flight schedules, seat assignments and aircraft loading. The modern airline
reservation system is comprehensive suite of products to provide a system
that assists with a variety of airline management tasks and service customer
needs from the time of initial reservation through completion of the flight.
One of the most common modes of travel is traveling by air.
Customers who wish to travel by air nowadays have a wide variety
of airlines and a range of timings to choose from. Nowadays
competition is so fierce between airlines that there are lot of
discounts and a lot of luxuries given to customers that will give an
edge to that particular airline.
The World Wide Web has become tremendously popular over the
last four years, and currently most of the airlines have made
provision for online reservation of their flights.
Key Features:
* Web-based reservation engine with a user friendly graphical interface
* Individual and group level authorization access
* Reservation supervisor overriding
* Integrated departure control system
* Passenger communication features
* Comprehensive management reporting capabilities
: IBM-Compatible PC
: Pentium IV
: 2.0 GHZ
: 256 MB RAM
: 20 GB
Easy to use.
4. HTML
5. JavaScript
6. HTTP Sessions
Java Server Pages (JSP)
Regular HTML, of course, cannot contain dynamic information. JSP
is so easy and convenient that it is quite feasible to augment HTML
pages that only benefit marginally by the insertion of small amounts
of dynamic data.
JSP was designed to work with Java Servlets and JavaBeans in a
seamless fashion, it provides applications developers with the
capability to cleanly separate content generation from content
presentation.
This means that Web page designers can work independently from
business logic developers, and the end result will work in a
distributed, heterogeneous computing environment.
Java Servlets
Java Servlets are server-side technologies that provide a
component-based, platform-independent method for building
web-based applications. They provide web developers with a
simple, consistent mechanism for extending the functionality of
a web server and for accessing existing databases. Since our
website was more database-centric we found servlets as more
appropriate choice.
Servlets have access to the entire family of Java APIs,
including the JDBC API to access databases. Servlets can also
access a library of HTTP-specific calls and receive all the
benefits of the mature Java language, including portability,
performance, reusability, and crash protection.
Our other alternative for Java servlets was CGI. But we
continued with Java servlets mainly because of the following
reasons
i) Efficient: With traditional CGI, a new process is
started for
each HTTP request. With servlets, the
Functions
i.
ii.
iii.
iv.
iii.
Object-Oriented
iv.
v.
Distributed
vi.
vii.
viii.
High performance
ix.
OBJECT ORIENTED
Java is a true object-oriented language. Almost everything in java is
an object. All program code and data reside within objects and classes.
ROBUST AND SECURE
Java is a robust language. It provides many safeguards to ensure
reliable code. It has strict compile time and run time checking for data types.
Java also incorporates the concept of exception handling, which captures
series errors and eliminates any risk of crashing the system.
DISTRIBUTED
Java is designed as a distributed language for creating applications on
networks. It has the ability to store both data and programs. Java
applications can open and access remote objects on internet as easily as they
can do in a local system. This enables multiple programmers at multiple
remote locations to collaborate and work together on a single project.
SIMPLE, SMALL AND FAMILIAR
Java is a small and simple language. Many features of C and C++ that
are either redundant or sources of unreliable code are not part of java.
MULTITHREADED AND INTERACTIVE
Multithreaded means handling multiple tasks simultaneously. Java
supports multithreaded programs. This means that we need not wait for the
application to finish one task before beginning another.
HIGH PERFOMANCE
Java performance is impressive for an interpreted language, mainly
due to the use of intermediate byte code.
DYNAMIC AND EXTENSIBLE
Java is dynamic language. Java is capable of dynamically linking in
new class libraries, methods and objects. Java programs support functions
written in other languages such as C and C++.
HTML
Hypertext Markup Language(HTML) is a method where ordinary text
can be converted in to hypertext. It is a special code included to control the
layout and appearance of the text. Technically, HTML is not a programming
language. It combines instructions within data to tell a display program
called browser, how to render the data that the documents contains.
i.
ii.
iii.
adoption of a range of new features. The efforts of the World Wide Web
Consortiums HTML Working Group to codify common practice in 1996
resulted in HTML 3.2. HTML 4.0 extends HTML with mechanisms for style
sheets, direction text, richer tables and enhancements to forms, offering
improved accessibility for people with disabilities.
4.Payment.
Provides the airline with the ability to set up various travel agents and
give them reservations capabilities over the Internet. The travel agents are
able to display and offer discounted fares to passengers.
5.Cancellation.
The system should allow the user to cancel the existing booking. In this
cancellation very helpful in all the travellers.
completeness and accuracy and then it is entered into the Database. The
comments and valid messages are provided to get away with redundant data
Another important feature of the proposed system is the data security
provided by the system. The system is password protected and can only be
accessed by authorized users. The main objective of the new system is to
provide accurate data processing. The main advantages of the proposed
system are:
Complex functions are done automatically
Processing time can be minimized
Simple and easy to manage
Possible to obtain accurate results
Chances of errors reduced
Faster and more accurate than the existing system
Easy for handling reports
The proposed system is complete software for Airline Reservation System,
which is more efficient, reliable, faster and accurate for processing.
3.3 FEASIBILITY STUDY
Feasibility study is a process which defines exactly what a
project is and what strategic issues need to be considered to assess its
feasibility, or likelihood of succeeding. Feasibility studies are useful both
when starting a new business, and identifying a new opportunity for an
existing business. Ideally, the feasibility study process involves making
rational decisions about a number of enduring characteristics of a project,
including:
Technical feasibility- do we have the technology? If not, can we get
it?
Operational feasibility- do we have the resources to build the system?
Will the system be acceptable ? will people use it?
Economic feasibility, technical feasibility, schedule feasibility, and
operational feasibility- are the benefits greater than the costs?
TECHNICAL FEASIBILTY:
Technical feasibility is concerned with the existing computer
system (Hardware, Software etc.) and to what extend it can support the
proposed addition. For example, if particular software will work only in a
computer with a higher configuration, an additional hardware is required.
This involves financial considerations and if the budget is a serious
constraint, then the proposal will be considered not feasible.
OPERATIONAL FEASIBILITY:
Operational feasibility is a measure of how well a proposed
system solves the problems, and takes advantages of the opportunities
identified during scope definition and how it satisfies the requirements
identified in the requirements identified in the requirements analysis phase
of system development.
ECONOMIC FEASIBILITY:
Economic analysis is the most frequently used method for
evaluating the effectiveness of a candidate system. More commonly known
as cost/ benefit analysis, the procedure is to determine the benefits and
savings that are expected from a candidate system and compare them with
costs. If benefits outweigh costs, then the decision is made to design and
implement the system.
SYSTEM DESIGN
4.SYSTEM DESIGN
System design is the process or art of defining the architecture, components,
modules, interfaces, and data for a system to satisfy specified requirements.
One could see it as the application of systems theory to product
development. Design is the first phase in development phase for any
engineers product system. Design is the creative process. It deals with the
creating ability of the programmer. A good design is the key to effective
system. The term Design is defined as The process of applying various
techniques and principles for the purpose of defining a process or a system
in sufficient details to permit its physical realization.
4.1 INPUT DESIGN
The user interface design is very important for any application.
The interface design describes how the software communicated
within itself, to system that interpreted with it and with humans
who use it. The interface is a packing for computer software if the
interface is easy to learn, simple to use. If the interface design is
very good, the user will fall into an interactive software application.
The input design is the process of converting the useroriented inputs into the computer-based format. Errors entered by
data entry operations can be controlled by input design. The data is
fed into the system using simple interactive forms. The forms have
been supplied with messages so that user can enter data without
facing any difficulty. The data is validated wherever it requires in
the project. This ensures that only the correct data have been
incorporated into the system. The goal for designing input data is to
make data entry as easy, logical and free from errors.
The objectives of input design are:
To produce a cost effective method of input
To make the input forms understandable to the user
To ensure the validation of data input
To achieve the highest position level of accuracy
The various activities to be performed for the over all input
processors are:
Data recording at its source.
Data transfer to input form.
Data conversation to computer acceptable mode.
Data validation.
Data flow control.
Data correction if necessary.
In the proposed system, the user is provided with respective forms to
input the required data. The input screens in this project are:
Login form
Registration form
Reservation form
Cancellation form
4.2 OUTPUT DESIGN
The system output is the most important and direct source of
information to the user. So intelligible output design improves the
relationship with the user and helps in decision-making. Outputs from
the computer systems are required primarily to communicate the
results of processing to users. They are also used to provide a
permanent copy of these results for later consultation.
A major form of output is a hard copy obtained from the printer.
These printouts are designed to include the exact requirements of the
user. The outputs required by the end-user are defined during the
logical design stages.
Two phases of the output design are:
Output definition.
Output specification
Output definition takes into account the type of output contents,
its frequency and its volume. The appropriate output media is
SYSTEM DEVELOPMENT
5. SYSTEM DEVELOPMENT
SYSTEM TESTING
6. SYSTEM TESTING
under test. Boundary condition is tested to ensure that the modules operate at
boundaries. All independent paths through the control structure ensure that
all statements in a module have been executed at least once.
INTEGRATION TESTING
The major concern of integration testing are developing an
incremental strategy that will limit the complexity of entire actions among
components as they are added to the systems. Developing an implementation
and integration schedule that will make the modules available when needed,
and designing test cases that will demonstrate the viability of the evolving
system.
Integration testing is the complete testing of the set of modules, which
makes up the product. The objectives are to take untested modules and build
a program structure that has been dictated by design as integration testing
conducted, the tester should identify the critical modules.
One approach is to wait all the units have passed the testing,
and then combine them and then tested. Another strategy is to constructed
the product is increments of tested units. A small set of modules are
integrated together and tested , to which another module is added and tested
in combination and so on. The advantage of this approach is that interface
dispenses can be easily found and corrected.
VALIDATION TESTING
After the integration testing, software is completely assembled
as a package, interfacing errors have been uncovered and corrected, and
validation test may begin. Validation succeeds when the software function as
per the expectation of the customer. Software validation is achieved through
a series of black box tests that demonstrate conformity with requirements.
Both the plan and procedure designed to ensure that all functional
requirements are achieved, documentation is correct and human-engineered
and other requirements are met. Validation testing is done by inputting
dummy data to ensure that software developed satisfied all the requirements
of the user.
SYSTEM TESTING
OUTPUT TESTING
After performing the validation testing, the next step is the
output testing of the software. Since no system could be useful, if it does not
produce the required output in the specified format. Asking about the format
required by them tests the output generated or displayed by the system under
consideration.
SYSTEM IMPLEMENTATION
7. SYSTEM IMPLEMENTATION
SYSTEM MAINTENANCE
Maintenance is a necessary component of any
business computer system or work. Each individual desktop computer and
server has needs that must be met to keep them running optimally. Its easy
to overlook this maintenance and as a result, systems can perform slowly or
have issues that seem to come out of now here. By regularly addressing the
many items that need attention on every computer, performance and
reliability can be counted on over the life of each system. We can create a
schedule of maintenance tasks and implement them to keep you as efficient
with your computer system as possible.
Maintenance includes all the activity after the
installation of software that is performed to keep the system operational. The
two major forms of maintenance activities are adaptive maintenance and
corrective maintenance.
It is generally agreed that for large systems,
removing all the faults before delivery is extremely difficult and faults will
be discovered long after the system is installed. As these results are detected,
new software.
CONCLUSION
9.CONCLUSION
To various processes to fulfill the requirements proposed
during the analysis phase in the development of this project have been
completed.The package was validated for accuracy and the results were
found to be satisfactory. An instruction can implement the project and even
modify it according to its changing need and necessities. Top down
programming techniques has been adapted while developing the system.
Each task is divided into modules. The modules developed can be easily
linked to the system. Hence the new system is more reliable, accurate,
efficient, and effective.
APPENDIX
TABLE DESIGN
1.Cancellation.
This table is used to store the cancel details.
Field name
cancelid
reservationid
cancelationdate
refundmoney
Data type
int(10)
int(10)
date
decimal(10,0)
Constraints
PRIMARY KEY
FOREIGN KEY
NOT NULL
NOT NULL
2.Classes
This table is used to store the class details.
Field name
classid
flightcode
classcode
classname
fare
totalclassseat
Data type
int(10)
int(10)
varchar(50)
varchar(50)
decimal(10,0
int(10)
constraints
PRIMARY KEY
FOREIGN KEY
NOT NULL
NOT NULL
NOT NULL
NOT NULL
3. Flight days
This table is used to store the flight days details
Field name
datecode
flightcode
date
departure
Data type
int(10)
int(10)
date
time
constraints
PRIMARY KEY
FOREIGN KE
NOT NULL
NOT NULL
4. Flight details
This table is used to store the flight details.
Field name
flightcode
airlinecode
flightname
source
destination
totalcapacity
Data type
int(10)
varchar(100)
varchar(100)
varchar(100)
varchar(100)
int(10)
constraints
PRIMARY KEY
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
5. login
This table is used to store the login details
Field name
username
password
Data type
varchar(50
varchar(50
constraints
PRIMARY KEY
NOT NULL
6.mail
This table is used to store the mail details
Field name
mailid
touser
Data type
int(10)
varchar(250)
constraints
PRIMARY KEY
FOREIGN KEY
fromuse
subject
message
varchar(250)
varchar(250)
text
FOREIGN KEY
NOT NULL
NOT NULL
7.New user
This table is used to store the new user details.
Field name
userid
firstname
lastname
mobileno
landlineno
dob
address
city
state
country
emailid
password
usertype
username
Data type
int(10)
varchar(250)
varchar(250)
int(10)
int(10)
date
varchar(250)
varchar(250)
varchar(250)
varchar(250)
varchar(250)
varchar(250)
varchar(250)
varchar(250)
constraints
PRIMARY KEY
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
UNIQUE KEY
8. Outbox
This table is used to store the outbox details
Field name
oid
touser
Data type
int(10)
varchar(250)
constraints
PRIMARY KEY
FOREIGN KEY
fromuser
subject
Message
varchar(250)
varchar(250)
text
NOT NULL
NOT NULL
NOT NULL
9.Passenger
This table is used to store passenger details.
Field name
passengerno
flightcode
dob
address
nationality
name
gender
phoneno
emailid
passportno
reservationid
Data type
int(10)
int(10)
date
varchar(250)
varchar(250)
varchar(250)
varchar(250)
varchar(250)
varchar(250)
int(10)
int(10)
constraints
PRIMARY KEY
FOREIGN KEY
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
FOREIGN KEY
10.Payment
This table is used to store payment details
Field name
paymentid
checkno
creditcardno
Data type
int(10)
int(10)
int(10)
constraints
PRIMARY KEY
NOT NULL
NOT NULL
paidamount
paymentdate
passengerno
decimal(10,0)
date
int(10)
NOT NULL
NOT NULL
NOT NULL
11.Reservation
This table is used to store reservation details.
Field name
reservationid
flightcode
journeydate
classcode
source
destination
status
journeytime
Data type
int(10)
int(10)
date
varchar(50)
varchar(50)
varchar(50)
int(10)
time
constraints
PRIMARY KEY
FOREIGN KEY
NOT NULL
FOREIGN KEY
NOT NULL
NOT NULL
NOT NULL
NOT NULL
12.Reserve check
This table is used to store reserve check details
Field name
reservationid
username
password
Data type
int(10)
varchar(250)
varchar(250)
constraints
PRIMARY KEY
SCREEN LAYOUTS
REPORTS
BIBLIOGRAPHY
BIBLIOGRAPHY
WEB REFERENCES
BOOK REFERENCES