0% found this document useful (0 votes)
12 views63 pages

Tour and Travel Management System.

Uploaded by

Titus Titus
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views63 pages

Tour and Travel Management System.

Uploaded by

Titus Titus
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 63

Bahir Dar University

Bahir Dar institute of technology


Faculty of Computing
Industrial project on“Tours and Travel Management System for Ethio
Target Tours and Travel”
Submitted to the faculty of computing in partial fulfillment of the
requirements for the degree of Bachelor of Science inInformation System
Group Members
Name ID
1. AbinetKassahun 1207448
2. Daniel Birhanu 1201360
3. Daniel Endayih 1201363
4. DagimawiDemelash 1201348

Advisor: Mr. Ephream D.

2023
Bahir Dar University, Bahir Dar Institute of Technology
Tour and Travel Management System | 2015

DECLARATION
The project is our own and has not been presented for a degree in any other university, and all the
sources of material used for the project have been duly acknowledged.

AbinetKassahun
------------------------------------- ----------------------------------
Name
Signature

Daniel Birhanu
------------------------------------- ----------------------------------
Name Signature

Daniel Endayih
------------------------------------- ----------------------------------
Name Signature

DagimawiDemelash
------------------------------------- ----------------------------------
Name Signature

Faculty: Computing
Program: Degree
Project Title: Tourism Management system
This is to certify that I have read this project and that in my supervision and the students’
performance, it is fully adequate, in scope and quality, as a project for the degree of Bachelor of
Science.

Mr. Ephream D.
------------------------------------- ----------------------------------
Name Signature

Examining committee members signature Date


1. Examiner __________________ ______________ ______________
2. Examiner __________________ ______________ ______________
It is approved that this project has been written in compliance with the formatting rules laid down by
the faculty.

I
Tour and Travel Management System | 2015
ROLES AND RESPONSIBILITY
Table1.1: Roles and Responsibility table

List of Tasks List of members

Abinet K. Daniel B. Daniel E. Dagmawi D.

Requirement Gathering ✔ ✔

Use case Diagram ✔ ✔ ✔

Business Rule Documentation ✔ ✔ ✔

Activity Diagrams ✔ ✔ ✔

Sequence Diagrams ✔ ✔ ✔

State Diagram ✔ ✔ ✔

User Interface Design and Prototype ✔ ✔

Component Diagram ✔ ✔

Deployment Diagram ✔ ✔

II
Tour and Travel Management System | 2015
ACKNOWLEDGMENT
First and foremost, we would like to thank Almighty God for the strength he has given us throughout
our lives and on this project; nothing would be possible without GOD's assistance. Second, we would
like to express our deep gratitude to our families and all faculty members who taught us various
courses over the last four years, as well as to our advisor, Mr. Ephream D, for his unwavering support
on our undergraduate final project, as well as his patience, motivation, and vast knowledge. His
advice was invaluable during the creation of this text. Then we'd like to thank our friends for their
assistance in completing this project documentation in this period of time. Last but not least, we want
to express our heartfelt gratitude and appreciation to everyone who was not listed here but whose
contributions were invaluable in making it happen.

III
Tour and Travel Management System | 2015
LIST OF ACRONYMS
Table1.2: List of Acronyms

Abbreviation Meaning

HTML Hyper Text Markup Language

CSS Cascading Style Sheet

Vscode Visual Studio code

JSON JavaScript Object Notation

OOAD Object-oriented analysis design

IV
Tour and Travel Management System | 2015
LIST OF FIGURES
Figure 1: Use case Diagram .............................................................................................................. 10
Figure2: State Diagram for User ........................................................................................................ 29
Figure 3: Create account Activity Diagram ......................................................................................... 29
Figure 4: See Tour guide information activity diagram ....................................................................... 30
Figure 5: Cancel booking Activity Diagram ........................................................................................ 30
Figure6: Booking package Activity Diagram ....................................................................................... 31
Figure 7: See booking list Activity Diagram ........................................................................................ 31
Figure 8: Manage Tour Guide ............................................................................................................ 32
Figure 9: See tourist information Activity Diagram ............................................................................. 32
Figure 10: Update site information Activity Diagram........................................................................... 33
Figure 11: Car rent Activity Diagram .................................................................................................. 33
Figure 12: Update account Activity Diagram ...................................................................................... 34
Figure 13: Create account Sequence Diagram .................................................................................. 35
Figure 14: See booking list Sequence Diagram ................................................................................. 35
Figure 15: Manager Tour guide Sequence Diagram .......................................................................... 36
Figure 16: Manager Tour Sequence Diagram .................................................................................... 37
Figure17: User Payment Service Sequence Diagram ........................................................................ 38
Figure18: Conceptual Class Diagram ................................................................................................ 42
Figure19: User Interface Prototype .................................................................................................... 43
Figure 20: Architectural Design Diagram ........................................................................................... 44
Figure 21: Component Diagram ......................................................................................................... 45
Figure 22: Deployment Diagram ........................................................................................................ 47
Figure23: Class Diagram ................................................................................................................... 48
Figure 24: User Interface Design ....................................................................................................... 51

V
Tour and Travel Management System | 2015
LIST OF TABLES
Table1.1: Roles and Responsibility table ............................................................................................. II
Table1.2: List of Acronyms ................................................................................................................. IV
Table 2.1: Use Case Description for Create Account ......................................................................... 10
Table 2.2: Use Case Description for Update Account ........................................................................ 11
Table 2.3: Use Case Description for Delete Account ......................................................................... 12
Table 2.4: Use Case Description for Login Account ........................................................................... 13
Table 2.5: Use Case Description for Insert Tour package .................................................................. 13
Table 2.6: Use Case Description for Update Tour package ............................................................... 14
Table 2.7: Use Case Description for Insert site information ................................................................ 15
Table 2.8: Use Case Description for Update site information ............................................................. 16
Table 2.9: Use Case Description for Register tour guide ................................................................... 17
Table 2.10: Use Case Description for Update tour Guide information ................................................ 18
Table 2.11: Use Case Description for Assign tour guide .................................................................... 18
Table 2.12: Use Case Description for see feedback .......................................................................... 19
Table 2.13: Use Case Description for see assigned place ................................................................. 20
Table 2.14: Use Case Description for See site information ................................................................ 20
Table 2.15: Use Case Description for Search site information ........................................................... 21
Table 2.16: Use Case Description for Search hotel information ......................................................... 22
Table 2.17: Use Case Description for Booking tour package ............................................................. 22
Table 2.18: Use Case Description for Select hotel ............................................................................. 23
Table 2.19: Use Case Description for Select site ............................................................................... 24
Table 2.20: Use Case Description for Rent car service ...................................................................... 25
Table 2.21: Use Case Description for write feedback......................................................................... 26
Table 2.22: Use Case Description for Cancel booking ....................................................................... 26
Table 2.23: Business rule table .......................................................................................................... 27
Table 24: Actor identifier table .......................................................................................................... 28
Table2.25: Tourist CRC ..................................................................................................................... 40
Table2.26: Admin CRC ...................................................................................................................... 40
Table2.27: Feedback CRC ................................................................................................................ 40
Table2.28: Tour Guide CRC .............................................................................................................. 41
Table2.29: Tour package CRC .......................................................................................................... 41
Table2.30: Booking CRC ................................................................................................................... 41
Table2.31: Payment CRC .................................................................................................................. 41

