0% found this document useful (0 votes)
13 views56 pages

Rohit Report

The document describes a tourism management system project for an internship. It includes sections on the system requirements, analysis using diagrams, design, and testing. Entity relationship diagrams, use case diagrams, and activity diagrams are included to model the system. Database tables to store user, tour, and booking data are also described.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views56 pages

Rohit Report

The document describes a tourism management system project for an internship. It includes sections on the system requirements, analysis using diagrams, design, and testing. Entity relationship diagrams, use case diagrams, and activity diagrams are included to model the system. Database tables to store user, tour, and booking data are also described.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 56

GUJARAT TECHNOLOGICAL UNIVERSITY

Chandkheda, Ahmedabad
Affiliated

GYANMANJARI INSTITUTE OF TECHNOLOGY


BHAVNAGAR

A Project report On
Tourism Management
System

Under Subject Of
Internship
B.E, Semester – VIII
(Information Technology Branch)

Submitted By
Team Id: 426410

Sr.No. Name of Student Enrolment No.


1. Rohit Solanki 211290116510

Prof. Dhaval R. Chandarana


(Faculty Guide)

Prof. Dhaval R. Chandarana


(Head of Department)

Academic
Year 2023-
2024

1
GYANMANJARI INSTITUTE OF

TECHNOLOGY BHAVNAGAR

DEPARTMENT OF I.T. ENGINEERING

CERTIFICATE
This is to certify that the basic process and framework has been satisfactorily
carried out by Mr. Rohit Solanki under my guidance in the fulfillment of the
course internship during the academic year 2023-24.

Date of submission:

Faculty In-Charge Internal Examiner External Examiner


2
Student Information
Name Of
Rohit Solanki
Student:
Enrollment NO.: 211290116510
Contact No.: +91 8401837383

Email Id: [email protected]


College
Gyanmanjari Institute of Technology [129]
Name/Code:
Branch/Sem.: Information Technology / 8th

Student’s sign:

Acknowledgement

3
The internship opportunity I had with App Matters Technologies for the duration of 3 months was a
great
chance for learning and professional development. Therefore, I consider myself fortuitous as I
was given a chance to be part of them. I am very grateful for having an opportunity to meet so
many amazing people and professionals who led me through this internship.

My sincere thanks to Mr. Gaurang Pandya for giving me the chance to work in Company
for my professional growth. I would like to thank and show my deepest gratitude to Prof.
Dhaval R. Chandarana (Internal Guide) for his careful and valuable guidance which I
treasured both theoretically and practically. I also heartily thanks to my other friends
pursuing internship in other companies who greatly helped me in my work when I get
confused.

Finally, at last but not least, we would like to acknowledge and thanks in large measures to
all our fellow friend & guides for their support.

Thank you.

4
Abstract

The Tourism Management System (TMS) revolutionizes travel planning by providing a


seamless platform for booking tours. Designed for convenience and efficiency, the TMS
offers real-time availability and transparent pricing, empowering travelers to effortlessly
craft their ideal itineraries. From guided tours exploring cultural landmarks to thrilling
adventure activities, the system caters to diverse preferences and interests. Users can
browse through a wide array of options, view detailed descriptions, and make
reservations with ease.

Moreover, the TMS integrates with transportation providers to ensure reliable bus
services, allowing travelers to secure seats on various routes conveniently. With access to
schedules and flexible booking options, users can plan their journeys efficiently and stay
informed about travel arrangements.

Additionally, the TMS simplifies hotel bookings by offering a vast network of


accommodations, ranging from budget-friendly options to luxury resorts. Travelers can
explore different amenities, read reviews, and select accommodations tailored to their
preferences and budgets. The system facilitates personalized booking experiences,
allowing users to specify room preferences, duration of stay, and meal plans.

By centralizing tour bookings within a user-friendly platform, the TMS enhances the
overall travel planning process. Its comprehensive features and intuitive interface
optimize convenience and accessibility, ensuring memorable and stress-free journeys for
travelers worldwide.

List of Table
5
Table Page
Description
Number Number
Table 4.1.1 User Database 18
Table 4.1.2 Tour Database 18
Table 4.1.3 Tour Book Database 19
Table 6.4.1 User login 40
Table 6.4.2 Register new Users 40
Table 6.4.3 Traveler Search Tour 40
Table 6.4.4 Booking Request From Traveler 41
Table 6.4.5 Add New Tour 41
Table 6.4.6 Remove Tour 41
Table 6.4.7 Forgot Password 42
Table 6.4.8 Reset Password 42

List of Figures

Figure Page
Description
Number Number

6
Figure 1.1 App Matter Technologies 3
Figure 1.2 Snapshot Booking.com Interface 7
Figure 2.3.1 Agile Software Model 10
Figure 3.1 Entity-Relationship Diagram 14
Figure 3.2 Use Case Diagram of System 15
Figure 3.3 Activity Diagram of System 16
Figure 4.1.1 User Database 18
Figure 4.1.2 Tour Database 18
Figure 4.1.3 Tour Book Database 19
Figure 5.1 Coding Standard 22
Figure 5.5.1 Login Page(Traveler/Admin) 25
Figure 5.5.2 User Register Page(Traveler/Admin) 26
Figure 5.5.3 Home Page (Traveler) 27
Figure 5.5.4 Search Box(Traveler) 27
Figure 5.5.5 Admin Panel For Tour Owner(Admin) 28
Figure 5.5.6 Add Tour Page For Admin(Admin) 28
Figure 5.5.7 All Tour List Page(Admin) 29
Figure 6.1 Testing Objective 31
Figure 6.2 Resource Planning 33
Figure 6.3 Testing Automation 34
Figure 6.4 Testing Strategy 35

