Finalreport A
Finalreport A
ON
TOURISM MANAGEMENT
Submitted for partial fulfillment of the requirements for the award of the master degree in
Session 2022-2024
Guided By :
Submitted by:
Dr. Lalatendu Muduli Suryakanta Behera
ACKNOWLEDGEMENT
We take this occasion to thank God, almighty, for blessing us with his grace and taking our
Lalatendu Muduli, for providing us with the proper guidance and advice at crucial junctures
and showing us the right way. We sincerely thank our respected head of the department, Dr
Prafulla Kumar Behera, for allowing us to use the available facilities. We would also like to
thank the other faculty members on this occasion. Last but not least, we would like to thank
our friends for the support and encouragement they have given us during our work.
ABSTRACT
As the name specifies, “TOURISM MANAGEMENT SYSTEM” is software developed to
Identification of the drawbacks of the existing system leads to the designing of a computerised
system that will be compatible with the existing system with system, which is more user-friendly
and more GUI-oriented. We can improve the system's efficiency and thus overcome the
High Security
Data consistency
Easy to handle
Objective
Existing System
Proposed System
Study of the System
Functional Requirement
Number of Modules
System Requirement
Hardware Configuration
Software Configuration
Software Features
PHP
MYSQL
PHPMYADMIN’
Input Design
Output Design
SDLC Methodology
DFD Diagrams
UML Diagrams
ER Diagrams
Database Design
Database Table and Structure of DB Tables
Architecture Flow
Output Screen of the Project (Screenshots)
Conclusion
Bibliography
OBJECTIVE:
The objective of the project is to develop a system that automates the processes
and activities of a travel and tourism agency.
The purpose is to design a system that can perform all operations related to travelling
and sightseeing.
EXISTING SYSTEM:
In the present system, a customer has to approach various agencies to find details
about places and book tickets.
This often requires a lot of time and effort.
A customer may not get the desired information from these offices, and often, the
customer may be misguided.
It is tedious for a customer to plan and execute a particular journey properly.
PROPOSED SYSTEM:
The proposed system is a web-based application that maintains a centralised repository of
all related information.
The system allows one to access the relevant information and make necessary travel
arrangements easily.
Users can decide about places they want to visit and book travel and accommodation
online.
The ‘operational or generic user interface’ helps the system's end users in transactions through the
existing data and required services. The operational user interface also helps the ordinary users
manage their information customised as per the included flexibilities.
FEASIBILITY STUDY:
FEASIBILITY REPORT:
Preliminary investigation examines project feasibility; the likelihood the system will be
useful to the organization. The main objective of the feasibility study is to test the Technical,
Operational and Economical feasibility for adding new modules and debugging old running
system. All systems are feasible if they are given unlimited resources and infinite time. There are
aspects in the feasibility study portion of the preliminary investigation:
Technical Feasibility
Operation Feasibility
Economical Feasibility
TECHNICAL FEASIBILITY:
The technical issue usually raised during the feasibility stage of the investigation includes the
following:
OPERATIONAL FEASIBILITY:
Proposed projects are beneficial only if they can be turned into information systems that
meet the organization’s operating requirements. Operational feasibility aspects of the project are
to be taken as an important part of the project implementation. Some of the important issues
raised are to test the operational feasibility of a project includes the following: -
The well-planned design would ensure the optimal utilization of the computer resources and help
improve performance status.
ECONOMIC FEASIBILITY:
A system can be developed technically and used if installed must still be a good investment
for the organization. In the economical feasibility, the development cost in creating the system is
evaluated against the ultimate benefit derived from the new systems. Financial benefits must
equal or exceed the costs. The system is economically feasible. It does not require any additional
hardware or software.
FUNCTIONAL REQUIREMENTS:
Number of Modules
After careful analysis the system has been identified to have the following modules:
1. Administrator module
2. User(Traveler) module
3. Guest user
1. ADMINISTRATOR MODULE:
This module provides administrator related functionality. Administrator manages all information
and has access rights to add, delete, edit and view the data related to places, travels, routes,
bookings, Enquiries etc.
Packages—Admin will create the packages and Manage the packages (Create, Update, delete)
Booking- Admin will responsible for manage booking. Admin can confirm and cancel a booking
of traveler.
Manage issues/ Complaints—Admin can take action on any issue /complaint raised by user
(traveler) and Put remark.
Manage pages- Admin can edit the info of all pages that are display on the website,
Dashboard- Here admin can view all count of booking, issues, Enquiries and
Sign in- Here user can login with valid username and password.
Tour history- After login, users can book any tour that will show in Tour history. User can
cancel their booking before 24 hr of travelling.
Write-use—here user can raise any issue related to booking. Cancelation etc.
3. Guest MODULE:
Guest user can visit the website and view the all content of website. Guest user can also Enquiry.
SYSTEM ENVIRONMENT
2.1 Hardware Configuration
1. Pentium IV Processor
2. 512 MB RAM
3. 40GB HDD
1. OS : Windows XP
PHPTriad installs a working PHP/MySQL server environment on Windows platforms (9x/ NT).
2.3.1.1 PHP
PHP (Hypertext Preprocessor) is a widely-used open-source server-side scripting language
programmer Rasmus Lerdorf in 1994 and has since been continuously developed by a large
community of developers.
PHP is particularly well-suited for creating dynamic web pages and web applications. It can
generate dynamic content, interact with databases, handle forms, manage sessions, create
cookies, and perform many other tasks necessary for web development. PHP code is usually
embedded directly into HTML documents, allowing developers to mix PHP code with HTML
seamlessly.
1. Open Source: PHP is free to use and has a large community of developers contributing to
3. Server-Side Scripting: PHP scripts are executed on the server, generating HTML which
is then sent to the client's browser. This allows for dynamic content generation.
4. Database Integration: PHP has built-in support for working with databases like MySQL,
PostgreSQL, SQLite, and others, making it easy to create database-driven web applications.
5. Extensive Library Support: PHP has a vast ecosystem of libraries and frameworks
that provide pre-built functions and modules for common tasks, speeding up development.
6. Simple Syntax: PHP syntax is relatively easy to learn and understand, especially for
Overall, PHP remains one of the most popular choices for web development due to its versatility,
Usage
PHP is a general-purpose scripting language that is especially suited for web development. PHP
generally runs on a web server, taking PHP code as its input and creating web pages as output. It
can also be used for command-line scripting and client-side GUI applications. PHP can be
deployed
on most web servers, many operating systems and platforms, and can be used with many
relational database management systems. It is available free of charge, and the PHP Group
provides the complete source code for users to build, customize and extend for their own use.
PHP primarily acts as a filter, taking input from a file or stream containing text and/or PHP
instructions and outputs another stream of data; most commonly the output will be HTML. It can
automatically detect the language of the user. From PHP 4, the PHP parser compiles input to
produce bytecode for processing by the Zend Engine, giving improved performance over its
interpreter predecessor. Originally designed to create dynamic web pages, PHP’s principal focus
languages that provide dynamic content from a web server to a client, such as Microsoft’s
Active Server Pages, Sun Microsystems’ JavaServer Pages, and mod_perl. PHP has also
attracted the development of many frameworks that provide building blocks and a design
structure to promote rapid application develo-pment (RAD). Some of these include CakePHP,
Symfony, CodeIgniter, and Zend Framework, offering features similar to other web application
frameworks.
The LAMP architecture has become popular in the web industry as a way of deploying web
applic- ations. PHP is commonly used as the P in this bundle alongside Linux, Apache and
As of April 2007, over 20 million Internet domains were hosted on servers with PHP installed,
and PHP was recorded as the most popular Apache module. Significant websites are written in
MyYearbook, , Digg, Wordpress and Tagged. In addition to server-side scripting, PHP can be
used to create stand- alone, compiled applications and libraries, it can be used for shell scripting,
and the PHP binaries can be called from the command line.
As with many scripting languages, PHP scripts are normally kept as human-readable source code,
even on production web servers. In this case, PHP scripts will be compiled at runtime by the PHP
engine, which increases their execution time. PHP scripts are able to be compiled before runtime
using PHP compilers as with other programming languages such as C (the language PHP and its
extensions are written in). Code optimizers aim to reduce the computational complexity of the
compiled code by reducing its size and making other changes that can reduce the execution time
with the overall goal of improving performance. The nature of the PHP compiler is such that
there are often opportunities for code optimization, and an example of a code optimizer is the
Another approach for reducing overhead for high load PHP servers is using PHP accelerators.
These can offer significant performance gains by caching the compiled form of a PHP script in
shared memory to avoid the overhead of parsing and compiling the code every time the script
runs.
2.3.1.1.2 Security
The National Vulnerability Database stores all vulnerabities found in computer software. The
overall proportion of PHP-related vulnerabilities on the database amounted to: 12% in 2003, 20%
in 2004, 28% in 2005, 43% in 2006, 36% in 2007, and 35% in 2008. Most of these PHP-related
vulnerabilities can be exploited remotely: they allow hackers to steal or destroy data from data
sources linked to the webserver (such as an SQL database), send spam or contribute to DOS
attacks using malware, which itself can be installed on the vulnerable servers.
These vulnerabilities are caused mostly by not following best practice programming rules:
technical security flaws of the language itself or of its core libraries are not frequent. Recognizing
that programmers cannot be trusted, some languages include taint checking to detect
automatically the lack of input validation which induces many issues. However, such a feature is
Hosting PHP applications on a server requires a careful and constant attention to deal with these
security risks. There are advanced protection patches such as Suhosin and Hardening-Patch,
especially designed for web hosting environments. Installing PHP as a CGI binary rather than as
an Apache module is the preferred method for added security. With respect to securing the code
itself, PHP code can be obfuscated to make it difficult to read while remaining functional.
2.3.1.1.3 Syntax
<html>
<head>
</head>
<body>
</body></html>
Note : - Code in bold letters shows the PHP code embedded within HTML
PHP only parses code within its delimiters. Anything outside its delimiters is sent directly to the
output and is not parsed by PHP. The most common delimiters are <?php and ?>, which are open
and close delimiters respectively. <script language=”php”> and </script> delimiters are also
available. Short tags can be used to start PHP code, <? or<?= (which is used to echo back a string
or variable) and the tag to end PHP code, ?>. These tags are commonly used, but like ASP-style
tags (<% or <%= and %>), they are less portable as they can be disabled in the PHP configuration.
For this reason, the use of short tags and ASP-style tags is discouraged. The purpose of these
Variables are prefixed with a dollar symbol and a type does not need to be specified in advance.
Unlike function and class names, variable names are case sensitive. Both double-quoted (“”) and
heredoc strings allow the ability to embed a variable’s value into the string. PHP treats newlines as
whitespace in the manner of a free-form language (except when inside string quotes), and
statements are terminated by a semicolon. PHP has three types of comment syntax: /* */ serves as
block comments, and // as well as # are used for inline comments. The echo statement is one of
the C style syntax. If conditions, for and while loops, and function returns are similar in syntax to
2.3.1.2 MY SQL
What is a database? Quite simply, it’s an organized collection of data. A database management
system (DBMS) such as Access, FileMaker Pro, Oracle or SQL Server provides you with the
software tools you need to organize that data in a flexible manner. It includes facilities to add,
modify or delete data from the database, ask questions (or queries) about the data stored in the
in a similar fashion to the JBoss model, MySQL was owned and sponsored by a single for-profit
firm, the Swedish company MySQLAB now a subsidiary of Sun Microsystem , which holds the
copyright to most of the codebase. The project’s source code is available under terms of the GNU
MySQL is a database.The data in MySQL is stored in database objects called tables.A table is a
collections of related data entries and it consists of columns and rows.Databases are useful when
storing information categorically. A company may have a database with the following tables:
A database most often contains one or more tables. Each table is identified by a name (e.g.
2.3.1.2.2 Queries
Before you can access data in a database, you must create a connection to the database.In PHP,
Syntax
mysqli_connect (servername,username,password);
Example
In the following example we store the connection in a variable ($con) for later use in the script.
i
2.3.1.2.2.2 Closing a Connection
The connection will be closed automatically when the script ends. To close the connection
before, use the mysqli_close() function:
<?php
//database connection
$con=mysqli_connect("localhost","root","","preschooldb");
if(mysqli_connect_errno()){
echo "Connection Fail".mysqli_connect_error();
}
?>
Syntax
To get PHP to execute the statement above we must use the mysql_query() function. This function
is used to send a query or command to a MySQL connection.
Syntax
database
mysql_errno — Returns the numerical value of the error message from previous MySQL
operation mysql_error — Returns the text of the error message from previous MySQL
server
ID
mysql_unbuffered_query — Send an SQL query to MySQL, without fetching and buffering the
phpMyAdminis an open source tool written in PHP intended to handle the administration of
MySQLover the World Wide Web. phpMyAdmin supports a wide range of operations with
MySQL.Currently it can create and drop databases, create/drop/alter tables, delete/edit/add fields,
execute any SQL statement, manage users and permissions, and manage keys on fields. while you
still have the ability to directly execute any SQL statement. phpMyAdmin can manage a whole
MySQL server (needs a super-user) as well as a single database. To accomplish the latter you’ll need
a properly set up MySQL user who can read/write only the desired database. It’s up to you to look up
phpMyAdmin can:
· create, copy, drop, rename and alter databases, tables, fields and indexes
· export data to various formats: CSV, XML, PDF, ISO/IEC 26300 - OpenDocument Text and
· using Query-by-example (QBE), create complex queries automatically connecting required tables
· create PDF graphics of your Database layout
· transform stored data into any format using a set of predefined functions, like displaying
loosely-knit group of programmers. The first version of Apache, based on the NCSA httpd Web
Core development of the Apache Web server is performed by a group of about 20 volunteer
programmers, called the Apache Group. However, because the source code is freely available,
anyone can adapt the server for specific needs, and there is a large public library of Apache add-
ons. In many respects, development of Apache is similar to development of the Linux operating
system.
The original version of Apache was written for UNIX, but there are now versions that run under OS/
2, Windows and other platforms. The name is a tribute to the Native American Apache Indian
tribe, a tribe well known for its endurance and skill in warfare. A common misunderstanding is
that it was called Apache because it was developed from existing NCSA code plus various
Apache consistently rates as the world’s most popular Web server according to analyst surveys.
Apache has attracted so much interest because it is full-featured, reliable, and free. Originally
developed for UNIX™ operating systems, Apache has been updated to run on Windows, OS/2,
and other platforms. One aspect of Apache that some site administrators find confusing —
especially those unfamiliar with UNIX-style software — is its configuration scheme. Instead of
using a point-and-click graphic user interface (GUI) or Windows Registry keys as most other
Configuration Files
Apache uses a system of three text files for managing its configuration data. All three of these
files (almost always) appear in Apache’s ./conf directory and are designed to be edited by system
administrators:
When Apache first starts, these files are processed in the order shown above. Originally, the
initial installation of Apache included default entries within each of the three files. In the most
recent versions of Apache, however, the default installation has changed. Now httpd.conf is
treated as the “master” configuration file and it contains all of the settings. Both srm.conf and
access.conf still exist in the installation, but they contain no settings and are empty except for
some comments.
Inside Httpd.conf
Traditionalyhttpd.conf contained general settings such as the ServerName and Port
80 The term “httpd” stands for HTTP Daemon. Recall that in a UNIX environment, the term
daemon refers to a type of process designed to launch at system boot and continue running for
very long periods of time. This file contains a number of other entries (technically called
directives), but for most of these,modifications are optional. Probably the most useful of these
entries is ServerAdmin.
It is recommended practice now for Apache administrators to manage their resource and security
settings from httpd.conf. Administrators of older versions of Apache can simply cut their entries
from srm.conf and access.conf and paste them into the master file. If an administrator wants to
go one step further and delete the two empty files, they should also place the following entries
in
httpd.conf to prevent Apache from attempting to access them.
INPUT DESIGN:
Input design is a part of overall system design. The main objective during the input design is as
given below:
INPUT STAGES:
Data recording
Data transcription
Data conversion
Data verification
Data control
Data transmission
Data validation
Data correction
INPUT TYPES:
It is necessary to determine the various types of inputs. Inputs can be categorized as follows:
At this stage choice has to be made about the input media. To conclude about the input
media consideration has to be given to;
Type of input
Flexibility of format
Speed
Accuracy
Verification methods
Rejection rates
Ease of correction
Storage and handling requirements
Security
Easy to use
Portability
Keeping in view the above description of the input types and input media, it can be said that most of
the inputs are of the form of internal and interactive. As
Input data is to be the directly keyed in by the user, the keyboard can be considered to be the most suitable
input device.
OUTPUT DESIGN:
Outputs from computer systems are required primarily to communicate the results of processing to
users. They are also used to provide a permanent copy of the results for later consultation. The
various types of outputs in general are:
OUTPUT DEFINITION
It is not always desirable to print or display data as it is held on a computer. It should be decided as
which form of the output is the most suitable.
For Example
OUTPUT MEDIA:
In the next stage it is to be decided that which medium is the most appropriate for the output. The
main considerations when deciding about the output media are:
Keeping in view the above description the project is to have outputs mainly coming under the
category of internal outputs. The main outputs desired according to the requirement specification
are:
The outputs were needed to be generated as a hard copy and as well as queries to be viewed on the
screen. Keeping in view these outputs, the format for the output is taken from the outputs, which
are currently being obtained after manual processing. The standard printer is to be used as output
media for hard copies.
SDLC Methodology:
This document play a vital role in the development of life cycle (SDLC) as it describes the
complete requirement of the system. It means for use by developers and will be the basic during
testing phase. Any changes made to the requirements in the future will have to go through formal
change approval process.
SPIRAL MODEL was defined by Barry Boehm in his 1988 article, “A spiral Model of Software
Development and Enhancement. This model was not the first model to discuss iterative
development, but it was the first model to explain why the iteration models.
As originally envisioned, the iterations were typically 6 months to 2 years long. Each phase starts
with a design goal and ends with a client reviewing the progress thus far. Analysis and
engineering efforts are applied at each phase of the project, with an eye toward the end goal of
the project.
The new system requirements are defined in as much details as possible. This usually involves
interviewing a number of users representing all the external or internal users and other aspects of
the existing system.
1. Evaluating the first prototype in terms of its strengths, weakness, and risks.
At the customer option, the entire project can be aborted if the risk is deemed too great. Risk
factors might involved development cost overruns, operating-cost miscalculation, or any other
factor that could, in the customer’s judgment, result in a less-than-satisfactory final product.
The existing prototype is evaluated in the same manner as was the previous prototype, and if
necessary, another prototype is developed from it according to the fourfold procedure outlined
above.
The preceding steps are iterated until the customer is satisfied that the refined prototype
represents the final product desired.
The final system is thoroughly evaluated and tested. Routine maintenance is carried on a
continuing basis to prevent large scale failures and to minimize down time.
The following diagram shows how a spiral model acts like:
Advantages:
Estimates(i.e. budget, schedule etc .) become more relistic as work progresses, because
important issues discoved earlier.
It is more able to cope with the changes that are software development generally entails.
Software engineers can get their hands in and start woring on the core of a project earlier
Performance Requirements:
The requirement specification for any system can be broadly stated as given below:
Represent attributes.
The data in the system has to be stored and retrieved from database. Designing the
database is part of system design. Data elements and data structures to be stored
have been identified at analysis stage. They are structured and put together to
design the data storage and retrieval system.
A database is a collection of interrelated data stored with minimum redundancy to
serve many users quickly and efficiently. The general objective is to make database
access easy, quick, inexpensive and flexible for the user. Relationships are
established between the data items and unnecessary data items are removed.
Normalization is done to get an internal consistency of data and to have minimum
redundancy and maximum stability. This ensures minimizing data storage required,
minimizing chances of data inconsistencies and optimizing for updates. The
MySQL database has been chosen for developing the relevant databases.
tbluser table: This table store the user personal and login details.
tbltourpackages table: This table store the tour package full details.
tblissues table: This table store the user issue details raised by the user.
tblenquiry table: This table store the user enquiry details.
The class diagram shows a set of classes, interfaces, collaborations and their
relationships.
Architecture flow :( N-Tier)
N-Tier Applications can easily implement the concepts of Distributed Application Design and
Architecture. The N-Tier Applications provide strategic benefits to Enterprise Solutions. While
2- tier, client-server can help us create quick and easy solutions and may be used for Rapid
Prototyping, they can easily become maintenance and security night mare The N-tier
Applications provide specific advantages that are vital to the business continuity of the
enterprise. Typical features of a real life n-tier may include the following:
Security
Manageability
Easy Maintenance
Data Abstraction
The above mentioned points are some of the key design goals of a successful n-tier application
that intends to provide a good Business Solution.
Definition:
Stated, an n-tier application helps us distribute the overall functionality into various tiers or layers:
Presentation Layer
Database/Data Store
Each layer can be developed independently of the other provided that it adheres to the standards
and communicates with the other layers as per the specifications. This is the one of the biggest
advantages of the n-tier application. Each layer can potentially treat the other layer as a ‘Block-
Box’. In other words, each layer does not care how other layer processes the data as long as it
sends the right data in a correct format.
Presentation
Layer
Request Response
Business
Logic
Layer
Data Link
Data Base
Also called as client layer, comprises of components that are dedicated to presenting the data to
the user. For example: Windows/Web Forms and buttons, edit boxes, Text boxes, labels, grids,
etc.
This layer encapsulates the Business rules or the business logic of the encapsulations. To have a
separate layer for business logic is of a great advantage. This is because any changes in Business
Rules can be easily handled in this layer. As long as the interface between the layers remains the
same, any changes to the functionality/processing logic in this layer can be made without
impacting the others. A lot of client-server apps failed to implement successfully as changing the
business logic was a painful process.
This layer comprises of components that help in accessing the Database. If used in the right way,
this layer provides a level of abstraction for the database structures. Simply put changes made to
the database, tables, etc do not affect the rest of the application because of the Data Access layer.
The different application layers send the data requests to this layer and receive the response from
this layer.
4. Database Layer:
This layer comprises of the Database Components such as DB Files, Tables, Views, etc. The
Actual database could be created using SQL Server, Oracle, Flat files, etc. In an n-tier
application, the entire application can be implemented in such a way that it is independent of the
actual Database. For instance, you could change the Database Location with minimal changes to
Data Access Layer. The rest of the Application should remain unaffected.
Output Screen of Project
Home Page
Tour Packages
Package Details
About Us
Privacy Policy
Terms of Use
Contact Us
Signup
Recover Password
Login
User Profile
Change Password
Tour History
Raised Tickets
Admin Panel
Login Page
Forgot Password
Dashboard
Profile
Change Password
Create Package
Manage Packages
Update Package
Manage Issues
View Issues Remarks
Manage Enquiries
Manage Page
CONCLUSION
The Tourism Management System Project is designed to provide a comprehensive solution to
manage and promote tourism activities. The system is built on PHP, and it is designed to
facilitate various tasks related to tourism, such as reservation management, itinerary planning,
tour management, and customer relationship management.
In conclusion, the project has successfully achieved its objectives of developing a reliable and
efficient tourism management system that can be used by tour operators, travel agents, and other
stakeholders in the tourism industry. The system has been designed to provide users with a
seamless and user-friendly experience, enabling them to manage and promote tourism activities
more effectively.
The system offers a range of features and functionalities that cater to the needs of different
stakeholders, such as itinerary planning, booking management, customer management, and
reporting. These features provide users with a holistic solution that can help them manage their
tourism operations more efficiently, reduce costs, and improve customer satisfaction.
Furthermore, the project has identified some areas for improvement and future development. For
instance, the system could be expanded to include features such as social media integration,
mobile app integration, and advanced reporting capabilities. These enhancements can help to
make the system more competitive and better meet the needs of the evolving tourism industry.
In conclusion, the Tourism Management System Project has provided a valuable contribution to
the tourism industry. It has demonstrated the potential of PHP as a platform for developing
reliable and efficient tourism management systems. The project has also highlighted the need for
ongoing development and innovation in the tourism industry to keep pace with the changing
needs and expectations of customers and stakeholders.
BIBILIOGRAPHY
1. www.w3schools.com
2. in.php.net
3. en.wikipedia.org/wiki/PHP
4. www.hotscripts.com/category/php/
5. www.apache.org/
6. www.mysql.com/click.php?e=35050