VI
Tour and Travel Management System | 2015

Table of Content
DECLARATION .................................................................................................................................. I
ROLES AND RESPONSIBILITY ........................................................................................................ II
ACKNOWLEDGMENT ...................................................................................................................... III
LIST OF ACRONYMS ....................................................................................................................... IV
LIST OF FIGURES ............................................................................................................................ V
LIST OF TABLES.............................................................................................................................. VI
ABSTRACT........................................................................................................................................ 1
Chapter One: Introduction .................................................................................................................. 2
1.1.Background .................................................................................................................................. 2
1.1.1.Mission .................................................................................................................................. 2
1.1.2.Vision..................................................................................................................................... 2
1.1.3.Core values ........................................................................................................................... 2
1.2.Statement of the problem ............................................................................................................. 3
1.3.Objectives .................................................................................................................................... 3
1.3.1.General objectives ................................................................................................................. 3
1.3.2.Specific Objectives ................................................................................................................ 3
1.4.Methodology ................................................................................................................................ 3
1.4.1.Requirement Gathering Methods ........................................................................................... 3
1.4.2.Analysis and Design Methodology ......................................................................................... 4
1.4.3.Implementation Methodology ................................................................................................. 4
1.4.3.1.Front-end Technologies ................................................................................................ 4
1.4.3.2.Back-end Technologies ................................................................................................. 4
1.4.3.3.Development tools......................................................................................................... 4
1.4.3.4.Documentation and Modeling tools ............................................................................... 5
1.4.3.5.Development Environment ............................................................................................ 5
1.4.3.6.Deployment Environment .............................................................................................. 5
1.5.Feasibility ..................................................................................................................................... 5
1.5.1.Economic Feasibility .............................................................................................................. 5
1.5.2.Technical Feasibility .............................................................................................................. 6
1.5.3.Time Feasibility...................................................................................................................... 6
Tour and Travel Management System | 2015
1.6.Beneficiaries or Significance of the Project .................................................................................. 6
1.7.Limitations of the Project .............................................................................................................. 6
1.8.Scope of the Project ..................................................................................................................... 6
1.9.Organization of the project ........................................................................................................... 7
Chapter Two: System Features.......................................................................................................... 8
2.1.The Existing System .................................................................................................................... 8
2.2.Proposed System ......................................................................................................................... 8
2.3.Requirement Analysis .................................................................................................................. 8
2.3.1.Functional Requirement ......................................................................................................... 9
2.3.2.System Use Case ................................................................................................................ 10
2.3.2.1.Use Case Diagram ...................................................................................................... 10
2.3.2.2.Use Case documentation ............................................................................................ 10
2.3.3.Business Rule Documentation ............................................................................................. 27
2.3.3.1.Business rule identification .......................................................................................... 27
2.3.3.2.Actor Identification ....................................................................................................... 28
2.3.4.State Diagram...................................................................................................................... 29
2.3.5.Activity Diagram................................................................................................................... 29
2.3.6.Sequence Diagram .............................................................................................................. 34
2.4.Nonfunctional requirement ......................................................................................................... 38
2.5.System Requirement.................................................................................................................. 39
2.5.1.Hardware Requirements ...................................................................................................... 39
2.5.1.1.Client side Hardware Requirements ............................................................................ 39
2.5.1.2.Server-side Hardware requirements ............................................................................ 39
2.5.2.Software Requirements ....................................................................................................... 39
2.5.2.1.Client side Software requirements ............................................................................... 39
2.5.2.2.Server-side Software requirements ............................................................................. 40
2.6.Key abstraction with CRC analysis............................................................................................. 40
2.6.1. Conceptual modeling: Class diagram.................................................................................. 42
2.6.2. Identifying change cases .................................................................................................... 42
2.6.3.User Interface Prototyping ................................................................................................... 43
Chapter 3: System Design ............................................................................................................... 44
3.1.Architectural Design ................................................................................................................... 44
3.1.1.Component Modeling........................................................................................................... 45
3.1.2.Deployment Modeling .......................................................................................................... 47
Tour and Travel Management System | 2015
3.2.Detail Design.............................................................................................................................. 48
3.2.1.Design Class Model ............................................................................................................. 48
3.3.User Interface Design ................................................................................................................ 49
3.4.Access Control and Security ...................................................................................................... 51
REFERENCES ................................................................................................................................ 53
Tour and Travel Management System | 2015

ABSTRACT
The Tour and Travel Management System is a web-based application built using the MERN stack and
Chapa payment API. The system includes three actors: users, admin, and tour guides. Users can
search for tours, choose packages, and provide feedback on their trips. Admin can view booked tours,
assign tour guides, and manage the system's settings. Tour guides are assigned by admin and
provide on-site guidance and support during the tours. The system provides a seamless and
enjoyable booking experience for users, while also enabling efficient management and monitoring for
admin and tour guides.
The Tour and Travel Management System is a web-based application that aims to provide a
seamless and enjoyable booking experience for tourists. The system enables users to search for tour
destinations and choose from a variety of tour packages with varying perks. The booking process is
simple and secure, allowing users to confirm their bookings through the integration of Chapa payment
API.
The Tour and Travel Management System will be built using the MERN (MongoDB, Express.js,
React.js, and Node.js) stack, a popular and efficient set of technologies for building modern web
applications. MongoDB will serve as the primary database for storing all application data, while
Express.js will provide the web application framework, React.js will serve as the front-end library, and
Node.js will serve as the server-side runtime environment.
The primary goal of the Tour and Travel Management System is to provide a user-friendly and
efficient platform for booking tours, while also enabling efficient management and monitoring for
admins and tour guides. The system will strive to provide a memorable and enjoyable experience for
tourists, while also ensuring the safety and security of user data.

1|P a ge
Tour and Travel Management System | 2015
Chapter One: Introduction
1.1. Background

Tourism provides numerous prospects for growing and developing our country’s economy. It
generates jobs, enhances the local economy, aids in the development of local infrastructure, and can
aid in the conservation of the natural environment, cultural assets, and traditions, as well as the
reduction of poverty and inequality.
Our system is a web-based system that converts manual tour and travel agency services to a
computerized web-based system by making it simple for customers to plan their trips by adding
tourism sites and information about different service providers. It also plays an important role in
promoting the tour and travel agency's services. Customers can plan their trips and register with the
tour and travel firm online using this platform.
The organization that we develop the app for is called Ethio target Tours, which was established in
2008 with professional English & German-speaking staff who design Ethiopian Tours programs in
accordance with the requirements and budget of clients including all the necessary amenities such as
arrival, departure, accommodations, meals, and transportations. They offer the best services at
affordable prices, from start to finish. Their philosophy systems from an old adage—"leaving no stone
unturned"—which makes them reputable in Ethiopian tour and travel circles.
Its main offices in Addis Ababa, Bahir Dar, Gonder, and Arbaminch are a travel and tour operator
company that provides holiday tours and travel agency-related services in Ethiopia. They specialize in
providing customized Ethiopian Holiday tours for groups and independent travelers with destinations
throughout Ethiopia. Their long years’ experience in the tourism industry makes them one of most
successful and reputed tour operation companies in Ethiopia in terms of professionalism and quality
services.

