Final
Final
on
TOURISM MANAGEMENT SYSTEM
Submitted By
PROJECT ID-BCA3051
CANDIDATE’S DECLARATION
I/We hereby certify that the work which is being presented in the
thesis/project/dissertation, entitled “TOURISM MANAGEMENT SYSTEM” in
partial fulfillment of the requirements for the award of the Bachelors of
Technology in Computer Science and Engineering submitted in the School of
Computing Science and Engineering of Galgotias University, Greater Noida, is an
original work carried out during the period of July-2021 to December-2021, under
the supervision of Mr. Arjun Kp , Assistant Professor , Department of
Computer Science and Engineering of School of Computing Science and
Engineering , Galgotias University, Greater Noida
The matter presented in the thesis/project/dissertation has not been submitted by
me/us for the award of any other degree of this or any other places.
Rahul Mishra,19SCSE1040103
Rajnish Pal,19SCSE1040115
This is to certify that the above statement made by the candidates is correct to
the best of my knowledge.
Supervisor
Date:
Place:
ACKNOWLEDGEMENT
The feeling of gratitude when we expressed a holy acknowledgement and it’s with
deep sense of gratitude that we acknowledge the able guidance.
Finally, I would also like to thank all our friends for their cooperation and interest,
which was necessary for completing our project report.
Date:
Galgotias University,
The main objective of the Tourism Management System is to manage the details of
Customer, Hotel Booking, Cancellation and Tourism places. It manages all the
information about Users, Hotel, Packages etc. The project is totally built at
administrative end and thus only the administrator is guaranteed the access to the
backend database. The purpose of this project is to build an application program to
reduce the manual work for managing Tourists, Booking, Places etc.
This application will help in accessing the information related to the travel to the
particular destination with great ease. The users can track the information related to
their tours with great ease through this application. The travel agency information
can also be obtained through this application.
Through this system, the propose system is highly automated and makes the
travelling activities much easier and flexible. The user can get the very right
information at the very right time. This system will include all the necessary fields
which are required during online reservation time. This system will be easy to use
and can be used by any person. The basic idea behind this project is to save data in
a central database which can be accessed by any authorize person to get
information and saves time and burden which are being faced by their customers.
Administrator can access and modify the information stored in the database of
this system, this includes adding and updating of details, and it will give accurate
information and simplifies manual work and also it minimizes the documentation
related work. Provides up to date information. Finally booking confirmation
notification will be send to the users.
Table Of Contents
8
Chapter 4 Project Design 8
4.1 Introduction 9
4.2 Schema Diagram 10
4.3 ER Diagram 11-20
4.4 Source Code
nature and type of data that is available. For example, in order to design a salary system, there is a need for using
inputs, such as, attendance, leave details, additions or deductions etc. This facilitates understanding what kind of
data is available and by whom it is supplied to the system so that the system may be designed considering all the
relevant factors. In addition, system designing leads to ensure that the system is created in such a way that it fulfils
the need of the users and keep them at ease being user-oriented.
1.2 Formulation of Problem
TRIGGERS:
A trigger is a named database object that is associated with a table, and that activates when a particular event occurs for
the table. Some uses for triggers are to perform checks of values to be inserted into a table or to perform calculations on values
involved in an update.
A trigger is defined to activate when a statement inserts, updates, or deletes rows in the associated table. These row
operations are trigger events. A trigger can be set to activate either before or after the trigger event. For example, you can have a
trigger activate before each row that is inserted into a table or after each row that is updated.
STORED PROCEDURE:
A stored procedure is a prepared SQL code that you can save, so the code can be reused over and over again. So, if you have an
SQL query that you write over and over again, save it as a stored procedure, and then just call it to execute it. You can also pass
parameters to a stored procedure, so that the stored procedure can act based on the parameter value(s) that is passed.
The most important part is parameters. Parameters are used to pass values to the Procedure. There are 3 different types of
parameters, they are as follows:
IN: This is the Default Parameter for the procedure. It always receives the values from calling program.
OUT: This parameter always sends the values to the calling program.
IN OUT: This parameter performs both the operations. It Receives value from as well as sends the values to the
calling program.
C. SQL
Is a language to operate database; it includes database creation, deletion, fetching rows,
modifying rows, etc. SQL is an ANSI (American National Standards Institute) standard
language, but there are many different versions of SQL language. SQL is a Structured
Query Language, which is a computer language for storing, manipulating and retrieving
data stored in a relation database.
SQL is the standard language for Relational Database System. All the Relation Database
Management System (RDBMS) like My SQL, MS Access, Oracle, Sybase, Informix,
Postgres and SQL Server use SQL as their standard database language.
Why SQL?
• Allows to embed within other language using SQL modules, libraries and pre-
compilers
CHAPTER-2
LITRATURE SURVEY
The process of the system we can consider here, can maintain the
databases of the system. We can insert to the databases and retrieve all
the information.
The main aim of this project is to help the tourists to manage their trip. It
makes all operation of the tour company easy and accurate. The
standalone platform makes tourism management easy by handling
requests and providing servers for the customers located at different
parts of the various
cities. Different modules have been incorporated in this project to handle
different parts and sector of the tour management field.
CHAPTER 3
Requirement Analysis
A graphical user interface (GUI) is a type of interface that allows users to interact with electronic
devices or programs through graphical icons and visual indicators such as secondary notation, as
opposed to text-based interfaces, typed command labels or text navigation. GUIs are easier to learn
than command-line interfaces (CLIs), which require commands to be typed on the keyboard.
Third-party proprietary and free graphical administration applications (or "front ends") are available
that integrate with MySQL and enable users to work with database structure and data visually. Some
well-known front ends are:
MySQL Workbench
MySQL Workbench is the official integrated environment for MySQL. It was developed by
MySQL AB, and enables users to graphically administer MySQL databases and visually design
database structures. MySQL Workbench replaces the previous package of software, MySQL
GUI Tools. Similar to other third-party packages, but still considered the authoritative MySQL
front end, MySQL Workbench lets users manage database design & modelling, SQL
development (replacing MySQL Query Browser) and Database administration (replacing
MySQL Administrator).
MySQL Workbench is available in two editions, the regular free and open source Community
Edition which may be downloaded from the MySQL website, and the proprietary Standard
Edition which extends and improves the feature set of the Community Edition.
System design is the process of defining the elements of a system such as the architecture, modules
and components, the different interfaces of those components and the data that goes through that
system. It is meant to satisfy specific needs and requirements of a business or organization through
the engineering of a coherent and well-running system.
System designing in terms of software engineering has its own value and importance in the system
development process as a whole. To mention it may though seem as simple as anything or simply the
design of systems, but in a broader sense it implies a systematic and rigorous approach to design such
a system which fulfils all the practical aspects including flexibility, efficiency and security.
Before there is any further discussion of system design, it is important that some points be made
clear. As it goes without saying that nothing is created that is not affected by the world in which it’s
made. So, the systems are not created in a vacuum.
They are created in order to meet the needs of the users. They are not only intended to solve the
existing problems, but they also come up with acceptable solutions to the problems that may arise in
the future. The whole process of system development, from blueprint to the actual product, involves
considering all the relevant factors and taking the required specifications and creating a useful system
based on strong technical, analytical and development skills of the professionals.
Let’s get back to our discussion about what the system design phase is and the importance of system
design in the process of system development. Being another important step in the system
development process, system designing phase commences after the system analysis phase is
completed. It’s appropriate to mention that the output or the specifications taken through the phase of
system analysis become an input in the system design phase which in turn leads to workout based on
the user defined estimations.
The importance of this phase may be understood by reason of the fact that it involves identifying data
sources, the nature and type of data that is available. For example, in order to design a salary system,
there is a need for using inputs, such as, attendance, leave details, additions or deductions etc. This
facilitates understanding what kind of data is available and by whom it is supplied to the system so
that the system may be designed considering all the relevant factors. In addition, system designing
leads to ensure that the system is created in such a way that it fulfils the need of the users and keep
them at ease being user-oriented.
4.2 SCHEMA DIAGRAM:
A database schema is the skeleton structure that represents the logical view of the entire database. It
defines how the data is organized and how the relations among them are associated. It formulates all
the constraints that are to be applied on the data.
A database schema defines its entities and the relationship among them. It contains a descriptive
detail of the database, which can be depicted by means of schema diagrams. It’s the database
designers who design the schema to help programmers understand the database and make it useful.
Account:
usernam name Password security answer
e
Customer:
usernam id id_number name gender country address phone Email
e
Book package:
usernam package person id id_numbe phone Price
e s r
Book Hotel:
username hotel Persons days Ac foo id id_number phone Price
d
Hotel:
Hotel cost_per_day food_charges ac_charges
4.3 E R DIAGRAM:
ER Diagram stands for Entity Relationship Diagram, also known as ERD is a diagram that displays
the relationship of entity sets stored in a database. In other words, ER diagrams help to explain the
logical structure of databases. ER diagrams are created based on three basic concepts: entities,
attributes and relationships. ER Diagrams contain different symbols that use rectangles to represent
entities, ovals to define attributes and diamond shapes to represent relationships.
4.3 The above figure represents the ER Diagram.
Source Code
Splash.java
package tourismmanagementsystem;
import javax.swing.*;
import java.awt.*;
}
}
frame.setVisible(true);
}
}
t1=new Thread(this);
t1.start();
}
public void run() {
try {
Thread.sleep(5000);
this.setVisible(false);
new Login().setVisible(true);
} catch (Exception e) {
}
}
Login.java
package tourismmanagementsystem;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
t1=new JTextField();
t1.setBounds(60,60,300,30);
t1.setBorder(BorderFactory.createEmptyBorder());
p2.add(t1);
t2=new JPasswordField();
t2.setBounds(60,140,300,30);
t2.setBorder(BorderFactory.createEmptyBorder());
p2.add(t2);
b1=new JButton("Login");
b1.setFont(new Font("SAN_SERIF",Font.PLAIN,20));
b1.setBackground(new Color(131,193,233));
b1.setForeground(Color.white);
b1.setBorder(BorderFactory.createEmptyBorder());
b1.setBounds(60,200,150,30);
b1.addActionListener(this::actionPerformed);
p2.add(b1);
b2=new JButton("Signup");
b2.setFont(new Font("SAN_SERIF",Font.PLAIN,20));
b2.setForeground(new Color(131,193,233));
b2.setBackground(Color.white);
b2.setBorder(new LineBorder(new Color(131,193,233)));
b2.setBounds(230,200,150,30);
b2.addActionListener(this::actionPerformed);
p2.add(b2);
// setUndecorated(true);
setVisible(true);
}
new Login();
}
Loading.java
package tourismmanagementsystem;
import java.awt.*;
import javax.swing.*;
}
}
Loading(String user){
username=user;
t=new Thread(this);
setBounds(400,150,500,400);
getContentPane().setBackground(Color.WHITE);
setLayout(null);
JLabel l1=new JLabel("Travel And Tourism Application");
l1.setBounds(50,20,600,40);
l1.setFont(new Font("Raleway",Font.BOLD,25));
l1.setForeground(Color.blue);
add(l1);
p= new JProgressBar();
p.setStringPainted(true);
p.setBounds(100,80,300,25);
add(p);
t.start();
}
public static void main(String[] args) {
new Loading("").setVisible(true);
}
}
CheckHotels.java
package tourismmanagementsystem;
import javax.swing.*;
import java.awt.*;
public class CheckHotels extends JFrame implements Runnable{
Thread t1;
JLabel l1,l2,l3,l4,l5,l6,l7,l8,l9,l10;
JLabel[] label =new JLabel[]{l1,l2,l3,l4,l5,l6,l7,l8,l9,l10};
JLabel caption;
public void run(){
String[] text =new String[]{"Jw Marriott Hotel","Mandarin Oriental Hotel","Four Seasons Hotel","Radisson
Hotel","Classio Hotel","The Bay Club Hotel","Breeze Blows Hotel","Quick Stop Hotel","Quick Stop Hotel","Happy
Mornings Motel","Moss View Hotel"};
try{
for(int i=0;i<=9;i++){
this.label[i].setVisible(true);
caption.setText(text[i]);
this.label[i].add(caption);
Thread.sleep(2800);
this.label[i].setVisible(false);
}
}catch(Exception e){
}
}
CheckHotels(){
setBounds(250,75,700,550);
ImageIcon i1=null,i2=null,i3=null,i4=null,i5=null,i6=null,i7=null,i8=null,i9=null,i10=null;
ImageIcon[] image=new ImageIcon[]{i1,i2,i3,i4,i5,i6,i7,i8,i9,i10};
Image j1=null,j2=null,j3=null,j4=null,j5=null,j6=null,j7=null,j8=null,j9=null,j10=null;
Image[] jimage=new Image[]{j1,j2,j3,j4,j5,j6,j7,j8,j9,j10};
ImageIcon i11=null,i12=null,i13=null,i14=null,i15=null,i16=null,i17=null,i18=null,i19=null,i20=null;
ImageIcon[] iimage=new ImageIcon[]{i11,i12,i13,i14,i15,i16,i17,i18,i19,i20};
caption=new JLabel();
caption.setBounds(50,420,1000,70);
caption.setForeground(Color.WHITE);
caption.setFont(new Font("Tahoma", Font.PLAIN,30));
for(int i=0;i<=9;i++){
image[i]=new ImageIcon(ClassLoader.getSystemResource("tourismmanagementsystem/icons/hotel"+(i+1)+".jpg"));
jimage[i]=image[i].getImage().getScaledInstance(700,550,Image.SCALE_DEFAULT);
iimage[i]=new ImageIcon(jimage[i]);
this.label[i]=new JLabel(iimage[i]);
this.label[i].setBounds(0,0,700,550);
add(this.label[i]);
}
t1=new Thread(this);
t1.start();
}
public static void main(String[] args) {
new CheckHotels().setVisible(true);
}
}
Dashboard.java
package tourismmanagementsystem;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
b11=new JButton("Destinations");
b11.setBackground(new Color(0,0,102));
b11.setFont(new Font("Tahoma",Font.PLAIN,15));
b11.setForeground(Color.white);
b11.setMargin(new Insets(0,0,0,130));
b11.setBounds(0,300,250,35);
b11.addActionListener(this);
p2.add(b11);
b12=new JButton("Payment");
b12.setBackground(new Color(0,0,102));
b12.setFont(new Font("Tahoma",Font.PLAIN,15));
b12.setForeground(Color.white);
b12.setMargin(new Insets(0,0,0,155));
b12.setBounds(0,330,250,35);
p2.add(b12);
b13=new JButton("Calculator");
b13.setBackground(new Color(0,0,102));
b13.setFont(new Font("Tahoma",Font.PLAIN,15));
b13.setForeground(Color.white);
b13.setMargin(new Insets(0,0,0,150));
b13.setBounds(0,360,250,35);
b13.addActionListener(this);
p2.add(b13);
b14=new JButton("Notepad");
b14.setBackground(new Color(0,0,102));
b14.setFont(new Font("Tahoma",Font.PLAIN,15));
b14.setForeground(Color.white);
b14.setMargin(new Insets(0,0,0,155));
b14.setBounds(0,390,250,35);
b14.addActionListener(this);
p2.add(b14);
}
}else if(ae.getSource()==b14){
try{
Runtime.getRuntime().exec("notepad.exe");
}catch(Exception e){
}
}else if(ae.getSource()==b1){
new AddCustomer(username).setVisible(true);
}else if(ae.getSource()==b2){
new UpdateCustomer(username).setVisible(true);
}
else if(ae.getSource()==b3){
new ViewCustomer(username).setVisible(true);
}else if(ae.getSource()==b5){
new CheckPackage().setVisible(true);
}else if(ae.getSource()==b6){
new BookPackage(username).setVisible(true);
}else if(ae.getSource()==b7){
new ViewPackage(username).setVisible(true);
}else if(ae.getSource()==b8){
new CheckHotels().setVisible(true);
}else if(ae.getSource()==b11){
new Destination().setVisible(true);
}else if(ae.getSource()==b9){
new BookHotel(username).setVisible(true);
}else if(ae.getSource()==b10){
new ViewBookedHotel(username).setVisible(true);
}
}
public static void main(String[] args){
new Dashboard("").setVisible(true);
}
}
Destination.java
package tourismmanagementsystem;
import javax.swing.*;
import java.awt.*;
public class Destination extends JFrame implements Runnable{
Thread t1;
JLabel l1,l2,l3,l4,l5,l6,l7,l8,l9,l10;
JLabel[] label =new JLabel[]{l1,l2,l3,l4,l5,l6,l7,l8,l9,l10};
public void run(){
String[] text =new String[]{"Jw Marriott Hotel","Mandarin Oriental Hotel","Four Seasons
Hotel","Radisson Hotel","Classio Hotel","The Bay Club Hotel","Breeze Blows Hotel","Quick
Stop Hotel","Quick Stop Hotel","Happy Mornings Motel","Moss View Hotel"};
try{
for(int i=0;i<=9;i++){
this.label[i].setVisible(true);
Thread.sleep(2800);
this.label[i].setVisible(false);
}
}catch(Exception e){
}
}
Destination(){
setBounds(250,75,700,550);
ImageIcon i1=null,i2=null,i3=null,i4=null,i5=null,i6=null,i7=null,i8=null,i9=null,i10=null;
ImageIcon[] image=new ImageIcon[]{i1,i2,i3,i4,i5,i6,i7,i8,i9,i10};
Image j1=null,j2=null,j3=null,j4=null,j5=null,j6=null,j7=null,j8=null,j9=null,j10=null;
Image[] jimage=new Image[]{j1,j2,j3,j4,j5,j6,j7,j8,j9,j10};
ImageIcon
i11=null,i12=null,i13=null,i14=null,i15=null,i16=null,i17=null,i18=null,i19=null,i20=null;
ImageIcon[] iimage=new ImageIcon[]{i11,i12,i13,i14,i15,i16,i17,i18,i19,i20};
for(int i=0;i<=9;i++){
image[i]=new
ImageIcon(ClassLoader.getSystemResource("tourismmanagementsystem/icons/dest"+
(i+1)+".jpg"));
jimage[i]=image[i].getImage().getScaledInstance(700,550,Image.SCALE_DEFAULT);
iimage[i]=new ImageIcon(jimage[i]);
this.label[i]=new JLabel(iimage[i]);
this.label[i].setBounds(0,0,700,550);
add(this.label[i]);
}
t1=new Thread(this);
t1.start();
}
public static void main(String[] args) {
new Destination().setVisible(true);
}
}
Conn.java
package tourismmanagementsystem;
import java.sql.*;
}
}
Chapter 5
Implementation & Testing
5.1 IMPLEMENTATION
5.2 TESTING
Test Test case Input Steps to Expected Result Actual Pass/Fail
cases Data execute the Result
test case
No.
1 Login Wrong After A proper A Pass
Screen username entering the message message
or data click indicating the was
password on the login error should displayed
button appear and the saying
user should be Invalid
redirected to username
login screen. or
password
2 Insertion If any After A proper A message Pass
field was entering the message was
not data click indicating the displayed
entered. on the create error should saying
button appear and the Enter all
user should be the details
redirected to properly
customer screen.
3 Deletion If any After A proper A message Pass
field was entering the message was
not data click indicating the displayed
entered. on the delete error should saying
button appear and the Enter all
user should be the details
redirected to properly
customer screen.
4 Update If any After A proper A message Pass
field was entering the message was
not data click indicating the displayed
entered. on the update error should saying
button appear and the Enter all
user should be the details
redirected to properly
update customer
screen.
MAIN FRAME:
PERSONAL DETAILS:
UPDATE CUSTOMER PAGE:
PACKAGE PAGE:
BOOK PACKAGE:
VIEW PACKAGE:
HOTEL/RESORT PAGE:
BOOK HOTEL:
VIEW HOTEL:
DESTINATION PAGE:
PAYMENT:
DELETE ALL:
ABOUT PAGE:
REFERENCES
We have taken references from many resources like YouTube and many websites.
Websites:
• https://www.w3schools.com
• https://www.javatpoint.com
• https://www.codecademy.com
• https://www.stackoverflow.com