Symbols and Abbreviations

 ERD (Entity Relationship diagram):

7
No. Symbol Description

This symbol represents characteristics or attributes of


1.
entity

This symbol represents the object or concept


2.
that represents important data.

3. This symbol represents the relationship among entities.

4. This symbol provides link between attributes and entities.

5. This symbol represents the multivalve attributes.

This symbol represents the primary key attribute.


6.

 Activity diagram:

No. Symbol Description

1. This symbol represents the START of the activity diagram.

2. This symbol represents the END of the activity diagram.

3. This symbol is used to show the activity.

4. This symbol defines the control flow.

Swim lane defines the way to group activities


5.
performed by the same actor in activity diagram.

This symbol defines the decision making statement or


6.
condition in the activity diagram.

8
Contents

Chapter 1 Introduction

1.1 Organization Profile 3

9
1.2 Project Detail 4

1.2.1 Project Profile 4

1.2.2 Project Definition 4

1.3 Purpose 3

1.4 Scope 3

1.5 Objective 3

1.6 Technology And Literature Review 5

1.6.1 Literature Review 5

Chapter 2 About The System

2.1 System Requirement Specification 9

2.2 Feasibility Study 9

2.3 Project Planning 10

2.3.1 Project Development Approach 10

2.3.2 Project Plan 11

Chapter 3 Analysis

3.1 E-R Diagram 14

3.3 Use Case Diagram 15


3.4 Activity Diagram 16

Chapter 4 Design

4.1 Data Dictionary 17

Chapter 5 Implementation
5.1 Implementation Environment 21
5.2 Security Feature 21
5.3 Coding Standard 22
5.4 Results 24
5.4 Website Screenshots 25

10
Chapter 6 Testing
6.1 Testing Plan 31
6.2 Testing Strategy 35
6.3 Testing Methods 37
6.4 Test Cases 40
Chapter 7 Conclusion & Future Work
7.1 Conclusion 44
7.2 Future Work 44
References 46

11
CHAPTER-1

INTRODUCTION

12
 Organization Profile:

Figure 1.1: App Matter Technologies

 Name of the organization: App Matter Technologies


 External Guide: Mr. Gaurang Pandya
 Mobile Number: +91 83061 01777
 Email: [email protected]
 Work: Web and Mobile Development
 Address:
508 Swara Park Square -
Fifth Floor, Rupani Circle, Bhavnagar - 364001

13
 Project Detail
1.2.1 Project Profile
 The Tourism Management System is a sophisticated web-based platform
designed to revolutionize the tourism industry by providing seamless
management of travel-related activities and services. The objective of this
project is to develop a comprehensive system that caters to the diverse needs
of tourists and travel operators, streamlining the planning, booking, and
management processes for travel experiences.
 Simplifying the booking process for tours, accommodations, transportation,
and activities to enhance the overall travel experience.

1.2.2 Project Definition


 Providing tourists with extensive information about destinations, attractions,
and points of interest to facilitate informed decision-making and personalized
trip planning.
 The Tourism Management System (TMS) is a comprehensive software
solution aimed at revolutionizing the travel industry by providing a seamless
platform for managing and organizing travel-related activities and services.
The system's primary objective is to streamline the process of planning,
booking, and managing travel experiences for tourists while facilitating
efficient coordination and collaboration among travel operators, service
providers, and travelers.
1.3 Purpose:

It facilitates seamless booking of flights, hotels, tours, and other travel services, enabling
tourists to make reservations conveniently and securely.

TMS allows tourists to efficiently plan their trips by providing comprehensive


information about destinations, attractions, accommodations, transportation options, and
activities.

TMS offers personalized recommendations and itineraries based on travelers'


preferences, interests, and budget, enhancing their overall travel experience.

For travel operators and agencies, TMS streamlines operations by automating processes
such as booking management, itinerary planning, and customer communication.

1.4 Scope:
The scope of a Tourism Management System (TMS) encompasses various functionalities and
features aimed at improving the efficiency and effectiveness of managing travel-related activities
and services.

1.5 Objective: -
 Efficient Booking Process: Streamline the process of booking various travel services
including accommodations, transportation, tours, and activities to make it convenient and
14
hassle-free for tourists.

 Enhanced Customer Experience: Provide tourists with personalized recommendations,


itineraries, and destination information to enhance their travel experience and satisfaction.

 Optimized Resource Utilization: Optimize the utilization of resources such as hotel rooms,
transportation services, and tour guides to maximize revenue and minimize waste.

 Improved Collaboration: Foster collaboration and communication between tourism


stakeholders including travel operators, accommodation providers, and local attractions to
ensure seamless coordination and service delivery.

 Data-Driven Decision Making: Collect and analyze data on travel trends, customer
preferences, and market demand to make informed decisions and optimize business strategies.

1.6 Technology and Literature Review

1.6.1 Literature Review


 Tourism management systems have become indispensable in the modern tourism
landscape, offering tools to streamline operations and elevate customer experiences.
Initially manual, these systems have evolved significantly with technological
advancements, now encompassing functions like reservation management and
customer relationship tools. They play a pivotal role in optimizing resource
allocation, enhancing service delivery, and maximizing revenue, contributing
significantly to the efficiency and competitiveness of tourism enterprises.

 However, challenges abound in the adoption and implementation of these systems.


