Final Editedd
Final Editedd
1.1. Introduction
In the current era of improving consumption structures, there has been a significant surge in the number of
people engaging in recreational and entertainment tours. Tourism has emerged as one of the most robust
and expansive industries, contributing approximately 11% to the global gross domestic product (GDP) and
employing 200 million individuals, while serving 700 million tourists worldwide as of 2020.
Simultaneously, the internet has provided an abundance of travel information, enriching the experiences
of tourists. However, a prevalent challenge persists tourists often struggle to access timely travel
information while they are on the move. To address this issue, we aim to develop a mobile tourist guide
system using mash-up technology.
Through this project, our objective is to create a comprehensive solution that allows users to make hotel
reservations, obtain real-time weather conditions, eliminate the need for tour guides by providing heritage
information through image recognition, and much more. By leveraging the power of technology, we intend
to alleviate the various problems tourists commonly face today.
With this innovative system and application, we envision a world where tourists can seamlessly navigate
their journeys, access vital information at their fingertips, and make informed decisions to enhance their
travel experiences. Our ultimate goal is to provide a comprehensive and user-friendly platform that resolves
the most pressing challenges faced by tourists today.
In our country, each activity is completed manually under the current system of tourism, and processing is
a time-consuming procedure. Currently, Tourists have to rely on travel agents for making tour
arrangements, which is extremely consuming and costly. The users are unable to meet their needs in a
timely manner.
Furthermore, the outcome may be inaccurate. This will decrease the safety of the tourists. Thus, the existing
system is very time-consuming and being manual work sometimes leads to a great loss as well.
Our system is highly automated and makes the travelling activities much easier and flexible. With digital
tools at hand, people now prefer to make their own travel arrangements through portable and user-friendly
mobile apps. iTOUR provides online booking system, hotel reservations depending on their financial status
and cashless travel which facilitates all kinds of payment since theft and the hassle of cash is a big security
concern for tourists visiting new countries and regions for the first time. Real-time weather forecasting
with recommendations assists users plan better with what to pack and things to watch out for along with
1
suggestions on timely travel bookings, choose the type of transportation they want, get detailed
information
2
about specific heritages or sights without the help of tour guides, by simply taking a picture of it, iTOUR
provides location based information and can access GPS of user’s location, and leave recommendations
after visiting a place and rate the services provided so that it can help the other users who are planning to
visit and plan better trips based on their travel history, preferences, and review and rate. In general, users
can manage all their plans with limited human intervention by simply using this mobile application. This
ensures a safe and comfortable stay of tourists in the country.
3
1.4. Objective
1.4.1 General objective
The general objective of this project is to help tourists find transportation, hotels rooms that fit all their
needs at the right price by comparing the options from a wide range of providers and guide themselves and
get fast, accurate and detailed information about the places they are visiting without a tour guide by simply
scanning the QR code placed on those area.
Tourism is one of the biggest sectors of our economy as a country. Since Ethiopia is a big country and has
many attraction sights, we figured it would not be possible to cover all of the places and sights. Thus, in
order to design our application, we were obligated to choose a smaller city, specifically Adama, for this
project. Its scope includes registration, GPS location tracking, reservations and information sharing. It
also includes different features such as payment methods and place recognition.
1.5.2 Limitations
The limitations we may face when and after doing these project are: -
Since, it is a mobile application the service given by the system is not accessed by users as long as there
is no smart phone and internet connection.
Because of budget, our marketing may not be big
Here in Ethiopia, most Ethiopians are not used to using mobile applications for these purposes.
4
1.6. Feasibility Study
A feasibility study is simply an assessment of the practicality of a proposed project plan or method. On the
basis of the feasibility study decision is taken on whether to proceed or to cancel the project. It includes the
following.
Technical feasibility
Operational feasibility
Economic feasibility
5
1.7. Significance of the project
This project’s approach is intended to be more efficient than the current manual method. It automates all
basic processes that are currently happening in the tourism industry, which is a significant benefit. In
addition, this project aims to revolutionize the tourism industry by enabling customers to engage in
valueadded and personalized engagement. With the availability of this mobile applications
people no longer have to rely on travel agents
users get accurate information with limited human intervention
simplifies the manual work
up to date and useful information
iTOUR mobile app benefits various target groups. This app assists users for booking their hotel rooms
and transportation services via the Internet only by using this mobile application. Also allow users to
travel without tour guidance in their visitation time.
Benefits for the user:
• Easy access for booking
• Payment method integrated so payment can be done easily
• Get exact location of the place they are visiting through map
• Check the weather condition of their stay before going
• Get a place description by scanning the QR code placed on the attraction place.
6
1.9. Methodology
1.9.1 Data collection methodology
We have used the following data collection method which will be conducted by way of interviews,
questionnaires, requests for data from different organizations like hotels and resorts, transportation service
sectors like Ride and observing how the existing or current system works and how laborious and
unorganized it can be.
Helps in creating an abstract and physiological representation of a real-world concept and the analysis of
this model to make decisions about implementation. We are developing a conceptual model of the system,
and we have defined the important features of the system that we want to include. This modeling helps us to
focus on the essential features of the system and the relationships between those features, and so to identify
the functional requirements for the system to function as intended.
1.10.1. Hardware
Flash (External hard disk)
Computer
7
1.10.2. Software
Tools Use
For database
Flutter To create customized mobile app designs (Front-end)
Figma For UI/ mockup design
Design the project
Enterprise
architect
MS-word Documentation
Browser To open the system
The final product will be interactive, intuitive and user-friendly mobile application which runs on a wide
range of smartphones.
A cost breakdown analysis is a cost analysis that involves itemizing all of the components of the cost of a
particular product or service. The itemized components are called cost drivers. Different products and
services have their own different sets of itemized cost drivers. A cost breakdown analysis is an effective
tool
8
used when cutting down costs on certain things. Although there is no official budget/cost allocated for this
project, here is an estimated budget/cost for resources required for the project:
Research
Planning
Proposal
9
Documentation
Preparation
Implementation
Build
Prototype
Test
Obtain
Feedback
Finalize
in
2 Henok Belachew UGR/17210/11 Design, Implementation, Testing
1
Chapter Two: Existing system
To create a better system, it is essential to understand the present system of the given organization. It now
carries out a variety of tasks manually, including transferring information manually, making manual
reservations for hotels and transportation, and generating reports. One of the main downsides of the
current system is that users must locate a real, ideal travel agent, which can be difficult, take a lot of time,
and try their patience.
Coordinate trips
Wait-listing.
Search
1
Tour guides are not needed as we can simply get full information by scanning the QR code placed on
the areas of attraction (such as heritages, monuments etc..)
VIEW
SEARCH
BOOKING
CANCEL BOOKING
ONLINE PAYMENT
The manual way of data handling and running up of the activities is tedious Data security
is not assured.
A significant non-functional requirement that might have an impact on the system is the business rule. The
development of the system may be negatively impacted if the system's owner changes or if numerous
owners disagree with one another. Therefore, business rules must be taken into account at every step of
development. The agreement with the system owner should be renewed after every significant advancement
or should be made at the beginning of the system for the entire system.
1
The following are business rules of system.
1. The system does not allow to perform any activity if they are not registered.
2.Be aware of the agent’s requirements.
3. The user must be authenticated to access the system.
4. Report is generated if and only if a specific project and requirements are already registered.
5. Group leader can represent the members.
6. Users of the system should be well known.
1
Chapter Three: Proposed System
3.1. Overview
This chapter primarily concentrates on defining and analyzing the requirements for our proposed system.
The functional and non-functional requirements of the proposed system are stated at the beginning of the
chapter. In addition, various scenarios are presented to support how the issues with the current system will
be fixed in the suggested solution. We use object-oriented modeling to create models and provide solutions
for the suggested system. The chapter's last portion comprises use-case diagrams, activity and sequence
diagrams, class diagrams, persistence diagrams, and other UML- compatible modeling diagrams.
A functional requirement describes the intended behavior of our system or the application.
Users can search nearby attractions points, can figure out the distance between these point and
current location.
When user login to the system on his/her mobile, application will trigger the GPS to get and update
information of user’s location.
iTOUR also analyze the user information stored in database to get user’s preferred requirements.
Users can rate the app and the services provided by the app.
iTOUR provide location based information which can be browsed through a map.
The system only accepts a valid login details to enroll on a travel the system and offer logout
functionality to end users.
1
The system should be able to provide full information about attraction places by simply taking a picture of
it.
iTOUR will provide password recovery facility.
Admin can register hotel and transportation service providers, route information, and flight information.
Admin can view daily, weekly and monthly reports.
Admin can update, search and delete any package and information.
The admin can also change his name or password from the dashboard settings.
Non-functional requirements are those that aren't necessary for our system's operation but can still support
it and improve its quality.
1. Accessibility: We have taken every type of user in to account and provided them with an option to
access the system.
2. Database: An unauthorized person cannot access the panel and database, do not read and write
the information. It should maintain the security of the client’s payment method.
4. Scalability: The system encompasses several technologies that enable the platform to
accommodate larger workloads while maintaining consistent and acceptable levels of performance.
5. Resources: The system is compatible with specified hardware and software environment.
7. Usability: The System is designed for user friendly environment and ease of
use. Unauthorized person should not use the system; rather just view the main page.
No one can change the password without login to the system
8. Authentication Requirement: The system support user name and password to authentic and
has different privilege to protect intruding.
1
9. Availability: It should be available for 24 hours because it offers international tourists
reserved packages from different countries so it should be available for 24 hours.
10. Robustness (Error handling requirement): The system has error handling mechanisms that is, as
errors occur it will not stop functioning rather provide error manages and back to the previous page to give
chance to renter data and process the task by beyond the error.
11. Efficiency: When an online package of travel implemented customer can have reserved packages
in an efficient manner.
12. Well documented: the document of this project is processed in well manner.
1
3.4. System Model
System modeling is the process of developing abstract models of a system. These models help to
understand the functionality of the system by representing it with simple steps and ignoring
irrelevant details. It gives a representation of the system from different perspectives. It can
represent the interaction between the system and environment or between the components of the
system; the representation of the structure of the data that is processed by the system and the
representation of dynamic behavior of the system and how it responds to events.
3.4.1 Scenario
Scenario 1
Participating User
Actor Admin
Entry Condition Users of this system must install the mobile application and have
internet access
1
Alternate If the user does not provide the required information, the system
immediately requests the user to provide the missing information.
Condition
Scenario 2
1
Alternate Condition If the user doesn’t input its email and password correctly,
the system notifies and asks them to fill the form again.
Exit Condition The user is logged in and can see the home page.
Scenario 3
1
5. Make reservation.
6. Navigate to payment page
7. Choose payment methods.
8. Click pay now button
9. Input amount
10. Authenticate transaction
11. Save changes
12. The system displays successful message
13. Receive Automated email and text notifications
14. Logout
Special requirement The user should install the mobile app on their smartphones
Scenario 4
2
4. Add or update any services.
5. Logout
Scenario 5
6. Logout
Alternate Condition The system will notify the user if they haven’t filled the
correct information
2
Scenario 6
Alternate Condition -
2
Scenario 7
Exit Condition Recommended nearby places will be displayed on the home page.
Scenario 8
2
User must be logged in
Scenario 9
2
Special requirement User must install the mobile app
Scenario 10
Participating User
Actor
2
Scenario 11
Scenario 12
Participating User
Actor
2
3. User page displayed
4. Navigate to user page
5. Update profile
6. Logout
Scenario 13
2
3.4.2. Use case model.
A use-case model is UML (Unified Modeling Language) which is a de facto standard for object-oriented
modeling, so use-cases and Use-case–based elicitation are increasingly used for requirements elicitation.
Model of how different types of users interact with the system to solve a problem. As such, it describes the
goals of the users, the interactions between the users and the system, and the required behavior of the
system in satisfying these goals.
A use-case model consists of several model elements. The most important model elements are use
cases, actors, and the relationships between them.
1. Actor Identification
user
● Register
● Search location
● View place description
● View specific weather condition.
● View nearby attraction place
● View travel history
● View notification
● Review and rate
● Book services
● Make payment.
● Update profile
● Track location
● Delete account.
2
Admin
● Add service
● Update service
● Delete service
● Ban account
● Verify account
● Verify transaction
2
3.4.3 Use case Diagram
3
3.4.3 Use case description
Use case ID 01
3
Use case name Log in
Use case ID 02
Use case description Admin, users and Online system will be asked to login
with their account information before they can use the
system
¶
Table 3.15: log in Usecase description
3
Use case name Booking
Use case ID 03
Use case description Book trips, reserve hotel rooms and transportation types or
packages
Exceptional flow User should choose one payment method and must
have enough money on their account
User should also choose one type of hotel
and transportation service
Business rule -
3
Use case name Search
Use case ID 04
Exceptional flow If the given name is not found, there will be search results
related to it.
Use case ID 05
3
Use case Accept and decline reservation requests
Description
Exceptional -
flow
Use case ID 06
Use case Users can view the specific weather condition of a specific place on
description that specific day
3
Users must be signed in
Location setting must be turned on
Main flow 1. The system identifies who is logged in into the system and
opens the booking page according to their identification.
2. Click the booking button.
3. Choose a destination
4. View weather condition of that destination
5. Book for the trip if it is suitable for the user.
Exceptional -
flow
Include -
Use case ID 07
Use case Users can access their location through the app
description
3
screen
3. User can track its location and get direction to a specific
destination
Include -
Use case ID 08
Use case Users can get full description of a specific place byscanning the QR
description code placed on the attraction area
3
flow
Use case ID 09
Use case Users can view their travel and transaction history
description
Exceptional -
flow
3
Use case name Manage services
Use case ID 10
Actors Admin
Use case ID 11
Use case description Users can review the services provided for them and rate the
app in general
3
Pre-condition Internet connection must be available
Users must install the app on their smart phones
Users must be signed in
User must actually go to a trip
Main flow 1. The system identifies who is logged in into the system
and opens the booking page according to their identification
2. Choose travel history on the account page
3. Choose feedback option
Include Rate
Business rule -
Table 3.24: feedback and rate usecase description
The object model is a description of an object-oriented architecture, including the details of the
object structure, interfaces between objects, and other object-oriented features and functions.
4
Class Attributes Operations Description
-Block Account ()
-verify transaction
()
-update service ()
-add service ()
4
Booking -booking id: int - add booking () -this allow user
to choose their
-booking type: -edit booking () desire booking
preference
string -delate booking ()
4
Tour place -place id: int -view description -allow users to
() search the place
-place name: int
they want to visit
-place type: int -scan place () and view
description of the
-place address: int -search place ()
place they are
visiting by
-place description int
scanning the QR
code placed on
the attraction
site.
Payment -pay telebirr () -Allow users to
-id: int pay for the service
-pay CBE () they get easily
-payer id: int
-transaction report ()
-transaction amount:
-select payment ()
float
4
3.5.2 Class Diagram
4
3.5.3 Dynamic Model
The dynamic model describes those aspects of the system that are concerned with the time and
sequencing of events. This model specifies how the state of events occurs when certain operations
are performed. Once the main scenarios are modeled, various events on objects that are needed to
support executions corresponding to the various scenarios are known. For objects, events are a
request for an operation.
A sequence diagram shows object interactions arranged in time sequence. It depicts the objects and
classes involved in the scenario and the sequence of messages exchanged between the objects
needed to carry out the functionality of the scenario.
4
Figure 3.3: User registration sequence diagram
4
Figure 3.4: Login Sequence diagram
4
Figure 3.5: update profile sequence diagram
4
Figure 3.6: Update service sequence diagram
4
Figure 3.7: Delete service sequence diagram
5
Figure 3.8: add service sequence diagram
5
Figure 3.9: manage Reservation sequence diagram
5
Figure 3.10 Booking sequence diagram
5
Figure 3.11: place description sequence diagram
5
3.6.2 Activity Diagram
5
Figure 3.13: Sign up activity diagram
5
Figure 3.14: Add service activity diagram
5
Figure 3.15: Delete service activity diagram
5
Figure 3.16: Manage Reservation activity diagram
5
Figure 3.17: Place description activity diagram
6
Figure 3.18: update service activity diagram
6
Figure 3.19: Booking activity diagram
6
3.6.3 State chart Diagram
The state diagram specifies how the class will handle events depending on their current state.
6
3. Scanning in state diagram
6
5. Hotel/Guesthouse reservation in state diagram
6
Chapter Four: System Design
Systems design is the process of defining elements of a system like modules, architecture, components and
their interfaces and data for a system based on the specified requirements. It is the process of defining,
developing and designing systems which satisfies the specific needs and requirements of a business or
organization.
System Analysis is the process that decomposes a system into its component pieces for the purpose of
defining how well those components interact to accomplish the set requirements.
The purpose of the System Design process is to provide sufficient detailed data and information about the
system and its system elements to enable the implementation consistent with architectural entities as defined
in models and views of the system architecture.
This chapter focuses on changing the analytical model into the design model, which takes into consideration
the non-functional needs and constraints outlined in the previous sections on problem definition and
requirement analysis.
The purpose of the System Design is to supplement the system architecture by providing information and
data useful and necessary for implementation of the system elements. It goes in detail of the process of
developing, expressing, documenting, and communicating the realization of the architecture of the
system through a complete set of design characteristics described in a form suitable for implementation.
Some required goals are deduced after analyzing and comprehending the functional and non-functional
requirements of this document, these objectives will aid in determining if the system delivers what the system
design promised at the conclusion of development.
6
In order to create an excellent product, designers must overcome several obstacles. It must be
right according to the requirement; it should be flexible, robust, reusable and efficient to use
Robust - A design or system is robust if it tolerates misuse without catastrophic fault-tolerance. Includes bad
data, wrong use, bad environment, and bad programming.
Flexibility - Requirements may change during or after the project.
Reusability - Reuse object code.
• Reuse source code. Reuse patterns of designs.
Efficiency - is often achieved by writing clever algorithms and data structures. Needs a good education in
this area.
6
4.4 Proposed System Architecture
Response
Request
6
solution domain, we decompose a system into simpler parts, called subsystems. In Our system, there are
five sub system decomposition.
6
4.6 Subsystem decomposition description
7
Data Management Subsystem. This is a subsystem responsible Data Storage
with data management tasks Data Access
like storage, Message
update and retrieval
requests triggered by
the subsystems.
Data Storage: This class is
responsible to handle persistent
data storage activities. Data
Access: The actual data
manipulation activity will be
carried out though this class.
This class will serve all data
entry and retrieval activities in
the system. Message: Errors,
warning and confirmation
messaging activities related to
data entry and retrieval will be
carried on this class.
7
4.7. Persistent Data Management
7
Figure 4.5: Mapping Notification object
7
Figure 4.7: Mapping Admin object
7
Figure 4.9: Mapping Payment object
7
Figure 4.11: Mapping Booking object
7
• Describe the organization and relationships of the components.
7
4.9. Database Design
7
4.10. Access Control
In the proposed system the actors have different privileges. The privileges of each actor are listed below.
7
Manage accounts
Manage transaction
Notify, View list of reported trips and reservations
8
Figure 4 . 1 6 : Register and Login Page
8
Figure 4 . 1 8 : Booking, hotel and payment
8
Figure4.20 : Location Page
8
Figure 4 . 2 1 : Transportation booking and payment
8
Figure 4 . 2 3 : Notification
8
Figure 4.25 : change password
8
Figure 4 . 2 7 : Edit and delete page
8
Chapter Five Implementation
5.1 Overview
This section aims to define the information system development process, whether the system is
operational and being utilized, and whether the system satisfies quality standards. Integrating system
functionality is the process of implementation. The functional and non-functional needs of the system are
implemented by our project.
To do our system we have used coding standards Which coding standards is the collection of rules and
guidelines that determine the programming style, procedures, and methods for a programming language or
the development of software and hardware based on functional and non- functional requirements of the
project.
• It improves readability, and maintainability of the code and it reduces complexity also.
5.3 Prototype
Client-side: The mobile application is installed at the client-side. It is responsible for accessing our
system on the user's device.
8
Server-side: This is a program that runs on a server dealing with the generation of content on a
mobile application.
1. Access/Write a file on the server.
2. Process user input.
3. Database querying and operation.
4. Structuring the application
5. User authentication
5.2.1 Client-Side
This is the part of the application which runs on the user’s machine. Since users have
different kinds of machines with different kinds of capacity, client performance should be
optimized as much as possible. The client-side implementation of this project consists of a
mobile app.
Mobile app
Flutter, a Google cross-platform mobile app development framework, is used to create the mobile app.
This makes it possible for us to create apps both Android and iOS from a single code base, improving
maintainability. The app also interacts with our backend server and a number of other services to
display a variety of information, including Tour Detail, location, Account information, and much
more.
React is a free and open-source front-end JavaScript library for building user interfaces based
on components. It helps us build the admin web page.
This is the part of the application where the client apps and devices request services from the
server and the server returns the requested query or function to the aforementioned apps and
devices. The server-side implementation was carried out using the following technologies
NodeJS: is an interface that two computer systems use to exchange information securely over the
internet.
Google weather API: These APIs enable developers to build applications for their users that
can access the latest weather information from a variety of sources. With the help of this API, we
can
9
access current conditions, hourly and daily forecasts as well as long-term outlooks with just a few
lines of code..
MongoDB: NoSQL database program, which uses JSON-like documents with optional schemas.
Payment Systems: Santim-pay is a platforms for digital payment. By using this services, the
user can recharge his/ her wallet by executing a payment transaction. In turn, the server fetches
new transactions every minute automatically from its payment gateways.
Google Map Platform: The Google Maps Platform is a set of APIs and SDKs that allows
developers to embed Google Maps into mobile apps and web pages, or to retrieve data from
Google Maps.
RestFul API: an architectural style for an application program interface (API) that uses HTTP
requests to access and use data. It is an interface that two computer systems use to exchange
information securely over the internet.
Azure Cloud: is used for hosting API.
Postman: is an API development tool which helps to build, test and modify APIs. Almost any
functionality that could be needed by any developer is encapsulated in this tool.
Swagger: helps users build, document, test and consume RESTful web services. It can be used to
design an API before any code is written
5.5. Deployment
iTOUR has 2 ways of deployment, using google cloud service for the mobile app and webpage and azure cloud
service for the server side. The system expects millions of users be connected to the network.
9
Page controller This is a class which will direct the user to
each intended page according to the user
actions.
API gateway A gateway to the mobile app so that the
server can provide service.
Payment service Is the service that controllers and
validates every payment transaction on
the system
9
Chapter Six: Testing Plan
6.1 Overview
This section will outline the test protocols, resources, and test cases that will be used to guarantee an error-free
platform by putting the specified processes into practice.
● By testing out all possible scenarios
● By listing all the recommended test requirements
● By carrying out user testing.
6.2 Scope
The overall testing plan will include testing all the modules individually and the integration of the modules.
The unit tasks of this testing documentation is:
● Test the usability of all platforms (Mobile App + Admin Web Page)
● Test the functionality of all features employed in all platforms
● Test the systems tolerance for faulty data
6.3 Resource
For the testing process, our primary sources are the human resource, such as Test team and Developer
and Software resources such as Test tools, Test dataand Testing environment
6.4 Schedule
9
2. Test Design:
June 13, 2023 to June 16, 2023
3. Test Development:
June 16, 2023 – June 19, 2023
4. Test Execution:
June 21, 2023
5. Test Evaluation:
June 22, 2023 – June 23, 2023
The listing below identifies those items (use cases, functional requirements, non-functional requirements) that
have been identified as targets for testing. This list represents what will be tested.
To test this application we used the following steps:
1. Unit Testing
Test utility functions
Write and execute unit tests for specific functions.
2. Widget Testing
Test UI components and their interactions
Validate Behaviors under scenarios.
Perform widget tests after implementing UI changes.
3. Integration Testing
Test integration between different components
Validates the data flow, navigation and overall functionality
9
Execute test
4. Manual Testing
To evaluate user experience, we use manual testing
Test on both portrait and landscape modes
Test on different screen sizes
Test edge cases and flows and error scenarios
Regression test after bug is fixed
3. Data Handling:
Test data retrieval and storage from local or remote sources.
Verify proper handling of empty or invalid data.
Test data synchronization and conflict resolution in case of offline mode.
4. Network Connectivity:
Test app behavior when there is no internet connection.
Validate error handling and messaging related to network failures.
5. Error Handling:
Verify that appropriate error messages are displayed to the user.
Validate error logging and reporting mechanisms.
6. Performance Testing:
9
8. Compatibility Testing:
Test app compatibility across different versions of Flutter and its dependencies.
Verify app behavior on different operating systems (iOS, Android) and versions.
Test compatibility with various device models and configurations.
9
CHAPTER SEVEN: USER MANUAL
9
Figure 7.3 Payment and confirmation
9
Figure 7.5 Favorite page of our system
9
7.2 Git structure and version control
The systems version is controlled using git and Github. Git is a distributed version control system that tracks
changes in any set of computer files, usually used for coordinating work among programmers collaboratively
developing source code during software development. It helps you keep track of code changes and is used to
collaborate on code.
In Git, a repository refers to your entire project. Within a single Git repository, you can have multiple
branches. All Git repositories in which at least one commit has been made have at least one branch, which is
named the master branch by default.
1
Figure : itour API
1
Figure : itour user interface
We leveraged Postman, a powerful API testing tool, to ensure the reliability and functionality of our project's API.
With its user-friendly interface and extensive features, Postman streamlined our testing process. We created a
comprehensive collection of requests, customized headers and parameters, and validated responses with ease.
Postman's authentication support and collaboration features further enhanced our testing efforts. Overall,
Postman played a crucial role in delivering a robust and reliable API for our project.
Figure : Postman
1
CHAPTER EIGHT: CONCLUSION AND RECOMMENDATION
8.1 Conclusion
Our project aims to develop a mobile tourist guide system using different technologies, catering to the growing
number of individuals engaging in recreational and entertainment tours. By providing features such as hotel
reservations, real-time weather and location updates, heritage information by scanning QR code placed on the
area of visit, and personalized recommendations, we strive to address the challenges faced by tourists today.
Through this system and application, we hope to empower travelers with timely and comprehensive
information, enhancing their overall travel experiences.
8.2 Recommendation
During the development of our system, our team and advisors encountered various challenges and successfully
addressed them. Based on our experience, we have a few recommendations for those undertaking similar
projects. We recommend incorporating additional features that were not included due to time constraints, such
as allowing users to share their experiences by posting images within the system. This feature will enable
users to visually capture and share memorable moments, enhancing engagement and fostering a sense of
community among participants. By integrating this feature, the tour management system can offer a more
immersive and interactive experience for users
1
1
Reference
UML diagram - everything You Need to Know About UML diagrams. (n.d.).
Smartdraw., https://www.smartdraw.com/uml-diagram/
Introducing Types of UML Diagrams | Lucidchart Blog. (2020, May 13). Lucidchart.
https://www.lucidchart.com/blog/types-of-UML-diagrams https://www.tutorialspoint.com/index.html
1
1