Tour and Travel Management System.
Tour and Travel Management System.
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
I
Tour and Travel Management System | 2015
ROLES AND RESPONSIBILITY
Table1.1: Roles and Responsibility table
Requirement Gathering ✔ ✔
Activity Diagrams ✔ ✔ ✔
Sequence Diagrams ✔ ✔ ✔
State Diagram ✔ ✔ ✔
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
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
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.4. Methodology
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.
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.
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.
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.
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.
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.
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
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.
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
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.
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
A. Create account
Table 2.1: Use Case Description for Create Account
Actors: User
10 | 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.
B. Update Account
Table 2.2: Use Case Description for Update Account
11 | 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.
C. Delete Account
Table 2.3: Use Case Description for Delete Account
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
Actors: All
Description: To authenticate and validate system users so that only validated users
can access the system.
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.
13 | P a g e
Tour and Travel Management System | 2015
Actors: Admin
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.
Actors: Admin
14 | P a g e
Tour and Travel Management System | 2015
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.
Actors: Admin
15 | 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.
Actors: Admin
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.
Actors: Admin
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
Actors: Admin
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.
18 | P a g e
Tour and Travel Management System | 2015
Actors: Admin
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
Actors: Admin
19 | P a g e
Tour and Travel Management System | 2015
3. The admin sees users feedback 4. The system displays the users
feedback
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.
20 | P a g e
Tour and Travel Management System | 2015
Pre-condition : None
1. The user clicks on see site information The system will display site
information
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
1. After logging in the user clicks the 2. The system will display
search hotel information menu. hotel information
Actors: User
22 | P a g e
Tour and Travel Management System | 2015
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
Actors: User
Description: To select hotel of the user choice which classified according to budget
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.
Actors: User
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.
Actors: User
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
Actors: User
V. Cancel booking
Table 2.22: Use Case Description for Cancel booking
Actors: User
26 | P a g e
Tour and Travel Management System | 2015
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.
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
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.
1 User The user is the one who requests the system's services.
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
30 | P a g e
Tour and Travel Management System | 2015
D. Booking package Activity Diagram
31 | P a g e
Tour and Travel Management System | 2015
F. Manage Tour Guide
33 | P a g e
Tour and Travel Management System | 2015
J. Update Account Activity Diagram
34 | P a g e
Tour and Travel Management System | 2015
A. Sequence diagram for Create account
35 | P a g e
Tour and Travel Management System | 2015
C. Sequence diagram for manage tour guide
36 | P a g e
Tour and Travel Management System | 2015
D. Sequence diagram for manage tour packages
37 | P a g e
Tour and Travel Management System | 2015
E. User Payment Service Sequence Diagram
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.
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.
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.
Tourist
Responsibilities Collaborators
Admin
Responsibilities Collaborators
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
Tour Package
Responsibilities Collaborators
Booking
Table2.30: Booking CRC
Booking
Responsibilities Collaborators
Tourist
Store booking details
Admin
Track tour availability
Tour Package
Payment
Payment
Responsibilities Collaborators
Handle payment processing Tourist
Booking
Tourist
41 | P a g e
Tour and Travel Management System | 2015
2.6.1. Conceptual modeling: Class diagram
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.
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
Tour Service
Booking Service
Payment Service
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.
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
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
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
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).
53 | P a g e