High initial investments, data security concerns, and the complexity of integration
pose significant hurdles for stakeholders. Strategic approaches balancing innovation
with risk management are essential to navigate these challenges effectively.

 Yet, success stories abound, showcasing how these systems have transformed
businesses and destinations. Through streamlined processes and enhanced customer
engagement, organizations have gained a competitive edge. By leveraging data
analytics and emerging technologies, they're better positioned to thrive in a dynamic
marketplace.

 Looking forward, the evolution of tourism management systems continues to promise


innovation and opportunity. Embracing emerging technologies and fostering
collaboration can help stakeholders navigate the digital landscape effectively and
sustain success in the tourism industry.

 Review of Related Technology


Booking.com:
 Booking.com stands as a beacon in the online travel industry, propelled by its cutting-edge technology.
The website's search and recommendation engine stands out, efficiently matching users with
15
accommodations based on their preferences. Its algorithm, drawing on factors like location, price, and
user reviews, ensures personalized results, simplifying the booking process for millions.

 The platform's reliance on data analytics and machine learning further enhances its performance. By
analyzing user behavior and market trends, Booking.com continually refines its algorithms, staying
abreast of changing preferences and emerging travel patterns. This data-driven approach not only boosts
recommendation accuracy but also underscores the platform's adaptability in a dynamic market.

 Booking.com doesn't stop at recommendations; it provides users with comprehensive property listings.
With detailed descriptions, photos, and reviews, travelers can make informed decisions. Moreover,
flexible booking options, including free cancellation and instant confirmation, offer added convenience
and peace of mind to users.

 At its core, Booking.com's success hinges on its user-centric design and secure payment system. The
platform's intuitive interface ensures a seamless booking experience, while robust security measures
safeguard user data and transactions. Such features have cemented Booking.com's reputation as a go-to
choice for travelers worldwide, fostering trust and loyalty among its user base.

 Looking ahead, Booking.com remains committed to innovation, continuously striving to enhance its
platform. As technology evolves, the website stands ready to embrace new advancements, ensuring it
remains at the forefront of the online travel industry. With its unwavering focus on leveraging
technology to deliver value to users, Booking.com is poised to sustain its position as a leader in the
global travel market.

16
Figure 1.2: Snapshot of Booking.com Interface

17
CHAPTER-2

About The System

18
2.1 System Requirement Specification:
 Software Requirements: -
 Operating System: Any Browser
 Front-End: HTML5, CSS3, BOOTSTRAP 5
 Back-End: PHP LARAVEL
 IDE: Visual Studio Code
 Version Control: Git and GitHub

 Hardware Requirements: -

 CPU Type: Intel Pentium 4


 RAM Size: 512 MB
 Hard disk capacity: 40 GB
 Monitor type: 15 Inch color monitor
 Mobile: Android/IOS Mobile

2.2 Feasibility Study:


 The feasibility study of the Tourism Management System involves assessing its
technical, economic, operational, market, and legal aspects to determine its viability
and suitability for implementation.
 Technical Feasibility:
 Evaluate the technical requirements and capabilities needed for developing the
Tourism Management System using HTML, CSS, and Bootstrap for frontend
development, and PHP Laravel for backend development. Assess the
availability of skilled developers proficient in these technologies and
determine the infrastructure requirements, including hosting services, server
resources, and database management (e.g., MySQL).
 Determine the compatibility of the chosen technologies with existing systems
and integration capabilities with third-party services such as booking engines,
payment gateways, and customer relationship management tools.

 Economic Feasibility:
 Conduct a cost-benefit analysis to determine the economic viability of
developing and implementing the Tourism Management System. Estimate the
initial development costs, ongoing maintenance expenses, and potential return
on investment (ROI) in terms of increased revenue, cost savings, and
improved operational efficiency.

 Operational Feasibility:
 Analyze how well the Tourism Management System aligns with the
operational processes and objectives of tourism businesses and destinations.
Assess factors such as user-friendliness, integration capabilities with existing
systems, scalability, and impact on workflow efficiency.

 Market Feasibility:
 Evaluate the market demand for the Tourism Management System among
tourism businesses, destination management organizations, and travelers.
Conduct market research to understand the needs, preferences, and pain
points of potential users.
19
 Identify competitors offering similar solutions and assess their market
positioning, strengths, and weaknesses. Determine if there is a niche or gap in
the market that the Tourism Management System can effectively address,
such as personalized travel experiences, mobile accessibility, or integrated
booking and itinerary management.

 Legal and Compliance Feasibility:


 Ensure that the Tourism Management System complies with relevant laws
and regulations governing data privacy, consumer protection, and tourism
industry standards. Assess compliance requirements related to data security,
payment processing, and customer rights.
 Identify any legal risks or regulatory hurdles that may impact the
development and operation of the system. Work with legal experts to address
compliance issues and mitigate potential liabilities, such as GDPR
compliance for handling customer data.
2.3 Project Planning:
2.3.1 Project Development Approach
 Development Approach acts a system of practices, techniques, procedures,
and rules used by those who work in a discipline. It allows us to create and
evolve the product, service or result during the project life cycle, such as
waterfall model, Iterative model, Prototyping model, Spiral model, Agile
model, etc.

 Agile Software Model:


Agile Software Model: The Agile model is an iterative and incremental approach to
software development that emphasizes flexibility, collaboration, customer feedback, and
continuous improvement. It contrasts with traditional "waterfall" methods, where
development progresses linearly through distinct phases like requirements gathering,
design, implementation, testing, and deployment.

