Currently, the demand for tourism services in our country is improving. Not only does it attract a large number of domestic tourists, but it also receives special attention from foreign tourists. However, Vietnam's tourism industry has not been able to develop strongly due to weak infrastructure, service quality and tourism management, leading to limited quality of tourism communication, making it difficult for the tourism industry to reach. client. In addition, Vietnam's tourism industry is being warned about "cutting and cutting", kidnapping tourists, inaccurate images and content, providing poor services that are far from expectations, thereby losing trust. of tourists, making Vietnam's tourism industry increasingly decline. Therefore, to solve the above problems for the tourism industry, the author chose the topic: "Building a tourism management website" to research and implement. Thanks to the diversity, prestige, speed and efficiency brought by the new system, it increases search efficiency, user experience and achieves high efficiency in the company's management and business, helping Saves a lot of time, effort and money.
INTRODUCTION
Reason for implementing the topic
Currently, the demand for tourism services in our country is improving Not only does it attract a large number of domestic tourists, but it also receives special attention from foreign tourists However, Vietnam's tourism industry has not been able to develop strongly due to weak infrastructure, service quality and tourism management, leading to limited quality of tourism communication, making it difficult for the tourism industry to reach client
In addition, Vietnam's tourism industry is being warned about "cutting and cutting", kidnapping tourists, inaccurate images and content, providing poor services that are far from expectations, thereby losing trust of tourists, making Vietnam's tourism industry increasingly decline Therefore, to solve the above problems for the tourism industry, the author chose the topic:
"Building a tourism management website" to research and implement
Thanks to the diversity, prestige, speed and efficiency brought by the new system, it increases search efficiency, user experience and achieves high efficiency in the company's management and business, helping Saves a lot of time, effort and money.
Research purpose
Successfully built a tour management website to ensure reputation, service quality as well as improve management quality for travel companies as well as for the Vietnamese tourism industry.
Subjects and scope of research
Research methods
The main methods used in the process of writing graduation essays include:
Research through reading books, newspapers, and related documents to build the theoretical basis of the topic and necessary measures to solve the problems of the topic
Research through analyzing research subjects to solve problems and design program data.
Scientific and practical significance
The research results of the graduation project bring scientific significance in applying information technology to the field of commerce in general and the tourism service industry in particular
Not only does it solve management difficulties for travel companies, but it also ensures transparency, helping users simplify location selection and payment.
Layout of the thesis
The structure of the thesis includes five chapters:
Chapter 2: Overview of the topic
Chapter 3: System analysis and design
LITERATURE REVIEW
Introduction to Tour Management Systems
Tour management systems are essential tools for modern travel and tourism businesses, facilitating the organization, booking, and management of tours and related services These systems have evolved significantly with advancements in information technology, integrating various functionalities to enhance operational efficiency and customer satisfaction.
Evolution of Tour Management Systems
The development of tour management systems can be traced back to the early use of computer systems in the travel industry Initially, these systems were primarily used for booking and reservation management However, with the advent of the internet and e-commerce, tour management systems have transformed into comprehensive platforms that manage all aspects of a travel company's operations, from customer relationship management to financial accounting and marketing.
Key Components and Functionalities
Modern tour management systems typically include a variety of components and functionalities, such as:
Booking and Reservations: Allowing customers to book tours online, manage their itineraries, and make payments
Customer Relationship Management (CRM): Managing customer interactions, feedback, and service inquiries
Content Management: Updating and managing content related to tours, destinations, hotels, and restaurants
Financial Management: Handling invoicing, payments, and financial reporting
Marketing and Promotion: Tools for promoting tours, managing advertising campaigns, and analyzing market trends
Technological Frameworks
The technological backbone of tour management systems includes various programming languages and database systems For example:
PHP: A popular server-side scripting language that is widely used for developing dynamic web applications
MySQL: An open-source relational database management system that is commonly used in conjunction with PHP for managing and querying data
HTML and CSS: Fundamental technologies for building and styling the web interface of tour management systems
JavaScript: Enhances the interactivity and functionality of web pages, often used alongside AJAX for asynchronous web applications.
Benefits and Challenges
Implementing a tour management system offers several benefits, including improved efficiency, better customer service, and enhanced data security However, there are also challenges such as the need for continuous updates, handling large volumes of data, and ensuring system security against potential cyber threats.
Case Studies and Examples
Several case studies highlight the successful implementation of tour management systems in different contexts For instance, travel companies in Vietnam have adopted these systems to streamline their operations, improve customer satisfaction, and enhance their competitive edge in the market.
Future Trends
The future of tour management systems is likely to be shaped by emerging technologies such as artificial intelligence, machine learning, and big data analytics These technologies can provide deeper insights into customer preferences, optimize operations, and create more personalized travel experiences
Conclusion
Tour management systems are indispensable tools for the modern travel industry, providing a comprehensive solution to manage various aspects of tour operations As technology continues to evolve, these systems will become even more sophisticated, offering greater efficiency and better customer experiences The continuous development and integration of new technologies will be crucial for the future success of these systems
CHOOSING THE TOOL
Introduction to PHP language
PHP (“Hypertext Preprocessor”) is a scripting programming language or a type of code mainly used to develop server-side, open source, general-purpose applications It is very suitable with the web and can be easily embedded into
HTML pages Because it is optimized for web applications, it is fast, compact, has C and Java-like syntax, is easy to learn, and has relatively shorter product building time Compared to other languages, PHP has quickly become the most popular web programming language in the world
PHP can contain text, HTML, CSS, JavaScript and PHP code PHP code is executed on the Server side, then returns results to the browser in HTML form PHP file extension is php With many advantages such as:
PHP is an open source language
PHP supports many databases (Usually PHP uses MySQL database)
PHP is a server-side programming language, we can easily embed HTML code to create a dynamic website
The programming syntax of PHP language is very similar to C language Therefore, you do not find it difficult and take a lot of time to learn
PHP4 uses POP (Procedure Oriented Programming) until PHP7 uses OOP (Object Oriented Programming) Therefore programmers can use both
PHP currently has frameworks following the MVC (Model View Controller) model Used to create large websites and easy maintenance
In the "php.ini" file, the programmer can configure to prevent unsafe links From version 5.0 PHP programming follows an object-oriented model
PHP runs independently on many operating systems: Windows, Linux and Mac
PHP connects with AJAX very strongly.
Introduction to MySQL
MySQL is an open source database management system (RDBMS for short) that operates on a client-server model With RDBMS stands for Relational Database Management System MySQL is integrated with Apache and PHP MySQL manages data through databases Each database can have many relational tables containing data MySQL also has a similar access method and code to the SQL language MySQL was released in the 90s Currently there are
2 versions, free (MySQL Community Server) and paid (Enterprise Server) With advantages: easy to use, high security, multi-feature, expandable, powerful, fast Besides, MySQL also suffers from some disadvantages such as: functional limitations, specific functions handled with MySQL (references, transactions, auditing, etc.) make MySQL less reliable than some other relational database management systems
Introduction to HTML
HTML is the abbreviation for Hyper Text Markup Language which is a hypertext markup language used to create a website A website can contain many pages and each page is referred to as an HTML document It also helps declare digital files (media) such as images, videos, and music With advantages such as: simple, easy to understand, open source and completely free, neat and consistent markup, easy integration with backend languages such as PHP, Python, Besides, HTML also has a Some disadvantages: mainly used for static websites, need to use JavaScript or PHP language, some browsers are slow to support new features
Introduction to CSS
CSS stands for Cascading Style Sheet and is a cascading styling language used to create layouts, decorations, set background colors, text colors, sizes, etc for websites Use HTML to add content and descriptions to the page Using CSS helps us create a more eye-catching website
REQUIREMENTS ANALYSIS
Introducing the topic
The tourism service industry is increasingly developing, but there are still some limitations that negatively affect the psychology of customers using tourism services such as inaccurate information, service not as good as expected, low prices The terms and conditions are not clear and transparent, the management and promotion of the company's image face many difficulties From the above situation, it is necessary to have a tour management website system to solve the tight management situation closely for travel companies and helps users - customers access, trust, and be more satisfied with the company's services through accurate information, ensuring safety and security when making payments.
Analyze and determine requirements
The tourism industry is a specific industry, so the design of a tourism management website must reflect that unique feature in every detail of the website, the website brings satisfaction to customers every time they surf the web Therefore, the following functions are needed:
Post the most popular tourist destinations and tours on the homepage
Open letter introducing the history of formation, development, functions and tasks of the company
Set up company information and address
Function to add, delete, edit and hide locations
Function to add, delete, edit and hide tours
Function to add, delete, edit, hide articles about news, restaurants, hotels View the list of tours and customers booking tours
Revenue statistics by day, week, month
Contact directly via company fanpage, email, instagram,
Send comments and feedback about the tour to the company
Book tours and pay electronically
Quick search by location, tour name, price, time, promotional tour
Website optimizes code and data to take up effective storage space and fast processing speed
User-friendly, easy-to-see interface
The functions of the website are programmed accurately, errors are not accepted
Use encryption of sensitive customer information
Ensure data security when running online websites
DESIGN OF THE APPLICATION
System actors
Agent Meaning and duties of Actor
Agent is the agent that plays the main role of the website system, who operates, manages and monitors all activities of the system
The Administration Agent can perform all functions in the administration system such as: login, tour management, article management, location management, tour booking management, customer management, Search, manage
2 A Collaborator is a person who collaborates with the Administrator to monitor system operations
Collaborators can perform functions in the admin system such as: login, article management, customer management, search, comments management, contact management,
3 Actor: Visitor visits the website and views the website's content
Visitors can search, view tours, select tours, book tours, view news, view restaurant articles, view hotel articles, give feedback, without having to
25 register , log in to your account
Visitors receive online support, can send comments about the company and contribute ideas via the company Fanpage After successfully booking a tour, the visitor will become a member of the company
Customer actor has full functionality as a guest In addition, member customers can comment and rate tours directly on the website, view the list of booked tours, update account information, etc when successfully logged into the system
Usecase diagram
Figure 5.2 Use case for location management
Figure 5.3 Use case for tour management
Figure 5.4 Usecase for article management
5.2.3 Usecase for tour booking management
Figure 5.5 Usecase for tour booking management
Figure 5.6 Usecase for comment management
Figure 5.7 Usecase for customer management
Figure 5.10 Site management usecase _ collaborator
Figure 5.11 Usecase tour management _ collaborator
Figure 5.12 Usecase tour management _ collaborator
Figure 5.13 Usecase management Admin _ collaborator
Usecase Specification
Table 0.2: Specification usecase location management
Define The administrator wants to manage the location of the system
Includes View list of locations, update locations, add new locations, delete locations and update status
Prerequisites The administrator logs into the system
Main line of events Step1:The system displays the management interface, the administrator selects the location category to manage the location
Step2:Administrators can add new locations, view location lists, update locations, delete locations, and select status for locations
The following conditions The administrator successfully adds, updates, deletes, and updates location status and can view the location list
Table 0.3: Tour management Usecase specification
Define Administrators want to manage system tours
Includes View tour list, search tour, view tour details, update tour, add new tour, delete tour, tour activity status
Prerequisites The administrator logs into the system
Main line of events Step1 The system displays the management interface, the administrator selects the tour category to manage the tour
Step2 Administrators can add new tours, view tour list, view tour details, update tours, delete tours, select tour status and search for tours
Alternate stream of events None
The following conditions The administrator successfully adds, updates, and deletes tours and can view the tour list The administrator successfully searched by tour name, by location and by tour ID The administrator changes the tour's status to hidden or visible
Table 0.4: Usecase specification for article management
Define The administrator wants to manage articles about news, restaurants, and hotels in the system
Includes View article list, edit articles, add new articles, delete articles
Prerequisites The administrator logs into the system
Main line of events Step1 The system displays the management interface, the administrator selects an article category to manage articles about news, restaurants, and hotels Step2 Administrators can add new posts, view the list of posts, edit posts, and delete posts
Alternate stream of events None
The following conditions Administrators successfully add, update, and delete posts and can view the list of posts
5.3.4 Usecase for tour booking management
Table 0.5: Usecase specification for tour booking management
Define The administrator wants to manage the system's list of booked tours
Includes View tour booking list, delete tour booking request, change tour booking status
Prerequisites The administrator logs into the system
Main line of events Step1 The system displays the management interface, the administrator selects the tour booking management category to manage the tours that have been booked
Step2 The administrator can view the tour booking list, delete tour booking requests, and select the status for the booked tour
Alternate stream of events None
The following conditions The administrator successfully deleted the tour booking request and can view the list of booked tours Admin changes the status of booked tours as paid or unpaid
Table 0.6: Usecase specification for comment management
Define The administrator wants to manage system tour comments
Includes View comment list, delete comments and search comments by customer email, search by comment ID
Prerequisites The administrator logs into the system
Main line of events Step1 The system displays the management interface, the administrator selects the comment management category to manage customer comments on tours Step2 Administrators can view the comment list, delete comments and search for comments by email or comment ID
Alternate stream of events None
The following conditions The administrator successfully deleted the comment and can view the comment list The administrator successfully searched for comments by customer email and comment ID
Table 0.7: Customer management Usecase specification
Define The administrator wants to manage customers who are members of the system
Includes View member list, delete members
Prerequisites The administrator logs into the system
Main line of events Step1 The system displays the management interface, the administrator selects the customer management category to manage member customers in the system Step2 Administrators can view the member list and delete members
Alternate stream of events None
The following conditions The administrator successfully deleted the member and can view the member list
Table 0.8: Contact management usecase specification
Define The administrator wants to manage customer contacts and inquiries about the company
Includes View contact list, delete customer contacts
Prerequisites The administrator logs into the system
Main line of events Step1 The system displays the management interface, the administrator selects the contact management category to manage contacts and inquiries from customers sent to the company
Step2 Administrator can view contact list, delete contacts
Alternate stream of events None
The following conditions The administrator successfully deleted the contact and can view the contact list
Table 0.9 Usecase specification for admin management
Define The administrator wants to manage the management accounts and collaborators of the system
Includes View the manager list, add new managers, update account information, delete accounts and change status
Prerequisites The administrator logs into the system
Main line of events Step1 The system displays the management interface, the administrator selects the admin management category to manage the system administrator and collaborator accounts
Step2 Administrators can view the manager list, add new managers, update account information, delete accounts and change status
Alternate stream of events None
The following conditions Administrators successfully add, update, and delete accounts and can view the management list The administrator successfully changed the account status
Table 0.10 Site Management Usecase Specification _ collaborator
Define The collaborator wants to manage the system's locations
Includes View list of locations, update locations, delete locations, update status
Prerequisites Collaborators log in to the system
Main line of events Step1 The system displays the management interface, collaborators select a location category to manage system locations
Step2 Collaborators can view the list of locations, update locations, delete locations, and select a status for locations
Alternate stream of events None
The following conditions Collaborators successfully update locations, delete them, update their status, and can view the location list
Table 0.11 Usecase specification for tour management _ collaborator
Define Collaborators want to manage tours of the system
Includes View tour list, search tour, view tour details, update tour, delete tour, tour operation status
Prerequisites Collaborators log in to the system
Main line of events Step1 The system displays the management interface, collaborators select the tour category to manage the tour
Step2 Collaborators can view tour lists, view tour details, update tours, delete tours, select tour status and search for tours
Alternate stream of events None
The following conditions Collaborators successfully update and delete tours and can view the tour list Collaborators successfully searched by tour name, location and tour ID Collaborators change the tour's status to hidden or visible
5.3.11 Usecase of tour booking management _ collaborator
Table 0.12 Usecase specification for tour booking management _ collaborator
UC – Tour booking manager _ collaborator
Name Tour booking manager _ collaborator
Define The collaborator wants to manage the system's list of booked tours
Includes View tour booking list, delete tour booking request
Prerequisites Collaborators log in to the system
Main line of events Step1 The system displays the management interface, the collaborator selects the tour booking management category to manage the tours that have been booked
Step2 Collaborators can view the tour booking list and delete tour booking requests
Alternate stream of events None
The following conditions The collaborator successfully deleted the tour booking request and can view the list of booked tours
Table 0.13 Usecase description for admin _ collaborator management
Define Collaborators want to manage the management and collaborator accounts of the system
Includes View manager list, add new manager, update account information, delete account
Prerequisites Collaborators log in to the system
Main line of events Step1 The system displays the management interface, collaborators select the admin management category to manage system administrator and collaborator accounts
Step2 Collaborators can view the management list, add new managers, update account information, and delete accounts
Alternate stream of events None
The following conditions Collaborators successfully add, update, and delete accounts and can view the management list
Define The visitor wants to register as a member of the system system
Prerequisites The user visits the website and is not a member of the system Event stream
Main line of events Step1 From the user interface select register
Step 2 The system displays the registration interface, requiring the user to enter personal information into the registration form
Step 3 User enters personal information then selects the register button
Step 4 The system checks whether the registration information is valid, if not A1
Step 5 The system updates the user's information
A1 Displays an invalid information message
The following conditions Walk-in guest become members of the system
Define Administrators, collaborators, and member customers want to log in to the system
Actors Administrators, collaborators, customer members
Prerequisites Already have an account
Main line of events Step1 From the user and admin interface select login
Step 2 The system displays the login interface, asking member customers or administrators and collaborators to enter account names and passwords into the login form
Step 3 Enter personal information then select the log in button Step 4 The system checks the name and password just entered If correct, it will allow access to the system
If in the main scenario the name or password is wrong, the system reports an error
Member customers can re-enter or cancel the login
The following conditions Successfully logged in and can use the functions provided by the system
Actors Walk-in guest, members
Includes Search by location name, search by tour name, search by price, search by number of days, search by promotional tour
Prerequisites Customers accessing the Website system enter the information they want to search for, and the system will automatically perform the search request Event stream
Main line of events Step1 Starts when customers access the system's website and choose to search The customer then enters the keyword and the system will check if the keyword is valid
Step2 The system starts displaying the tour information found
Step3 Customers can choose to view tour information
Invalid keyword: Customers can re-enter the keyword or cancel the search
The following conditions Customers can see the content they are looking for
Define If member customers have opinions about the tour, they will write them in the comments section
Prerequisites Customers log in to the system
Main line of events Step1 Customers choose a tour that needs to comment
Step2 The system starts displaying the screen After writing comments, customers send them to the system
Step3 The system will automatically save for checking If you have any questions, you will be answered via email
The following conditions Display comment content on the system
Define If member customers or visitors have comments, questions or need advice on any services, they will write in the contact feedback section
Actors Member customers, Walk-in guest
Main line of events B1 Customers go to the contact feedback section and fill in all information
B2 The system starts saving customer contacts and feedback for checking
B3 Collaborators or administrators will contact and respond to customers via email
Table 0.19 Usecase specification for tour booking
Define Allows member customers and visitors to book tours
Actors Member customers, Walk-in guest
Prerequisites Select the tour to book
Main line of events Step1 Customers choose a tour
Step 2 The system starts displaying the selected tour details screen
Step 3 Customers view information about the tour they need to book and choose to book the tour Step 4 Customer fills in all information and selects
Step 5 The system will automatically save for checking Customers will come to the company to pay directly
The customer fills in the order information incorrectly and the system asks to re-enter it
The following conditions Guests become member customers and can view booked tours in the list of booked tours section
Table 0.20 Electronic payment Usecase specification
Define Allows member customers and visitors to make online electronic payments for tours at the system
Actors Member customers, Walk-in guest
Prerequisites Select the tour you need to pay for
Main line of events Step 1 Customer chooses tour
Step 2 The system starts displaying the selected tour details screen
Step 3 Customers view information about the tour they need to book and choose to book the tour Step 4 Customers select "Electronic payment" then fill in all information and proceed with payment Step 5 The system will automatically save for checking
Customers who enter incorrect payment information are asked to re-enter it
The following conditions Walk-in guest become members and can view paid tours in the list of booked tours.
Database specification
Column name Data type for the column
Allow NULL Key Further description
Id Int(10) No PK Stores admin code
Name Varchar(191) Yes Store admin name
Email Varchar(191) No FK Archive admin emails Password Varchar(191) No Store admin password
Phone Varchar(191) Yes Store admin phone number
Status Tinyint(5) Yes Stores admin status
Level Tinyint(4) Yes Stores admin level
Created_at Timestamp Yes Store account creation date
Update_at Timestamp Yes Stores account update dates
Column name Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Stores user code
U_name Varchar(255) Yes Stores username
U_email Varchar(255) Yes FK Stores user emails
U_password Varchar(255) Yes Stores user passwords
U_phone Char(10) Yes Stores user phone numbers
U_address Varchar(255) Yes Stores user addresses U_avatar Varchar(255) Yes Stores user images
U_active Tinyint(4) Yes Stores user state
Created_at Timestamp Yes Store account creation date
Update_at Timestamp Yes Stores account update dates
Column name Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Store location codes
Loc_name Varchar(191) Yes Stores location names
Loc_sort Int(5) Yes Stores the location display order
Loc_image Varchar(255) Yes Store location images Loc_status Int(11) Yes Store location status
Loc_hot Tinyint(4) Yes Mark prominent locations
Created_at Timestamp Yes Stores the date the place was created
Update_at Timestamp Yes Stores location update dates
Column name Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Store tour code
T_name Varchar(255) Yes Store tour name
T_code_tour Varchar(50) Yes Stores the initialization code for the tour
T_number_guests Int(5) Yes Store the number of guests
T_images Varchar(255) Yes Store tour images
T_price Int(11) Yes Store tour prices
T_location_id Int(11) Yes FK Stores the tour's location code
T_vehicle Tinyint(50) Yes Media storage
T_time Tinyint(4) Yes Store tour times
T_shedule Text Yes Store tour schedules
T_content Text Yes Store tour content
T_sale Int(5) Yes Store tour promotion prices
Table 0.25 Book_tours table specification
T_status Tinyint(5) Yes Stores tour status
T_policy Text Yes Archive tour policy
T_time_start Datetime Yes Store tour departure time
T_time_end Datetime Yes Store tour end time
Created_at Timestamp Yes Store the tour creation date
Update_at Timestamp Yes Store tour update date
Column name Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Store tour booking code
B_tour_id Int(11) Yes FK Store tour code B_user_id Int(11) Yes FK Stores user code
B_number_guests Int(11) Yes Store the number of guests
B_start_date Datetime Yes Store start date
B_end_date Datetime Yes Stores the end date
B_price Int(5) Yes Store tour prices
B_total Int(11) Yes Store the total tour booking price
B_status Tinyint(4) Yes Store tour booking status
Created_at Timestamp Yes Store tour booking dates
Update_at Timestamp Yes Store tour booking update date
Column name Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Store post code
N_title Varchar(255) Yes Stores article titles N_admin_id Int(10) No FK Stores admin code
N_descriptions Varchar(255) Yes Stores a short description of the article
N_images Varchar(255) Yes Archive article images
N_content Text Yes Archive article content
N_slug Varchar(255) Yes Store the article name as a URL
N_type Tinyint(4) Yes Post style archive
Created_at Timestamp Yes Stores the date the article was created
Update_at Timestamp Yes Stores the date the article was updated
Column name Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Store electronic payment codes
Email Varchar(255) No Stores payer emails
Amount Double(10,2) No Stores the payment amount
Currency_code Varchar(55) No Stores the payment currency
Txn_id Varchar(255) No Store tokens to distinguish payments Payment_status Varchar(255) No Store payment status
Text No Store payment results
Created_at Timestamp No Store payment dates
Column name Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Stores comment code
C_user_id Int(11) Yes FK Stores user code
C_tour_id Int(11) Yes FK Store tour code
C_content Text Yes Archive comment content
Created_at Timestamp Yes Archived comment date
Updated_at Timestamp Yes Archives comment update date
Data type for the column
Allow NULL Key Further description
Id Int(11) No PK Store contact codes
C_name Varchar(255) Yes Stores contact names C_email Varchar(255) Yes Store contact emails C_title Varchar(255) Yes Stores contact titles
C_content Text Yes Store contact content
Created_at Timestamp Yes Stores the contact creation date
Instance of the database
CLASS DIAGRAM
DEVELOPMENT OF THE APPLICATION
Display
Figure 6.1 Admin login page interface
Figure 6.2 Admin home page interface
Figure 6.3 Location management page interface
Figure 6.4 Tour management page interface
Figure 6.5 Article management page interface
Figure 6.6 Tour booking management page interface
System testing
UI_LC_01: Check the site management page's URL header
Expectation: display the title "List of locations" when accessing
"Locations" and display the path /locations
Actual: display the title "List of locations" when accessing "Locations" and Display the path/locations
Figure 6.7 UI_LC_01: Check the title path of the site management page
UI_LC_02: Check the “List of locations” form interface
Expectation: display "Add new", "Update", "Delete", "Featured" and
Actual: display the "Add new", "Update", "Delete", "Featured" and
Figure 6.8 UI_LC_02: Check the interface of the “List of locations” form
FT_LC_01: Successfully added new location with valid location name, location, featured location, status, and image
Input: place name: Can Tho, location: 9, "hot" featured location, "show" status, image "cantho.jpg"
Expectation: the new addition is successful and the message "New addition successful" appears
Reality: the new addition was successful and the message "New addition successful" appears.
Figure 6.9 FT_LC_01: Successfully added new location with valid location name, location, featured location, status, and image (1)
Figure 6.10 FT_LC_01: Successfully added new location with valid location name, location, featured location, status, and image (2)
FT_LC_02: Display the warning "Deleted data cannot be recovered, please consider" when clicking on the delete button
Expectation: display the warning "Deleted data cannot be recovered, please consider"
Reality: displays the warning "Deleted data cannot be recovered, please consider this".
Figure 6.11 FT_LC_02: Display the warning "Deleted data cannot be recovered, please consider" when clicking on the delete button
FT_LC_03: The location is successfully deleted and displays the message “Deleted successfully”
Expectation: display the message "Delete successfully"
Actual: displays the message "Delete successfully"
Figure 6.12 FT_LC_03: The location is successfully deleted and displays the message “Deleted successfully”
6.2.2 Test the tour management function
UI_T_01: Check the title and link of the tour management page
Expectation: display the title "Tour list" when accessing "tours" and display the path /tours
Reality: display the title "Tour list" when accessing "tours" and display the path /tours.
Figure 6.13 UI_T_01: Check the title and link of the tour management page
UI_T_02: Check the “Tour List” form interface
Expectation: the form displays all titles, buttons, labels, and textboxes on the "Tour List" form
Reality: the form displays all titles, buttons, labels, and textboxes on the
Figure 6.14 UI_T_02: Check the “Tour List” form interface
UI_T_03: Check the search bar in the tour list
Expectation: display the search bar with all the buttons, textboxes, labels
Reality: displays the search bar with all the buttons, textboxes, labels.
Figure 6.15 UI_T_03: Check the search bar in the tour list
FT_T_01: Successfully added new tour location, tour title, tour code, tour price, number of customers, travel time, departure date, return date, vehicles, sale, images, schedule, policies, content valid
Input: location: Da Lat, title: Dreamy Da Lat, click to create automatic tour code at the button to create tour code, tour price: 1200000, number of customers: 2, travel time: 2 days 1 night, Departure date: May 20,
2021, return date: May 21, 2021, vehicle: Car, sale: 5%, image: dalat.jgp, schedule: test, policy: test, content: test
Expectation: successfully added and display the message "New added successfully"
Actual: successfully added and displays the message "New added successfully".
Figure 6.16 FT_T_01: Successfully added new tour location, tour title, tour code, tour price, number of customers, travel time, departure date, return date, vehicles, sale, images, schedule, policies, content valid (1)
Figure 6.17 FT_T_01: Successfully added new tour location, tour title, tour code, tour price, number of customers, travel time, departure date, return date, vehicles, sale, images, schedule, policies, content valid (2)
FT_T_02: New addition failed with tour location, tour title, tour code, tour price, number of customers being null
Input: location: , title: , tour code: , tour price: , number of customers: Expectation: adding fails and displays the message "Please fill in all information"
Actual: adding fails and displays the message "Please fill in all information"
Figure 6.18 FT_T_02: New addition failed with tour location, tour title, tour code, tour price, number of customers being null
FT_T_03: Successfully view tour details when clicking on the tour in the tour list
Expectation: successfully view detailed tour content
Reality: successfully view detailed tour content
Figure 6.19 FT_T_03: Successfully view tour details when clicking on the tour in the tour list (1)
Figure 6.20 FT_T_03: Successfully view tour details when clicking on the tour in the tour list (2)
FT_T_04: Successfully entered the tour editing page when clicking on the "Update" button
Expectation: successfully enter the tour editing page
Reality: successfully entered the tour editing page
Figure 6.21 FT_T_04: Successfully entered the tour editing page when clicking on the "Update" button
FT_T_05: Successfully edited tour with tour location, tour title, tour code, tour price, number of valid customers
Input: location: Nha Trang, title: Nha Trang summer, tour code created from the "Create tour code" button, tour price: 2000000, number of customers: 2
Expectation: successfully edit the tour
Reality: successfully edited the tour
Figure 6.22 FT_T_05: Successfully edited tour with tour location, tour title, tour code, tour price, number of valid customers (1)
Figure 6.23 FT_T_05: Successfully edited tour with tour location, tour title, tour code, tour price, number of valid customers (2)
FT_T_06: Successfully changed the tour status when selecting the
Expectation: successfully change the tour status when selecting the
"Show" "Hide" button and display the message "Update successful" Reality: successfully change the tour status when selecting the "Show"
"Hide" button and display the message "Update successful"
Figure 6.24 FT_T_06: Successfully changed the tour status when selecting the
FT_T_07: Successfully delete the tour when clicking the "Delete" button
Expectation: display a warning "Deleted data cannot be recovered, please consider" and display the message "Deleted successfully" when selecting OK
Reality: shows a warning "Deleted data cannot be recovered, please consider" and shows a message "Deleted successfully" when selecting
Figure 6.25 FT_T_07: Successfully delete the tour when clicking the "Delete" button (1)
Figure 6.26 FT_T_07: Successfully delete the tour when clicking the "Delete" button (2)
FT_T_08: Successfully searched for tours by tour name
Expectation: find and display a list of dreamy Da Lat tours
Reality: find and display a list of dreamy Da Lat tours
Figure 6.27 FT_T_08: Successfully searched for tours by tour name
FT_T_09: Successfully searched for tours by location
Expectation: find and display tour list by location in Da Lat
Reality: find and display tour lists by location in Da Lat
Figure 6.28 FT_T_09: Successfully searched for tours by location FT_T_10: Successfully searched for tours by ID Tours
Expectation: find and display tours by ID
Practical: find and display tours by ID
Figure 6.29 FT_T_10: Successfully searched for tours by ID Tours.
Edit the code according to reviewer comments
The system has some errors, for example, the time in booking tours, setting status for an order…
Student should add more logic condition checks for field input
EVALUATION
Result
The graduation project has basically completed the initially set functional goals as follows:
Grasp how to manage tourism services, build plans and divide work appropriately
Analyze the basic requirements of a tour management website system
Deploy an interaction system between customers and administrators
Manage locations; tours by location; tour booking invoices; revenue by day, week, month, year; customer information; comment; contact; articles about news, restaurants, hotels; and admin account
Implement user functions such as: log in, register, search, comment, book tours, electronic payments, contact, view news articles, restaurants, hotels, interact online Communicate with the company via chatbox.
Limitation
The topic has a few shortcomings as follows:
The favorite rating function for each tour has not been implemented
Many online payment methods cannot be combined.
Future work
The demand for tourism services is increasing, so it is necessary to add the following functions to the tourism management website:
Link your Facebook account or other social network account for registration, login and comment functions
Link with other e-wallets to expand online payment methods
Add rating and favorite functions for each tour
Add restaurant, hotel, and airline ticket booking functions for customers
CONCLUSION
Summary of Achievements
The website successfully integrates key functionalities such as tour booking, customer management, and feedback systems These features are designed to enhance user experience and streamline operations for tour operators
The project effectively employs modern web technologies including PHP, MySQL, HTML, and CSS This technological foundation ensures robust performance, security, and scalability
Special attention was given to the user interface and experience, ensuring the website is intuitive and easy to navigate for both administrators and end-users.
Challenges and Solutions
Integrating multiple functionalities into a cohesive system posed challenges These were addressed through modular design and thorough testing
Ensuring data security for user information and transactions was paramount Implementing secure coding practices and encryption mechanisms helped mitigate potential security risks
Maintaining optimal performance with growing data and user traffic required efficient database design and query optimization.
Conclusion
The project has laid a solid foundation for a functional and efficient tour management system While there were challenges along the way, the solutions implemented have paved the way for a robust and scalable application As the tourism industry continues to grow, the website will serve as a valuable tool for managing tours, enhancing customer satisfaction, and supporting business growth The lessons learned and experiences gained during this project will inform future developments and innovations in this field.