1.1.1. Mission
Offering customers the best, unique, and socially responsible travel experiences, providing services
beyond expectations

1.1.2. Vision
To be the leading tourism company providing high quality, creative, innovative, competitive, and
socially responsible services in the region

1.1.3. Core values


 Hospitality
 respect for diversity
 Striving for change
 superior service
 participation
 Prioritizing the benefit of customers
 Transparency and Accountability

2|P a ge
Tour and Travel Management System | 2015
1.2. Statement of the problem

In the current system, tourists must call various tour agencies to learn more about the services that
each tour and travel firm offers. This wastes time, and it will be difficult for tourists to locate these tour
and travel firms. The existing method is ineffective and inefficient because tour and travel agencies
provide their services manually, which requires a lot of paperwork and produces a poor working
atmosphere by putting a lot of work burden on the agency workers.
The following are some of the issues that have been identified with the present tourism management
system. They are as follows:
 Poor customer information management
 Insufficient information
 It is difficult to keep tourist information up to date
 Waste of resources such as time, money, and so on.
By constructing a computerized web-based tour and trip information management system, our project
will attempt to find the best solution to the issues listed above.

1.3. Objectives

1.3.1. General objectives


To develop a web based Tour and Travel management system that automates the Tour and Travel
agency's processes and activities.

1.3.2. Specific Objectives


 Studying the current system and identifying the problems.
 Find a solution to the problem discovered in the current system.
 Design and build a particular model of this proposed system.
 Deploy the system and test it until it meets the organization’s needs.

1.4. Methodology

1.4.1. Requirement Gathering Methods


We have used the following requirement gathering methods:
 Observation: by watching how they perform their activities by going there & by watching the
manual business process.
 Interview: interviewing the employees that perform in the organization about how the
organization works and perform different tasks.
 Online: One of the major source gatherings for our project.
 Document analysis: by looking into their documents that describes how they handle their
customers, the tour package they provide for their customers and different contract
documents they have with hotels.

3|P a ge
Tour and Travel Management System | 2015
1.4.2. Analysis and Design Methodology
In our project, we will use an object-oriented analysis and design (OOAD) approach and agile
methodology combined. We use OOAD because it shows a clear transition from design to
implementation and It makes it simple to maintain and modify existing code because new objects with
minor differences from old ones can be produced. It also enables the extension of object behavior
through both composition and inheritance, allowing objects to take on new life and usefulness in new
contexts. And we use agile methodology because it is based on the idea that a project could be
continuously improved upon throughout its life cycle, with modifications made in a timely and
responsive manner. We expect to greatly benefit from the two approaches' strengths by combining
them.

1.4.3. Implementation Methodology


We have opted to adopt object-oriented programming as our coding approach since it enables the
extension of object behavior through both composition and inheritance, giving objects a fresh start on
life and the ability to be used in new contexts. As it mimics reality, it is frequently the most natural
programming style.

1.4.3.1. Front-end Technologies

 React: A JavaScript library for building user interfaces.


 Redux: A predictable state container for JavaScript apps.
 Tailwind CSS: A utility-first CSS framework for rapid UI development.
 React Router: A routing library for React applications.
 Axios: A promise-based HTTP client for the browser and Node.js.

1.4.3.2. Back-end Technologies

 Node.js: A JavaScript runtime built on Chrome's V8 JavaScript engine.


 Express: A fast, minimalist web framework for Node.js.
 Mongo DB: A NoSQL database for storing and retrieving data.
 Mongoose: An Object Data Modeling (ODM) library for Mongo DB and Node.js.
 Passport: An authentication middleware for Node.js.
 JSON Web Tokens (JWT): A standard for securely transmitting information between parties
as a JSON object.

1.4.3.3. Development tools

 Visual Studio Code: A source-code editor developed by Microsoft.


 Git: A distributed version control system for tracking changes in source code during software
development.
 GitHub: A web-based platform for version control and collaboration.
 Heroku: A cloud platform for building, deploying, and scaling web applications.
 Postman: A popular API client for testing and documenting APIs.
This combination of technologies will allow us to create a responsive, dynamic, and user-friendly web
application that meets the requirements and expectations of our users.

4|P a ge
Tour and Travel Management System | 2015
1.4.3.4. Documentation and Modeling tools

 Google Doc:Google Docs used to create and edit text documents right in your web browser
no special software is required. Even better, multiple people can work at the same time; you
can see people’s changes as they make them, and every change is saved automatically.
 Enterprise Architecture: Enterprise Architect is a visual modeling and design tool based on
the OMG UML. The platform supports: the design and construction of software systems;
modeling business processes; and modeling industry based domains.
 Figma:Figma is a cloud-based design tool that is similar to Sketch in functionality and
features, but with big differences that make Figma better for team collaboration. You may
preview a user's entire journey and experience with your designs by creating several flows for
your prototype on a single page with Figma's prototyping feature. A flow is a page's network
of frames and connections. A prototype can show how a user might navigate your app or
website from beginning to end, or it can use its own flow to highlight a particular section.

1.4.3.5. Development Environment

 Visual Studio code: is a strong code editor that is open-source developed via Microsoft.
Visual Studio Code contains built-in support for debugging, snippets, code refactoring, and
integrated terminal, and code completion, syntax highlighting, and embedded Git control.
Vscode is cross-platform and available on mac OS, Linux, and Windows.
 Github: is an immense platform for code hosting, it supports version control and
collaboration. It allows developers to work together on projects. It offers both distributed
version control and source code management (SCM) functionality of Git. It also facilitates
collaboration features such as bug tracking, feature requests, and task management for every
project.

1.4.3.6. Deployment Environment

 Heroku: a cloud platform as a service supporting several programming languages. One of the
first cloud platforms, Heroku has been in development since June 2007, when it supported
only the Ruby programming language, but now supports Java, Node.js, Scala, Clojure,
Python, PHP, and Go.

1.5. Feasibility

Project feasibility is the study of a project's various elements to determine if it has the potential for
success.

1.5.1. Economic Feasibility


In terms of economy, after the system is fully developed and deployed, it will give many economic
advantages, starting from minimizing payment for advertising manually, and it will play an important
part in reducing the amount of money that tourists waste when looking for agencies and other
activities since it provides access to all site information in one location. It will decrease the labor work
that previously was needed for doing the daily activities, which reduces the cost of payment.