Figure 2.3.1 (Agile Software Model)

 Agile projects are divided into small increments or iterations, typically lasting one to
four weeks. Each iteration results in a potentially shippable product increment, allowing
for frequent releases and feedback from stakeholders.
20
 Agile teams are cross-functional and self-organizing, consisting of developers, testers,
designers, and other necessary roles. Collaboration among team members and with
stakeholders is encouraged throughout the development process.

 Agile prioritizes customer satisfaction by involving customers or end-users in the


development process. Their feedback guides the direction of the project, ensuring that
the delivered product meets their needs and expectations.

 Agile projects embrace change by allowing for flexible planning and adaptation to
evolving requirements. Rather than attempting to predict all requirements upfront, Agile
teams prioritize the highest-value features and adjust their plans as new information
emerges.

2.3.2 Project Plan


 Initiation Phase:
 Define the overall project vision, goals, and objectives.
 Identify the product backlog, which includes all the features and
functionalities of the recruitment portal.
 Create the initial user stories based on the highest priority items in
the backlog.
 Set up the development environment, including necessary tools and
frameworks.
 Sprint Planning:
 Conduct sprint planning meetings to determine the goals and scope
of the upcoming sprint.
 Select user stories based on priority and feasibility.
 Break down user stories into tasks with effort estimates.
 Assign tasks to team members and define acceptance criteria.
 Development Phase:

 Implement features using chosen technologies.


 Collaborate closely with stakeholders.
 Conduct regular stand-up meetings to track progress.
 Continuously integrate and test codebase.
 Sprint Review:

 Demonstrate completed work to stakeholders.


 Gather feedback for backlog refinement.
 Use feedback to prioritize future sprints.
 Sprint Retrospective:
21
 Reflect on sprint process and identify improvements.
 Discuss successes, challenges, and action items.
 Adjust development process and team dynamics.
 Continuous Improvement:

 Iterate through sprint cycle for incremental value delivery.


 Refine backlog based on stakeholder feedback.
 Embrace change and adapt to evolving requirements.

22
CHAPTER-3

Analysis

23
3.1 E-R Diagram:

Figure 3.1: Entity-Relationship Diagram

24
3.2 Use Case Diagram:
 It is the graphical depiction of the admin and Tourist possible interaction with the system.

Figure 3.2: Use Case Diagram of System

3.3 Activity Diagram:


 Customer start the System through Request for registration.
25
 Tour Reservation System Are Use for Receive Data from Tour Owner and Other and send that
data to Tour Information System.
 Tour Information System Show all Details About the Tour For the Customer/Tourist.

Figure 3.3: Activity Diagram of System

26
CHAPTER-4

Design

27
4.1 Data Dictionary:

1. User Database:
This table is designed to store user data such as their name, email, and password hash. The
_id field serves as the unique identifier for each user in the collection.

And also it is change According to user like airline, hotel owner and tour owner.

Table 4.1.1 user_Database

2. Tour Database:
This table is designed to store tour data such as their Tour id, Organizaton, Tour Name,
Destination_From, Destination_To, Prize, Days, Nights, Meals, Hotel, Transfer, and Date. The Tour
id field serves as the unique identifier for each tour in the Database.

Table 4.1.2 Tour_Database


28
3. Tour Book Database:
This table is designed to store tour book data such as their Booking_id, Tour_id, Tour Name,
Traveler_id, Traveler Name, Book Status, Book_Date. The Booking_id, Tour id, and Traveler_id
field serves as the unique identifier for each tour book in the Database.

Table 4.1.3 Tour_Book Database

29
CHAPTER-5

Implementation

30
5.1 Implementation Environment:
 As I have used an agile development which include sprint and development of project
and I am using the PHP Laravel Technology so based on this I have define some
points of implementation environment.

 Front-end:
 Technologies:
 HTML, CSS, and JavaScript for building the user interface and user
interactions.
 Bootstrap as the CSS Framework for creating responsive design for all the
devices

 Back-end:
 Technologies:
 PHP is used as the server-side scripting language. Laravel serves as the PHP
framework for building web applications and APIs.
 Database:
 MySQL will be used as the primary database for storing and managing Tour,
Hotel and airline data.

 Additional Considerations:
 Security measures will be implemented to ensure user authentication,
authorization, and data protection.
 The chosen technologies and platforms are scalable to accommodate a
growing user base and data volume.

5.2 Security Feature:


 Authentication and Authorization:

 PHP in-build Features:


Laravel provides a robust authentication system out of the box. You can use `php artisan
make:auth` command to scaffold basic login and registration views and controllers. This will
create routes and views for login, registration, and password reset.

Laravel's authorization features are based on policies and gates. You can create policies to define
the authorization logic for each model. For example, you can create a `TourPolicy` to define who
can view, create, update, or delete tours.

 **CSRF Protection**: Laravel provides built-in CSRF protection to secure your forms. You can
use `@csrf` directive in your forms to include a CSRF token.

31
 Authentication Middleware: Laravel middleware allows you to filter HTTP requests entering your
application. You can use middleware to authenticate users before they access certain routes.
Laravel's `auth` middleware ensures that only authenticated users can access specific routes or
controllers.

 JWT (JSON Web Tokens): If you want to implement token-based authentication, you can use
packages like Laravel Passport or Laravel Sanctum to issue JWT tokens for API authentication.

 Validation: Laravel provides powerful validation rules to validate user input. You can use validation
rules to ensure that user input meets certain criteria before processing it.

5.3 Coding Standard:

 A coding standard gives a uniform appearance to the codes written by different