5|P a ge
Tour and Travel Management System | 2015
1.5.2. Technical Feasibility
The Tour and Travel Information System is technically feasible, which means that it can be readily
maintained and repaired without the need for additional expertise or technical assistance. The
challenges of the current manual system will be resolved technically by introducing a more
contemporary and user-friendly system. In order to implement the system, it would be important to
have some information about how to use the database and other programming languages and how to
interact with them, as well as work on using different servers that are available for the system to work.

1.5.3. Time Feasibility


When we see time feasibility, the available time for doing the project is more likely to be enough to do
the project, but with the class schedules and assignments, we will see and try to work on and develop
the project in the most available and possible way by managing our time.

1.6. Beneficiaries or Significance of the Project

Once this system is worked out and deployed, it will provide different benefits to both domestic and
international visitors.
The following are the benefits of the project:
 Assists tourists in making the right decision about where to visit by categorizing activities
according to the sites like swimming, hiking including camping, long walk and others.
 Helps the tourists to reduce the amount of time and money spent.
 Provides a tour package to book which holds in one different services like hotel booking, car
rent, food & drink and others according to the package they choose
 Assigns tour guides to the tourists which they can get service starting from picking.
 Tourists can also view a map and navigation about their destination, as well as temperature
and weather data.
In general, this system helps in the development of tourism with many cultures, which enriches the
tourism experience and fosters pride in the country.

1.7. Limitations of the Project


 Our system has limitations in locations without internet access since it depends on a
connection because it is web-based.
 Our system doesn’t support searching words by voice.
 Our system will be designed by using the English language. It will not work in local languages.
 There are so many tourist destinations and hotels in the region, so our system couldn’t
include all of them.

1.8. Scope of the Project

Our system generally provides the following features:


 User Account registration
 Manage tour destination
 Tour package booking

6|P a ge
Tour and Travel Management System | 2015
 Search/viewtour destination information
 Tour destination map service
 Online payment system
 Give feedback
 Car rental service
 SMS integration to inform users
 Text Chat support service
 Tour destination weather status

1.9. Organization of the project

The project report is divided into three chapters. An introduction to the organization and information
on the type of system that will be used in the project are provided in the first chapter. The system
feature, which contains the requirement analysis section, is covered in the second chapter of the
project document. The section covers the existing system, the proposed system, functional and
nonfunctional requirements, system use case diagrams, system requirements, and key abstractions
with CRC analysis to depict the system's operations and relationships. The system design includes an
architectural design, detail design, user interface design, access control and security is covered in the
third chapter.

7|P a ge
Tour and Travel Management System | 2015
Chapter Two: System Features
This chapter of the document will be devoted to analyzing how the current system accomplishes its
goals and providing a detailed description of the proposed system.

2.1. The Existing System

A customer must approach numerous agencies to learn more about tour services. The website they
have only offers information about numerous locations, events, hotels, and packages. This makes it
challenging for tourists to discover the locations on their own and make reservations in person. The
manual processes used by the tour agency to manage their clients, from registration to information
management, add a significant amount of job pressure.
Problems in the existing system:
 Performance problem
 An efficiency problem due to a redundant data recording
 Require a lot of paperwork
 The tourist information is recorded manually
 Create a lot of work burden for the tour agency employees
 Requires a lot of human power to manage their customers

2.2. Proposed System

The tour and travel management system will be developed using HTML, JavaScript, CSS, React,
Redux, Express.js, Mongo DB and Node.jstechnologies for the web. In the proposed system, an
administrator will be in charge of the site and the overall operation of the webpage. One of the
suggested system's qualities is its correctness, so only accurate information is delivered to users,
ensuring that they are satisfied with correct information at the right moment. The proposed system is
user-friendly, and users would have quick access to information. The proposed system's goal is to
improve on the current system, notably by modernizing the website and boosting user involvement
and features. It is highly automated and makes traveling considerably easier and more flexible. The
user can obtain the most up-to-date information at the most appropriate time.
By including site information, hotel information, and others, a tourism management system contains
all of the necessary things that a user wants in one place, reducing the time spent searching for
hotels, rent car or a tour guide. The system prioritizes security by securing tourist and other
information and only allowing authorized users access to that information.
Overall, the new system significantly improves on the current one by addressing the existing manual
system's bottlenecks and automating all in one in order to enhance performance and reduce the work
stress.

2.3. Requirement Analysis


The goals of the existing manual system will be examined in this portion of the document, along with a
thorough explanation of the proposed system. We've used unstructured interviews, document
analysis, and system analysis to fully comprehend the current system and pinpoint the true problem.

8|P a ge
Tour and Travel Management System | 2015
2.3.1. Functional Requirement
Functional requirements describe a function for which a system or system element must be qualified
and must be documented in various forms. The functional requirements explain the system's behavior
as it relates to its functionality.
The Tour and Travel Management System is expected to provide the following functionalities:
 The system should allow the administrator to create and manage their account.
 Users should be able to examine the available site information through the system.
 The system should allow the administrator to register tour guides offered to users in the
tourism site.
 The system should allow the users to be registered into the database.
 Users should be able to update their account through the system.
 The administrator should be able to update the site information using the system.
 The user should be able to give feedback.
 The system should allow the tour guide to see the assigned place.
 The user should be able to search sight information through the system.
 The user should be able to search hotel information through the system.
 The system should allow the users to book a tour, reserve a car.
 The system should allow the users to cancel their booking.
 The system should send a confirmation message to the user.

9|P a ge
Tour and Travel Management System | 2015
2.3.2. System Use Case

2.3.2.1. Use Case Diagram

Figure 1: Use case Diagram

2.3.2.2. Use Case documentation

A. Create account
Table 2.1: Use Case Description for Create Account

Use-Case ID: UC-001

Use-Case Name: Create account

Actors: User

10 | P a g e
Tour and Travel Management System | 2015

Description: To create an account for the actor

Pre-condition : The actor first must be registered to the system

Post-conditions: The account will be created

Basic Course of Action: Actor action System response

1. Click on Create account menu 2. The system will provide


create account form

3. fill the form & submit


4. The system creates the
account and displays a
success message.

Alternate Course of Action: If the actor did not fill out the form correctly
or left a requirement blank, the system will
prompt the actor to fill it out again.

B. Update Account
Table 2.2: Use Case Description for Update Account

Use-Case ID: UC-002

Use-Case Name: Update Account

Actors: User, Admin

Description: To update an account for the actor

Pre-condition : The actor first must login to the system

Post-conditions: The account will be updated

Basic Course of Action: Actor action System response

11 | P a g e
Tour and Travel Management System | 2015

1. Click on update account menu 2. The system will provide


update account form

3. fill the form & submit


4. The system updates
the account and displays
a success message.

Alternate Course of Action: If the actor did not fill out the form correctly
or left a requirement blank, the system will
prompt the actor to fill it out again.

C. Delete Account
Table 2.3: Use Case Description for Delete Account

Use-Case ID: UC-003

Use-Case Name: Delete Account

Actors: User, Admin

Description: To delete an account for the actor

Pre-condition : The actor first must login to the system