engineers.
 It improves readability, and maintainability of the code and it reduces complexity
also.
 It helps in code reuse and helps to detect error easily.
 It promotes sound programming practices and increases efficiency of the
programmers.
 The following are some representative coding standards:

Figure 5.1: Coding Standard


 General:
 Indentation: Use consistent indentation (typically 2 or 4 spaces) to improve
code readability.
 Naming Conventions: Use camelCase for variable and function names (e.g.,
32
candidateName, createJobPosting). Use Pascal Case for class names (e.g.,
Job, Candidate).
 Line Length: Maintain a reasonable line length (around 80 characters) to
enhance readability and avoid horizontal scrolling.
 Comments: Include clear and concise comments to explain complex logic or
non-obvious code sections.

 Front-end :

 Component Structure:
Organize the project's PHP files and directories in a clear hierarchy,
emphasizing parent-child relationships where applicable. For instance, group
related controllers, models, and views within appropriate directories.

Follow Naming Conventions:


Adhere to naming conventions for PHP files, classes, and functions.
For example, name controllers, models, and views descriptively (e.g.,
TourController.php, BookingModel.php).

 State Management (if applicable):


If employing state management solutions like Laravel's session or
cache, adhere to recommended practices for organizing and managing session
data or cached information.

 Blade Template Formatting:


Maintain consistent formatting for Blade templates, ensuring proper
structure and indentation. Utilize self-closing tags when appropriate,
especially for elements without inner content (e.g., <input type="text" />).

 Back-end (PHP Laravel):

 File Structure:
Organize the project's PHP files into clearly defined directories,
reflecting MVC (Model-View-Controller) architecture. For instance, place
models, controllers, and routes in their respective directories within the
Laravel project structure.

 Error Handling:
Implement consistent error handling mechanisms throughout the
application to gracefully manage potential errors during API requests. Utilize
Laravel's exception handling features, such as the Handler class, to catch and
process exceptions.

Ensure meaningful error messages are returned along with appropriate


HTTP status codes to provide clear feedback to API consumers.

 Benefits of Coding Standards:


 Improved Code Readability: Consistent formatting and naming conventions
make code easier to understand for everyone working on the project.
 Reduced Errors: Enforced coding styles can help prevent typos and syntax
33
errors.
 Team Collaboration: Consistent coding practices facilitate collaboration
among developers working on the project.

5.4 Results:

 The project takes shape during the implementation phase. This phase involves the
construction of the actual project result. Programmers are occupied with encoding,
designers are involved in developing graphic material, contractors are building, the
actual reorganization takes place. It is during this phase that the project becomes
visible to outsiders, to whom it may appear that the project has just begun. The
implementation phase is the doing phase, and it is important to maintain the
momentum.
 At the end of the implementation phase, the result is evaluated according to the list of
requirements that was created in the definition phase. It is also evaluated according to
the designs. For example, tests may be conducted to determine whether the web
application does indeed support Explorer 5 and Firefox 1.0 and higher. It may be
determined whether the trim on the building has been made according to the
agreement, or whether the materials that were used were indeed those that had been
specified in the definition phase.
 This phase is complete when all of the requirements have been met and when the
result corresponds to the design.

34
5.5 Website Screenshots

Figure 5.5.1 Login Page

35
Figure 5.5.2 User Register Page

36
Figure 5.5.3 Home Page for Tourist

Figure 5.5.4 Search box for Tourist

37
Figure 5.5.5 Admin panel for Tour Owner

Figure 5.5.6 Add Tour Page for Admin

38
Figure 5.5.7 All Tour List Page

Figure 5.5.8 Tour Owner Account Setting Page

39
CHAPTER-6

Testing

40
6.1 Testing Plan:
 A test plan is a document that sets out the scope, approach, and schedule of intended
testing activities. The test plan may also list the resources the software tester needs to
function effectively.
 The test plan usually includes the following information:
 The overall objective of the testing effort.
 A detailed outline of how testing will be conducted (the test approach).
 The features, applications, or components to be tested.
 Detailed scheduling and resource allocation plans for testers and developers
throughout all stages of testing.

 What are the objectives of a software test plan?


The primary objective for a test plan is to produce documentation that
describes how the tester will verify that the system works as intended. The document
should describe what needs to be tested, how it will be tested, and who’s responsible
for doing so.
By writing up a test plan, all team members can work in unison and
communicate their roles to one another. You should consider creating some SMART
objectives for your test plan.

Figure 6.1: Testing Objective

41
 How to write a Test Plan?
You already know that making a Test Plan is the most important task of Test Management
Process
Following are the 14 essential things to include in your software test plan as part of the QA
process.

 Learn about the software-


Before testing starts, it's important to learn everything you can about the software.
Ask questions about how it was developed to learn about its intended purpose, how it
works, and to garner information that might help you understand its functionality.
By understanding your software properly, you can create test cases that are relevant
and useful for testing your product.

 Define the scope of testing-


There’s no point in creating testing documents that are longer than the product itself.
Before anything else, establish what exactly will be tested during the process, which
modules or functions need to be covered in detail, and any other essential aspects you
should know about.

 Create Test Cases-


One of the main tasks when developing a software testing document is creating test
cases. A test case is a document that describes the steps taken to carry out your testing.
It should include information such as:
What needs to be tested
 How it will be tested
 Who will do the testing
 Expected results

 Develop a Test Strategy-


The test strategy defines how you plan to implement testing. Your testers should all be
working off the same game plan, so make sure every member of the team is aware of
what they're supposed to be doing at any given time.

 Define the Test Objective-