Post-conditions: The account will be deleted

Basic Course of Action: Actor action System response

1. Click on delete account menu 2. The system will provide


delete account form

3. fill the form & submit


4. The system deletes the
account and displays a
success message.

12 | P a g e
Tour and Travel Management System | 2015

Alternate Course of Action: If the actor did not fill out the form correctly
or left a requirement blank, the system will
prompt the actor to fill it out again.

D. Login
Table 2.4: Use Case Description for Login Account

Use-Case ID: UC-004

Use-Case Name: Login

Actors: All

Description: To authenticate and validate system users so that only validated users
can access the system.

Pre-condition : The actor first must be registered to the system

Post-conditions: The actor page will be displayed

Basic Course of Action: Actor action System response

1. The User fills the username and 2. The system verifies the
password then clicks the login button. username and password,
then logs in and redirects to
the actor's page.

Alternate Course of Action: If the user enters an invalid username or


password, the system displays an error
message, returning the admin to the login
page.

E. Insert Tour package


Table 2.5: Use Case Description for Insert Tour package

Use-Case ID: UC-005

Use-Case Name: Insert tour package

13 | P a g e
Tour and Travel Management System | 2015

Actors: Admin

Description: To insert tour package

Pre-condition : The admin has to be logged in

Post-conditions: The admin inserts tour package

Basic Course of Action: Actor action System response

1. After logging in the admin clicks 2. The system will provide


insert
insert tour package menu.
tour package form

3. The admin fills the form and clicks


the submit button. 4. The system submits and
displays a success message.

Alternate Course of Action: If the administrator did not fill out the
form correctly or left a requirement
blank, the system will prompt the
admin to fill it out again.

F. Update Tour package


Table 2.6: Use Case Description for Update Tour package

Use-Case ID: UC-006

Use-Case Name: Update tour package

Actors: Admin

Description: To update tour package

Pre-condition : The admin has to be logged in

14 | P a g e
Tour and Travel Management System | 2015

Post-conditions: The admin updates tour package

Basic Course of Action: Actor action System response

1. After logging in the admin clicks update 2. The system will provide
tour package menu. update
tour package form
3. The admin fills the form and clicks the
submit button.
4. The system submits and
displays a success
message.

Alternate Course of Action: If the admin did not fill the form correctly
or has left an unfilled requirement, the
system will prompt messages telling the
admin to fill again.

G. Insert Tour guide information


Table 2.7: Use Case Description for Insert site information

Use-Case ID: UC-007

Use-Case Name: Insert site information

Actors: Admin

Description: To insert site information

Pre-condition : The admin has to be logged in

Post-conditions: The admin inserts site information

Basic Course of Action: Actor action System response

15 | P a g e
Tour and Travel Management System | 2015

1. After logging in the admin clicks 2. The system will provide


insert
insert site information
site information form
menu.

4. The system submits and


3. The admin fills the form and clicks the
displays a success
submit button.
message.

Alternate Course of Action: If the admin did not fill the form correctly
or has left an unfilled requirement, the
system will prompt messages telling the
admin to fill again.

H. Update Tour guide information


Table 2.8: Use Case Description for Update site information

Use-Case ID: UC-008

Use-Case Name: Update Site information

Actors: Admin

Description: To update Site information,

Pre-condition : The admin has to be logged in

Post-conditions: The admin updates site information

Basic Course of Action: Actor action System response

1. After logging in the admin clicks 2. The system will provide


update site information menu. update
tourism site information form
3. The admin fills the form and clicks 4. The system submits and
the submit button. displays a success message.

16 | P a g e
Tour and Travel Management System | 2015

Alternate Course of Action: If the admin did not fill the form
correctly or has left an unfilled
requirement, the system will prompt
messages telling the admin to fill
again.

I. Register tour guide


Table 2.9: Use Case Description for Register tour guide

Use-Case ID: UC-009

Use-Case Name: Register tour guide

Actors: Admin

Description: To Register tour guide

Pre-condition : The admin has to be logged in

Post-conditions: The tour guide will be registered

Basic Course of Action: Actor action System response

1. After logging in the admin clicks 2. The system will provide


tour guide form
register tour guide menu.

4. The system submits and


3. The admin fills the form and clicks the
displays a success message.
submit button.

Alternate Course of Action: If the administrator did not fill out the
form correctly or left a requirement blank,
the system will prompt the admin to fill it
out again.

17 | P a g e
Tour and Travel Management System | 2015

J. Update tour guide information


Table 2.10: Use Case Description for Update tour Guide information

Use-Case ID: UC-010

Use-Case Name: Update tour guide information

Actors: Admin

Description: To Update tour guide information

Pre-condition : The admin has to be logged in

Post-conditions: The tour guide information will be updated.

Basic Course of Action: Actor action System response

1. After logging in the admin clicks 2. The system will provide


update tour guide information menu. update tour guide information
form

3. The admin fills the form and clicks the


submit button. 4. The system submits and
displays a success message.

Alternate Course of Action: If the admin did not fill the form
correctly or has left an unfilled
requirement, the system will prompt
messages telling the admin to fill again.

K. Assign tour guide


Table 2.11: Use Case Description for Assign tour guide

Use-Case ID: UC-011

Use-Case Name: Assign tour guide

18 | P a g e
Tour and Travel Management System | 2015

Actors: Admin

Description: To assign tour guide

Pre-condition : The admin has to be logged in

Post-conditions: The tour guide will be assigned

Basic Course of Action: Actor action System response

1. After logging in the admin clicks 2. The system will provide


assign a tour guide menu. assign tour guide form

3. The admin fills the form and clicks the 4. The system submits and
submit button. displays a success message.

Alternate Course of Action: If the admin did not fill out the form
correctly, the system will prompt a
message telling the admin to fill it out
again.

L. See feedback
Table 2.12: Use Case Description for see feedback

Use-Case ID: UC-013

Use-Case Name: See feedback

Actors: Admin

Description: To see users feedback

Pre-condition : The admin has to be logged in

Post-conditions: The admin view users feedback

19 | P a g e
Tour and Travel Management System | 2015

Basic Course of Action: Actor action System response

1. After logging in the admin clicks 2. The system will provide


feedback menu feedback meu

3. The admin sees users feedback 4. The system displays the users
feedback

M. See assigned place


Table 2.13: Use Case Description for see assigned place

Use-Case ID: UC-014

Use-Case Name: See assigned place

Actors: Tour guide

Description: To see assigned place

Pre-condition : The tour guide has to be logged in

Post-conditions: The tour guides sees assigned place

Basic Course of Action: Actor action System response

1. After logging in, the tour guide clicks on The system will display
the assigned place menu. assigned place menu

2. The tour guide sees assigned place and The system submits and
accept/reject the offer & submits displays a success
message.

N. See Tour guideinformation


Table 2.14: Use Case Description for See site information

Use-Case ID: UC-015

20 | P a g e
Tour and Travel Management System | 2015

Use-Case Name: See site information

Actors: User, Guest

Description: To see site information

Pre-condition : None

Post-conditions: Site information will be displayed

Basic Course of Action: Actor action System response

1. The user clicks on see site information The system will display site
information

O. Search site information


Table 2.15: Use Case Description for Search site information

Use-Case ID: UC-017

Use-Case Name: Search site information

Actors: User, Guest

Description: To search site information

Pre-condition : The user has to be logged in

Post-conditions: Site information will be displayed

Basic Course of Action: Actor action System response

21 | P a g e
Tour and Travel Management System | 2015

1. After logging in, the user clicks the 2. The system will display
search site information menu. sitel information

3. The user sees site information

P. Search hotel information


Table 2.16: Use Case Description for Search hotel information

Use-Case ID: UC-018

Use-Case Name: Search hotel information

Actors: User, Guest

Description: To search hotel information

Pre-condition : The user has to be logged in

Post-conditions: Hotel information will be displayed

Basic Course of Action: Actor action System response

1. After logging in the user clicks the 2. The system will display
search hotel information menu. hotel information

3. The user sees hotel information

Q. Booking Tour package


Table 2.17: Use Case Description for Booking tour package

Use-Case ID: UC-019

Use-Case Name: Tour package booking

Actors: User

22 | P a g e
Tour and Travel Management System | 2015

Description: To book tour package

Pre-condition : The user has to be logged in

Post-conditions: The user will book a tour package of his/her choice

Basic Course of Action: Actor action System response

1. After logging in the user clicks the book 2. The system will provide
tour package menu.. booking tour package form
3. The users selects there choice from the
package list and pay accordingly and
4. The system submits and
clicks submit button.
displays a success
message.

Alternate Course of Action: If the user did not fill the form correctly or
has left an unfilled requirement, the
system will prompt messages telling the
user to fill again.

R. Select hotel
Table 2.18: Use Case Description for Select hotel

Use-Case ID: UC-020

Use-Case Name: Select hotel

Actors: User

Description: To select hotel of the user choice which classified according to budget

Pre-condition : The user has to be logged in

Post-conditions: Hotel information will be displayed

Basic Course of Action: Actor action System response

23 | P a g e
Tour and Travel Management System | 2015

1. After logging in the user clicks the 2. The system will display
search hotel information menu. hotel information
4. The system calculates
and displays the total
3. The user sees hotel information and
amount of money and
selects the choice of their hotel.
provides a payment form.
5. The user fills the form and submits.
6. The system submits and
displays a success
message.

Alternate Course of Action: If the user did not fill the form correctly or
has left an unfilled requirement, the
system will prompt messages telling the
user to fill again.

S. Select site package


Table 2.19: Use Case Description for Select site

Use-Case ID: UC-021

Use-Case Name: Select site

Actors: User

Description: To select site of the user choice

Pre-condition : The user has to be logged in

Post-conditions: site selection will be performed

Basic Course of Action: Actor action System response

1. After logging in the user clicks book tour 2. The system will display
package different options
3. The user sees site information and 4. The system calculates
selects the choice of their site. and displays the total
amount of money and
5. The user fills the form and submits.
provides a payment form.

24 | P a g e
Tour and Travel Management System | 2015
6. The system submits and
displays a success
message.

Alternate Course of Action: If the user did not fill the form correctly or
has left an unfilled requirement, the
system will prompt messages telling the
user to fill again.

T. Rent Car Service


Table 2.20: Use Case Description for Rent car service

Use-Case ID: UC-022

Use-Case Name: Rent car service

Actors: User

Description: To rent a car of the user choice

Pre-condition : The user has to be logged in

Post-conditions: Car rent will be performed

Basic Course of Action: Actor action System response

1. After logging in the user clicks Rent car 2. The system will display
menu different options of cars
3. The user sees and selects the choice of 4. The system displays the
the car they want. total amount of money and
provides a payment form.
5. The user fills the form and submits.
6. The system submits and
displays a success
message.

Alternate Course of Action: If the user did not fill the form correctly or
has left an unfilled requirement, the

25 | P a g e
Tour and Travel Management System | 2015
system will prompt messages telling the
user to fill again.

U. Write feedback
Table 2.21: Use Case Description for write feedback

Use-Case ID: UC-023

Use-Case Name: write feedback

Actors: User

Description: To write feedback

Pre-condition : The user has to be logged in

Post-conditions: Feedback of the user will be displayed

Basic Course of Action: Actor action System response

1. The user clicks on feedback menu 2. The system will display


write feedback and rating
3. The user writes feedback and submits
option
4. The system submits and
displays a success
message.

V. Cancel booking
Table 2.22: Use Case Description for Cancel booking

Use-Case ID: UC-024

Use-Case Name: Cancel booking

Actors: User

26 | P a g e
Tour and Travel Management System | 2015

Description: To cancel booking

Pre-condition: The user has to be logged in

Post-conditions: The user will cancel booking

Basic Course of Action: Actor action System response

1. After logging in the user clicks cancel 2. The system will provide
booking menu. cancel booking form

3. The user fills the form and clicks the 4. The system submits and
submit button. displays a success
message.

Alternate Course of Action: If the user did not fill the form correctly or
has left an unfilled requirement, the
system will prompt messages telling the
user to fill again.

2.3.3. Business Rule Documentation

2.3.3.1. Business rule identification

A business rule is a rule that specifies or constrains a business component and always resolves to
true or false. Business rules are intended to enforce business structure or to manage or affect
business behavior. It is beneficial to carefully document business rules and make sure they do not
contradict each other. Rules can be utilized to better the organization's goals, remove barriers,
promote growth, lessen costly mistakes, and increase communication when they are appropriately
handled.
Table 2.23: Business rule table

Rule Name Description

1 User account Each user sign up to book packages and contact travel
agents through our chat support freature.

27 | P a g e
Tour and Travel Management System | 2015

2 Admin account For the system to start up, an admin account must first be
created.

3 Travel guide account Each travel agent must have a valid account created by
the admin so that they can provide any services that are
expected and get authorized access to the system.

5 Service accessing Access should be granted to users for all appropriate


requests.

6 Service provision The system must respond to the user's request


appropriately and consistently.

2.3.3.2. Actor Identification

Table 24: Actor identifier table

Number Actors Description

1 User The user is the one who requests the system's services.

3 Tour guide The one who manages the services to be provided to


users

4 Admin The one at the top of the system who manages those at
the lower levels.

28 | P a g e
Tour and Travel Management System | 2015
2.3.4. State Diagram

Figure2: State Diagram for User

2.3.5. Activity Diagram


An activity diagram is a diagram that represents a system in terms of activities. Activities are states
that represent the performance of a series of operations.
Our system activity diagrams represent the operational step-by-step workflows of our system's
components. We create the diagram below by identifying and assessing all of the activities,
circumstances, elements, and entities that will be employed within it.
A. Create account activity diagram

Figure 3: Create account Activity Diagram


29 | P a g e
Tour and Travel Management System | 2015

B. See Tour guide information activity diagram