Each test case should be linked to a test objective. The objective ensures every action
is relevant and contributes toward making your software more valuable for customers.
Test objectives can include things like:
 Testing known features
 Testing newly implemented features
 Performing exploratory tests
 Ensuring stability throughout the product lifecycle

 Choose Testing tools-


You'll need to make sure you have the right software testing solution to perform your
testing activities. Some of these tools might be software-based, while others may
require physical resources like test machines. It's important to choose appropriate tools
for each specific job and not to rely on a one-size-fits- all solution.
 Find bugs early-
Leave time in your planning document for 'bug fixing' sessions. These allow you to
identify problems with the software early on before they become too problematic or
expensive to fix. This makes them easier and cheaper to tackle. Check out any app
42
security measures, use every feature, and seek out what doesn't work well.

 Define your Test Criteria-


This should be part of the test case, but it's good to break it down separately. Test
criteria are essentially your objectives broken down into smaller parts. They include
specific information about how each objective will be met, which helps you track your
testing progress.
Suspension criteria are criteria that need to be met before testing can stop. For
example, you may want to suspend testing if a certain number of bugs have been
found or if the software is unable to run due to performance issues.
Exit criteria are criteria that need to be met before testing can finish. For example, the
test case should finish once each objective has been met and all bugs have been
resolved.

 Resource Planning-
In your software testing document, include a resource plan that lists the number of
people required for the testing process. This should detail what each person's role is
and any training they'll require to fulfil it effectively.

Figure 6.2: Resource Planning

 Plan your Test Environment-


In your test plan, include information about the environment where testing will
take place, such as:
 Test hardware required for product testing.
 Sizing requirements for software and servers.
 Platforms supported by the product.
 Other essential information related to the environment that might
affect your testing process.
 Plan test team logistics-
Test management is one of the most important parts of implementing process. If you're
not able to communicate with your testers effectively, their progress will suffer and
your testing document won't be as useful as it could be.

 Schedule & Estimation-


In your test plan, include a schedule that allows you to outline specific testing
43
milestones and deadlines. Milestones may include the initial release of the product,
internal testing sessions, public beta tests, or any other key points in time where your
team needs to focus their efforts on testing.

 Test Deliverables-
Your testing document should include a list of all the deliverables required for testing.
These should be linked to the steps in your schedule so everyone knows exactly when
they need to be ready for action.

 Test Automation -
If your software is particularly complex and requires a vast number of test cases, you
may want to consider software test automation.
Automating the process means testers can accomplish more in less time, which boosts
productivity and significantly reduces the overall cost of testing. You might even be
able to utilize a mobile bot to speed up testing activities.

Figure 6.3: Testing Automation


6.2 Testing Strategy:
 Software Testing is a type of investigation to find out if there is any default or error
present in the software so that the errors can be reduced or removed to increase the
quality of the software and to check whether it fulfils the specifies requirements or
not.
 The overall strategy for testing software includes:

44
Figure 6.4: Testing Strategy

 Before testing starts, it’s necessary to identify and specify the requirements of the product
in a quantifiable manner.
Different characteristics quality of the software is there such as maintainability
that means the ability to update and modify, the probability that means to find and
estimate any risk, and usability that means how it can easily be used by the customers
or end-users. All these characteristic qualities should be specified in a particular order
to obtain clear test results without any error.

 Specifying the objectives of testing in a clear and detailed manner.


Several objectives of testing are there such as effectiveness that means how
effectively the software can achieve the target, any failure that means inability to fulfil
the requirements and perform functions, and the cost of defects or errors that mean the
cost required to fix the error. All these objectives should be clearly mentioned in the
test plan.
 For the software, identifying the user’s category and developing a profile for each
user.
Use cases describe the interactions and communication among different
classes of users and the system to achieve the target. So as to identify the actual
requirement of the users and then testing the actual use of the product.

 Developing a test plan to give value and focus on rapid-cycle testing.


Rapid Cycle Testing is a type of test that improves quality by identifying and
measuring the any changes that need to be required for improving the process of
software. Therefore, a test plan is an important and effective document that helps the
tester to perform rapid cycle testing.

45
 Robust software is developed that is designed to test itself.
The software should be capable of detecting or identifying different classes of
errors. Moreover, software design should allow automated and regression testing
which tests the software to find out if there is any adverse or side effect on the
features of software due to any change in code or program.

 Before testing, using effective formal reviews as a filter.


Formal technical reviews are the technique to identify the errors that are not
discovered yet. The effective technical reviews conducted before testing reduces a
significant amount of testing efforts and time duration required for testing software so
that the overall development time of software is reduced.

 Conduct formal technical reviews to evaluate the nature, quality or ability of the
test strategy and test cases.
The formal technical review helps in detecting any unfilled gap in the testing
approach. Hence, it is necessary to evaluate the ability and quality of the test strategy
and test cases by technical reviewers to improve the quality of software.

 For the testing process, developing a approach for the continuous development.
As a part of a statistical process control approach, a test strategy that is already
measured should be used for software testing to measure and control the quality
during the development of software.
6.3 Testing Methods:
 Software Testing Methodologies are the various strategies or approaches used to test
an application to ensure it behaves and looks as expected. These encompass
everything from front to back-end testing, including unit and system testing.
 Functional vs. Non-functional Testing:
 The goal of utilizing numerous testing methodologies in your development
process is to make sure your software can successfully operate in multiple
environments and across different platforms.
 These can typically be broken down between functional and non-functional