Figure 4: See Tour guide information activity diagram


C. Cancel booking Activity Diagram

Figure 5: Cancel booking Activity Diagram

30 | P a g e
Tour and Travel Management System | 2015
D. Booking package Activity Diagram

Figure6: Booking package Activity Diagram

E. See booking list activity diagram

Figure 7: See booking list Activity Diagram

31 | P a g e
Tour and Travel Management System | 2015
F. Manage Tour Guide

Figure 8: Manage Tour Guide


G. See tourist information Activity Diagram

Figure 9: See tourist information Activity Diagram


32 | P a g e
Tour and Travel Management System | 2015
H. Update site information activity diagram

Figure 10: Update site information Activity Diagram

I. Car rent Activity Diagram

Figure 11: Car rent Activity Diagram

33 | P a g e
Tour and Travel Management System | 2015
J. Update Account Activity Diagram

Figure 12: Update account Activity Diagram

2.3.6. Sequence Diagram


Our system's sequence diagram is largely used to display the interactions between items in a
sequential way. A sequence diagram's principal goal is to identify event sequences that result in some
desired end. Our sequence diagrams clearly illustrate how objects interact with one another through
messages during the execution of a use case or operation.
The diagrams for the above sequence of events are as follows:

34 | P a g e
Tour and Travel Management System | 2015
A. Sequence diagram for Create account

Figure 13: Create account Sequence Diagram


B. Sequence diagram for see booking list

Figure 14: See booking list Sequence Diagram

35 | P a g e
Tour and Travel Management System | 2015
C. Sequence diagram for manage tour guide

Figure 15: Manager Tour guide Sequence Diagram

36 | P a g e
Tour and Travel Management System | 2015
D. Sequence diagram for manage tour packages

Figure 16: Manager Tour Sequence Diagram

37 | P a g e
Tour and Travel Management System | 2015
E. User Payment Service Sequence Diagram

Figure17: User Payment Service Sequence Diagram

2.4. Nonfunctional requirement


Non-functional requirements are those that have no direct impact on the particular services that the
system provides to its users. Instead, they outline the system's user-visible characteristics. They might
be connected to characteristics of emergent systems including dependability, response time, and
store occupancy. Alternatively, they could set limitations on how the system will be implemented,
including what I/O devices can do or how data will be represented when interacting with other
systems. Performance, security, and availability are examples of nonfunctional requirements that
typically establish or impose constraints on the properties of the system as a whole.

38 | P a g e
Tour and Travel Management System | 2015
The Non-functional requirements of this system include the following:
 Security: The system will allow the administrator to perform the task in a secured manner.
 Usability: The system is designed to be interactive, simple, and attractive.
 Reliability: The system is designed to provide reliable ways of handling data.
 Performance: The new system has a very fast response time for loading and processing
tasks, which is triggered by a single click. If one user wishes to accomplish a specific task, the
system responds quickly by providing adequate input for a given output.
 Error handling Mechanism: The system should handle incorrect inputs and report user errors
in understandable messages.
 Availability: The system works 24/7 hours and it is available everywhere.
 Portability: Because the programming languages we utilize are platform independent for the
web service, the proposed system should function effectively in any operating system and
web browser.

2.5. System Requirement

2.5.1. Hardware Requirements

2.5.1.1. Client side Hardware Requirements

 Processor: a processor with a clock speed of at least 1.6 GHz or higher. to ensure that the
app runs smoothly without any lags or delays.
 RAM: For optimal performance,Our web app will require at least 4 GB of RAM.
 Storage: While the amount of storage required will vary depending on the size of your app
and the data it stores, a minimum of 250 GB of storage is recommended.
 Webbrowser: Our app will be accessible through a web browser, so it's important to ensure
that the browser is up-to-date and compatible with the MERN stack.
 Internetconnection: A stable and reliable internet connection is necessary for accessing and
using our web app. A minimum connection speed of 215 Kbps is recommended.

2.5.1.2. Server-side Hardware requirements

 CPU: At least 2 cores, preferably more if your app is computationally intensive


 Memory: At least 4GB, but ideally 8GB or more
 Storage: At least 20GB, but ideally more if you expect to store large files
 Bandwidth: Sufficient to handle your expected traffic, with room to scale if necessary

2.5.2. Software Requirements

2.5.2.1. Client side Software requirements

 VS code editor: A source code editor developed by Microsoft for writing code.
 Web browser: A software application used to access and view websites and web-based
content on the internet.
 Enterprise Architect: A visual modeling and design tool used for software development and
business modeling.
 Figma: A collaborative interface design tool for creating and prototyping digital designs.

39 | P a g e
Tour and Travel Management System | 2015
2.5.2.2. Server-side Software requirements

The server will be built using the MERN stack and will require a number of software components to be
installed and configured. The server will need to run on a Unix-like operating system, such as Linux or
macOS, and will require Node.js, Express.js, and MongoDB to be installed. The server will also need
to be configured with a web server, such as Nginx or Apache, to handle incoming requests and serve
the application to the client. Additionally, the server will need to have appropriate security measures in
place, such as SSL encryption, to ensure the safety and privacy of user data.

2.6. Key abstraction with CRC analysis


Table2.25: Tourist CRC

Tourist

Responsibilities Collaborators

Search for tours Tour Package

Choose tour packages Booking

Make payments to confirm bookings Payment

Provide feedback on trips Feedback

Table2.26: Admin CRC

Admin

Responsibilities Collaborators

Manage and monitor the system Tour Guide

View booked tours Booking

Assign tour guides Tour Package

Manage system settings Payment

Table2.27: Feedback CRC

Feedback

Responsibilities Collaborators

Feedback Tourist

40 | P a g e
Tour and Travel Management System | 2015
Table2.28: Tour Guide CRC

Tour Guide

Responsibilities Collaborators

Provide on-site guidance and support during Admin


tours

Ensure tourists have an enjoyable and safe Tourist


experience

Assign tour guides Tour Package


Table2.29: Tour package CRC

Tour Package

Responsibilities Collaborators

Define different packages with varying perks Admin

Store package details Tourist

Booking
Table2.30: Booking CRC

Booking

Responsibilities Collaborators
Tourist
Store booking details
Admin
Track tour availability
Tour Package

Payment

Table2.31: Payment CRC

Payment

Responsibilities Collaborators
Handle payment processing Tourist

Confirm bookings Admin

Booking

Tourist

41 | P a g e
Tour and Travel Management System | 2015
2.6.1. Conceptual modeling: Class diagram

Figure18: Conceptual Class Diagram

2.6.2. Identifying change cases


Here are a few potential changes to the existing requirements of the Tour and Travel Management
System, along with the likeliness of the change occurring and the potential impact of the change:
Addition of a Tourist Loyalty Program
 Likelihood: Moderate
 Impact: High
 Description: The addition of a loyalty program for tourists could encourage repeat bookings
and increase customer loyalty. This would require changes to the booking and payment
systems to track and reward loyal customers, as well as changes to the user interface to
display loyalty program information.
Integration with Third-Party APIs
 Likelihood: High
 Impact: Moderate
 Description: The system may need to integrate with third-party APIs for additional