testing.
 Functional testing involves testing the application against the business
requirements.
 It incorporates all test types designed to guarantee each part of a piece of
software behaves as expected by using uses cases provided by the design team
or business analyst.
 These testing methods are usually conducted in order and include:
 Unit testing
 Integration testing
 System testing
 Acceptance testing

 Non-functional testing methods incorporate all test types focused on the


operational aspects of a piece of software. These include:
 Performance testing
 Security testing
 Usability testing
 Compatibility testing
46
 The key to releasing high quality software that can be easily adopted by your
end users is to build a robust testing framework that implements both
functional and non-functional software testing methodologies.

 Unit Testing-
Unit testing is the first level of testing and is often performed by the
developers themselves. It is the process of ensuring individual components of
a piece of software at the code level are functional and work as they were
designed to. Developers in a test-driven environment will typically write and
run the tests prior to the software or feature being passed over to the test team.
Unit testing can be conducted manually, but automating the process will speed
up delivery cycles and expand test coverage. Unit testing will also make
debugging easier because finding issues earlier means they take less time to
fix than if they were discovered later in the testing process. Test Left is a tool
that allows advanced testers and developers to shift left with the fastest test
automation tool embedded in any IDE.

 Integration Testing-
After each unit is thoroughly tested, it is integrated with other units to
create modules or components that are designed to perform specific tasks or
activities. These are then tested as group through integration testing to ensure
whole segments of an application behave as expected (i.e, the interactions
between units are seamless). These tests are often framed by user scenarios,
such as logging into an application or opening files. Integrated tests can be
conducted by either developers or independent testers and are usually
comprised of a combination of automated functional and manual tests.

 System Testing-
System testing is a black box testing method used to evaluate the
completed and integrated system, as a whole, to ensure it meets specified
requirements. The functionality of the software is tested from end-to-end and
is typically conducted by a separate testing team than the development team
before the product is pushed into production.

 Acceptance Testing-
Acceptance testing is the last phase of functional testing and is used to
assess whether or not the final piece of software is ready for delivery. It
involves ensuring that the product is in compliance with all of the original
business criteria and that it meets the end user’s needs. This requires the
product be tested both internally and externally, meaning you’ll need to get it
into the hands of your end users for beta tesing along with those of your QA
team. Beta testing is key to getting real feedback from potential customers and
can address any final usability concerns.

 Performance Testing-
Performance testing is a non-functional testing technique used to
determine how an application will behave under various conditions. The goal
is to test its responsiveness and stability in real user situations. Performance
testing can be broken down into four types:
47
 Load testing is the process of putting increasing amounts of
simulated demand on your software, application, or website to
verify whether or not it can handle what it’s designed to handle.
 Stress testing takes this a step further and is used to gauge how
your software will respond at or beyond its peak load. The goal of
stress testing is to overload the application on purpose until it
breaks by applying both realistic and unrealistic load scenarios.
With stress testing, you’ll be able to find the failure point of your
piece of software.
 Endurance testing, also known as soak testing, is used to analyze
the behavior of an application under a specific amount of simulated
load over longer amounts of time. The goal is to understand how
your system will behave under sustained use, making it a longer
process than load or stress testing (which are designed to end after a
few hours). A critical piece of endurance testing is that it helps
uncover memory leaks.
 Spike testing is a type of load test used to determine how your
software will respond to substantially larger bursts of concurrent
user or system activity over varying amounts of time. Ideally, this
will help you understand what will happen when the load is
suddenly and drastically increased.
 Security Testing-
With the rise of cloud-based testing platforms and cyber-attacks, there
is a growing concern and need for the security of data being used and stored in
software. Security testing is a non-functional software testing technique used
to determine if the information and data in a system is protected. The goal is to
purposefully find loopholes and security risks in the system that could result in
unauthorized access to or the loss of information by probing the application
for weaknesses. There are multiple types of this testing method, each of which
aimed at verifying six basic principles of security:
 Integrity
 Confidentiality
 Authentication
 Authorization
 Availability
 Non-repudiation

 Usability Testing-
Usability testing is a testing method that measures an application’s
ease- of-use from the end-user perspective and is often performed during the
system or acceptance testing stages. The goal is to determine whether or not
the visible design and aesthetics of an application meet the intended workflow
for various processes, such as logging into an application. Usability testing is a
great way for teams to review separate functions, or the system as a whole, is
intuitive to use.

 Compatibility Testing-
Compatibility testing is used to gauge how an application or piece of
software will work in different environments. It is used to check that your
product is compatible with multiple operating systems, platforms, browsers, or
48
resolution configurations. The goal is to ensure that your software’s
functionality is consistently supported across any environment you expect
your end users to be using.

6.4 Test Cases:

Test case of User Login

Test Test Scenario Test Steps Expected Results Actual Pass/


49
case Results Fail
ID
T201 Check User Login i. Open Website User should login and As Pass
with valid Data ii. Enter valid user email and password. redirected to expected,
iii. Click on Login dashboard.

T202 Check User Login i. Open Website User should not login As Pass
with invalid Data ii. Enter valid user mail and password. and redirected to expected,
iii. Click on login. dashboard.

Table 6.4.1 User Login

Test case of Register new User

Test Test Scenario Test Steps Expected Results Actual Pass/


case Results Fail
ID
T301 Register new User iv. Click on Register button New User Register and As Pass
v. Fill all require Details will get added in expected,
vi. Click on Register Button to Register database and get
new User successful toast.

Table 6.4.2 Register new User

Test case of Search Tour