functionality, such as weather data, airline schedules, or hotel bookings. This would require
changes to the system's architecture and integration points, as well as potential changes to
the user interface to display the additional information.
Expansion of Tour Packages
 Likelihood: High
 Impact: Low to Moderate

42 | P a g e
Tour and Travel Management System | 2015
 Description: As the system gains popularity and expands to new regions, there may be a
need to add new tour packages with different destinations, activities, and perks.
Integration with Social Media
 Likelihood: Low
 Impact: Low to Moderate
 Description: The system may benefit from integrating with social media platforms to allow
tourists to share their experiences and promote the system. This would require changes to
the user interface to add social media sharing buttons and potential changes to the booking
and feedback systems to track social media interactions.
These potential changes highlight the need for a flexible and scalable system architecture that can
accommodate new requirements as they arise.

2.6.3. User Interface Prototyping

Figure19: User Interface Prototype

43 | P a g e
Tour and Travel Management System | 2015
Chapter 3: System Design
3.1. Architectural Design
Web Application

(React + Node)

API Gateway

(Node + Express)

Authentication

(Passport)

User Service

(Node + Mongo DB)

Tour Service

(Node + Mongo DB)

Booking Service

(Node + Mongo DB)

Payment Service

(Node +Chapa API)

Figure 20: Architectural Design Diagram

44 | P a g e
Tour and Travel Management System | 2015
In this architecture, the web application is built using the React front-end framework and the Node.js
back-end runtime environment. The API gateway acts as a single entry point for all external requests
to the system, and is built using Node.js and the Express web application framework.
The authentication subsystem uses the Passport.js library to handle user authentication and
authorization. The user service is responsible for managing user accounts and information, and is
built using Node.js and MongoDB for data storage. The tour service is responsible for managing tour
packages and details, and is also built using Node.js and Mongo DB.
The booking service is responsible for handling tour bookings and reservations, and is built using
Node.js and MongoDB. Finally, the payment service is responsible for processing payments using the
Stripe API, and is also built using Node.js.
Overall, this architecture is designed to be scalable, modular, and maintainable, with clear separation
of concerns between the different subsystems.

3.1.1. Component Modeling

Figure 21: Component Diagram


User Interface
The user interface is the component of the system that the user interacts with to search and book tour
packages, manage their bookings, and provide feedback. It should provide an intuitive and user-
friendly experience to the user.

45 | P a g e
Tour and Travel Management System | 2015
Payment Processing
The payment processing component is responsible for collecting payment information from the user,
verifying the information, and processing the payment. It should ensure the security and confidentiality
of the payment information.
Car Rental
The car rental component is responsible for managing the rental of cars to users during their tours. It
should maintain a fleet of available cars, track car reservations, and assign cars to users.
Package Management
The package management component is responsible for managing the tour packages offered by the
system. It should maintain a database of available tour packages, including their prices, itinerary, and
availability.
User Management
The user management component is responsible for managing the user accounts and profiles in the
system. It should provide authentication and authorization services to ensure secure access to the
system's features and data.
Tour Guide Management
The tour guide management component is responsible for managing the tour guides in the system. It
should maintain a database of available tour guides, track their availability, and assign them to tours.
Database
The database component is responsible for storing and managing the data used by the system,
including user data, tour package data, booking data, car rental data, and feedback/review data. It
should ensure the consistency and integrity of the data and provide efficient data retrieval and
storage.

46 | P a g e
Tour and Travel Management System | 2015
3.1.2. DeploymentModeling

Figure 22: Deployment Diagram

Client: This represents the end user of the system, who interacts with the User Interface component
to search for tours, book trips, and manage their bookings.
User Interface: This component provides a graphical interface for users to interact with the system's
features and services.
Server: This component encompasses the car rental, package management, and user management
functions of the system. It communicates with the client to process user requests, and with Chapa's
payment gateway to securely process payments.
Payment: This component handles payment processing, communicating with external payment APIs
and services to securely collect payment information and process payments.
Database: This component stores and manages the system's data, including user data, tour package
data, booking data, car rental data, and feedback/review data. The database can be hosted on a
separate server or in the cloud, and can be managed using a variety of database management
systems (DBMS).

47 | P a g e
Tour and Travel Management System | 2015
3.2. DetailDesign

3.2.1. Design Class Model

Figure23: Class Diagram

48 | P a g e
Tour and Travel Management System | 2015
3.3. User InterfaceDesign

49 | P a g e
Tour and Travel Management System | 2015

50 | P a g e
Tour and Travel Management System | 2015

  







Figure 24: User Interface Design

3.4. Access Control and Security


Access control is an essential aspect of any system, particularly in a travel management system that
handles sensitive data such as personal information and payment details. The Tours and Travel
Management System WebApp will implement the following access control measures:
 User Authentication: The system will require users to authenticate their identities before
accessing any sensitive information or performing any actions on the system. The
authentication process will involve verifying the user's email address and password.
 Role-based Access Control: The system will implement role-based access control to restrict
access to certain features and information based on the user's role in the system. For
example, travel agents will have access to more features than regular tourists.

51 | P a g e
Tour and Travel Management System | 2015
 Access Restrictions: The system will restrict access to certain features and information
based on the user's access level. For example, a travel agent will only be able to view and
edit the bookings and packages assigned to them.
 Session Management: The system will use session management techniques to manage
user sessions and ensure that users are not logged in for an extended period of time,
reducing the risk of unauthorized access.
 Security:The Tours and Travel Management System WebApp will implement several security
measures to ensure the safety and privacy of its users' data:
 Encryption: The system will use encryption techniques to secure sensitive data such as
personal information and payment details during transmission and storage.
 Secure Payment Gateway: The system will use a secure payment gateway to ensure that
users' payment details are protected during transactions.
 Firewall Protection: The system will use firewall protection to prevent unauthorized access
and block malicious traffic.
By implementing these access control and security measures, the Tours and Travel Management
System WebApp will provide a secure and safe platform for its users to manage their travel bookings
and packages.

52 | P a g e
Tour and Travel Management System | 2015
REFERENCES
https://www.researchgate.net/publication/364930117_TRAVEL_MANAGEMENTT_SYSTEM_USING_OBJECT_OR
IENTED_ANALYSIS. (2023, January 5).

Agency, E. T. (n.d.). https://ethiotargettravelandtours.com. Retrieved January 15, 2023, from


https://ethiotargettravelandtours.com.
https://www.studocu.com/row/document/university-of-balochistan/computer-science/tms-report-nearly-
everyone-goes-on-a-vacation-and-a-tourism-management-system-wouldplay/29457099. (n.d.).
Retrieved January 8, 2023

Rao., B. M. (2016). Report on Tourism Management System. University of Bridgeport.

Solutions., N. (2020, May 9). https://www.neovasolutions.com/2020/05/09/key-features-in-a-travel-


management-system/.

53 | P a g e

You might also like