Test Test Scenario Test Steps Expected Results Actual Pass/


case Results Fail
ID
T401 Search tour by i. Login and then Traveler on Home Traveler Search Tour As Pass
Traveler page. According there expected,
ii. File all details on Tour Search box. Requirement
iii. Click on Search
iv. Show all Tour According to details

Table 6.4.3 Traveler Search Tour

Test case of Booking Request from Traveler

Test Test Scenario Test Steps Expected Results Actual Pass/


case Results Fail
ID
50
T501 Book Request from i. In Admin panel go Dashboard page Traveler Either approved As Pass
Traveler and approve ii. Admin see a request of booking a tour or canceled booking expected,
and cancel by Tour iii. Admin can action of request according according to Tour
owner to their requirement. Owner

Table 6.4.4 Booking Request from Traveler

Test case of Add Tour by Tour Owner

Test Test Scenario Test Steps Expected Results Actual Pass/


case Results Fail
ID
T601 Add New Tour & i. Login with valid details by Tour Add new Tour and As Pass
Update owner. update the tour details expected,
ii. Fill all details of new Add Tour on according to
Admin Panel requirements
iii. Click on Add Tour.
iv. If Tour Owner Update tour then
update section and delete and
update tour.

Table 6.4.5 Add new tour


Test case of Remove Tour

Test Test Scenario Test Steps Expected Results Actual Pass/


case Results Fail
ID
T701 Remove Tour i. In admin panel go all tour page. Remove Tour Because As Pass
ii. Select Tour and last of the table delete of Requirement of expected,
button. Tour Owner
iii. Click on Delete button.

Table 6.4.6 Remove Tour

Test case of Forgot Password

Test Test Scenario Test Steps Expected Results Actual Pass/


case Results Fail
51
ID
T801 Forgot Password i. Click on Forgot Password link. Reset password link As Pass
ii. Add user Registered Email will be created and expected,
iii. Click on Sent. sent email to user and
got successful toast.

Table 6.4.7 Forgot Password


Test case of Reset Password

Test Test Scenario Test Steps Expected Results Actual Pass/


case Results Fail
ID
T901 Reset Password i. Click on reset Button got in email New Password will be As Pass
ii. Set password and Confirm Password hashed and stored in expected,
iii. Click on Reset. database and user got
redirected to login
page

Table 6.4.8 Reset Password

52
CHAPTER-7

Conclusion & Future Work

7.1 Conclusion
 Key Achievements:
 Enhanced Workflow Efficiency: The implementation of automated booking,
scheduling, and management processes has significantly increased the
53
efficiency of tour management operations. Tasks that were previously manual
and time-consuming are now streamlined, saving time and resources for tour
organizers.
 Improved Tour Management: The centralized platform provides tour
organizers with tools for efficient tour creation, itinerary management, and
communication with customers. This has led to better organization and
coordination of tours, resulting in improved customer satisfaction.
 Streamlined Booking Process: The booking process has been simplified,
allowing customers to easily browse available tours, select their preferences,
and make bookings. This has resulted in a smoother booking experience for
customers and increased conversion rates.
 Enhanced Security: The system incorporates robust security measures such as
encrypted data transmission, secure user authentication, and access control
mechanisms. These measures ensure the security and integrity of sensitive
customer information and payment details.
 Scalability and Maintainability: The chosen technologies and architectural
approach support scalability and maintainability. The modular design and use
of frameworks such as Laravel facilitate easy maintenance and future
enhancements to the system as the business grows.
7.2 Future Work
 Integration with Travel Platforms: Integrate with popular travel platforms to expand the range of
available services and attract a wider customer base. This integration would enable users to access a
variety of travel options such as hotel booking, flight booking, bus booking, and vehicle rental from
a single platform.

 Social Media Integration: Explore the integration of social media platforms such as Facebook and
Instagram to enhance customer engagement and marketing efforts. This integration could include
features for sharing travel experiences, user-generated content, and promotions.

 Recommendation Engine: Implement AI algorithms to analyze customer preferences and behavior


to provide personalized travel recommendations. This could include suggestions for destinations,
activities, and accommodations based on user interests and past bookings.

 Dynamic Pricing: Utilize AI to dynamically adjust prices based on demand, availability, and other
factors. This would enable the system to optimize pricing strategies and maximize revenue.

 Mobile Applications: Develop mobile applications for both customers and travel agents to facilitate
on-the-go booking and management of travel plans. This would enhance accessibility and
convenience for users.

 Onboarding Management: Extend the platform to include features for managing the onboarding
process of travel partners such as hotels, airlines, and rental agencies. This could include document
collection, contract management, and communication tools.

 Reporting and Analytics: Implement reporting and analytics tools to provide insights into booking
trends, customer demographics, and revenue performance. This data can be used to make data-driven
decisions, optimize marketing strategies, and improve customer satisfaction.
54
References
 https://studentprojectguide.com/project-report/software-testing/test-cases-for- employee-
payroll/
 www.geeksfoígeeks.oíg
55
 https://lucid.app/documents#/documents?folder_id=recent
 https://docs.google.com/spreadsheets/
 www.javatpoint.com
 https://www.w3schools.com/mysql
 https://www.scaler.com/topics/cpp/cpp-coding-standards/
 https://www.creative-tim.com/product/argon-dashboard-react
 https://www.youtube.com/watch?v=VKXnSwNm_lE
 https://cloudinary.com/
 https://dbdiagram.io/
 https://laravel.com/docs/5.1/quickstart
 https://laravel.com/

56

You might also like