Sie sind auf Seite 1von 75

Roshan Safar

A website for tourism planning

Final Year Project– Final Report


Session 2013-2019

A project submitted in partial fulfillment of the


COMSATS-Lancaster Dual Degree
of
BS in Computer Science / Software Engineering (CUI)
BS in Computing / Software Engineering (LU)

Department of Computer Science


COMSATS University Islamabad, Lahore Campus
24 June 2019
Project Detail
Project ID (for office
use)
[] Development [ ] Research [ ] R&D
Type (Nature of project)

Area of specialization Web Development

Project Group Members

Sr.# Reg. # Student Name CGPA Email ID Phone # Signature

DDP-
(i) FA13- Awais Khan Awi.khan02@gmail.com 0320-4824946
2.23
BCS-022
Name & Signature of Batch Advisor Mrs. Sana Rizwan
(If students are eligible for FYP)

Plagiarism Free Certificate


This is to certify that, I am Awais Khan S/o Ahmed Raza, group leader of FYP under registration
no CIIT/DDP/FA13/BCS/022/LHR at Computer Science Department, COMSATS Institute of
Information Technology, Lahore. I declare that my FYP proposal is checked by my supervisor and
the similarity index is ________% that is less than 20%, an acceptable limit by HEC. Report is
attached herewith as Appendix A.

Date: 17/09/18 Name of Group Leader: Awais Khan Signature: _____________

Name of Supervisor: Atif Saeed Co-Supervisor (if any): Shahid Bhatti

Designation: Assistant Professor Designation: Assistant Professor

Signature: _____________________ Signature: _____________________

HoD: _____________________
Signature: _____________________
Abstract
Now a days, a lot of people like to travel to different places for recreation. They often plan
a trip and visit beautiful places. It provides them peace of mind and they get a break from
their hectic routines.
Tourism in Pakistan is not in trend in spite of the fact that there are a lot of beautiful places
in Pakistan. Terrorism, security concerns and other financial situation are some of the main
reasons for this. Keeping in view the poor situation of tourism in Pakistan, aim of this
website is to fulfill all the requirements of people who want to plan a tour. This website
can play an essential role in portraying a better image of the culture in Pakistan a well, by
attracting foreigners from all over the world.
This website assists people in their tour planning as they will be able to plan a tour
according to their interests. Option to plan a customized tour will be provided if they don’t
like the existing plans. Tourists will be able to get booking information about the
guestrooms available and they can also give reviews about the places visited. Multiple
packages with different pricing plans will be offered as well.
Contents
Roshan Safar A website for tourism planning 1
Final Year Project– Final Report 1
Session 2013-2019 1
Plagiarism Free Certificate 2
Abstract 3
Figure List 6
Table List 7
1 Chapter 1: Introduction 8
Brief Introduction 8
Problem Statement 8
Constraints and Assumptions 9
Constraints 9
Assumptions 9
Objectives 9
To provide a website that allows user to: 9
And to enable an agent to: 10
Some other objectives 10
Motivation and Scope: 10
Methodology: 11
Related Subjects: 11
Tools/IDE 11
2 Chapter 2: Requirement Analysis 13
Literature Review: 13
Tripadvisor.com 13
Kayak.com 13
Skyscanner.net 13
Makemytrip.com 13
Aroundpakistan.com 14
Tourplanner.pk 14
Travelo.pk 15
FindMyAdventure 15
Stakeholders List: 16
Admin: 16
Agent: 16
User: 16
Functional requirements 16
Admin 16
User: 17
Agent 19
Non-Functional Requirements 20
3 Chapter3: Design & Architecture 21
Use Cases: 21
User 21
Use case: Agent 22
Use Case: Admin 23
Use Case Description: 24
Sign Up: 24
Login 25
Website Surfing 26
View of City 27
View of Hotel 28
Calculation of Budget 29
Social Media Sharing 30
Maps Exploration 31
Route Selection 32
Administrator Login 33
User Management 34
Modify Cities 35
Modify Popular Places 36
Modify Images 37
Agent Login 38
Add Images 39
Add Popular Places 40
Modify Hotels 41
Add Hotels 42
Test Cases: 43
Registration: 43
Login 44
Book a tour 45
Profile Update 46
Image Uploading 47
Add Transport 48
Add Hotel 49
Add Package 50
Content Modification 51
Logout 52
4 Chapter 4: Diagrams 53
Sequence Diagrams 53
Sign up 53
Login 54
Location Search 55
Hotels 56
Add City 57
Famous Sites 58
Activity Diagram: 59
Signup 59
Login 60
Track Location: 61
Add an image 62
Add Transport 63
Add Package: 64
Collaboration Diagram 65
View/Book a package: 65
Add Package: 65
Add an Image: 66
Add Transport: 66
Add Hotel: 67
Update Hotel: 67
Update Package: 68
Update Transport: 68
Database Diagram 69
70
5 Chapter 5: Conclusion: 71
Issues faced and learnt lessons: 71
Future Work: 71
6 REFERENCES 73
Figure List

Figure 1:AroudPakistan.com ..........................................................................................................14


Figure 2:User Use Case ..................................................................................................................21
Figure 3:Agent Use Case ................................................................................................................22
Figure 4:Admin Use Case ..............................................................................................................23
Figure 5 Sign-up .............................................................................................................................53
Figure 6 Login ................................................................................................................................54
Figure 7 Location Search................................................................................................................55
Figure 8 Hotels ...............................................................................................................................56
Figure 9 Add city ............................................................................................................................57
Figure 10 Famous Sites ..................................................................................................................58
Figure 11: Signup ...........................................................................................................................59
Figure 12: Login .............................................................................................................................60
Figure 13:Track Location ...............................................................................................................61
Figure 14:Add an image .................................................................................................................62
Figure 15:Add Transport ................................................................................................................63
Figure 16:Add Package ..................................................................................................................64
Figure 17:View/Book a package ....................................................................................................65
Figure 18:Add Package ..................................................................................................................65
Figure 19:Add an Image .................................................................................................................66
Figure 20:Add Transport ................................................................................................................66
Figure 21:Add Hotel .......................................................................................................................67
Figure 22:Update Hotel ..................................................................................................................67
Figure 23:Update Package ..............................................................................................................68
Figure 24:Update Transport ...........................................................................................................68
Figure 25:Database .........................................................................................................................70
Table List

Table 1:Admin FR ..........................................................................................................................16


Table 2:User FR .............................................................................................................................17
Table 3:Agent FR ...........................................................................................................................19
Table 4:NFR ...................................................................................................................................20
Table 5:Signup Use Case Description ............................................................................................24
Table 6:Login Use Case Description ..............................................................................................25
Table 7:Website Surfing Case Description ....................................................................................26
Table 8:View of city Use Case Description ...................................................................................27
Table 9:View of Hotel Use Case Description ................................................................................28
Table 10:Calculation of Budget Use Case Description ..................................................................29
Table 11:Social media sharing Use Case Description ....................................................................30
Table 12:Maps Exploration Use Case Description.........................................................................31
Table 13:Route Selection Use Case Description ............................................................................32
Table 14: Administrator login Use Case Description .....................................................................33
Table 15:User management Use Case Description ........................................................................34
Table 16:Modify Cities Use Case Description ...............................................................................35
Table 17:Modify Popular places Use Case Description .................................................................36
Table 18:Modify Images Use Case Description .............................................................................37
Table 19:Agent login Use Case Description ..................................................................................38
Table 20:Add images ......................................................................................................................39
Table 21:Add popular places Use Case Description ......................................................................40
Table 22:Modify Hotels Use Case Description ..............................................................................41
Table 23:Add hotels Use Case Description ....................................................................................42
Table 25:Login Test Case...............................................................................................................44
Table 26:Book a tour Test Case .....................................................................................................45
Table 27:Profile Update Test Case .................................................................................................46
Table 28:Image uploading Test Case .............................................................................................47
Table 29:Add TransportTest Case ..................................................................................................48
Table 30:Add Hotels Test Case ......................................................................................................49
Table 31:Add Package Test Case ...................................................................................................50
Table 32:Content Modification Test Case ......................................................................................51
Table 33:Logout Test Case .............................................................................................................52
1 Chapter 1: Introduction

Brief Introduction

People travel to have a break from their hectic routine as it provides pleasure, relaxation of
mind and a lot of knowledge. Tourism is an industry popular on a global level. Many
countries have adopted tourism as a major source of income and it has a major impact on
their economy. The industry of tourism suffered on a global scale due to world economic
slowdown in 2008 but finally, it is much better now once again.
There a lot of tourism companies who provide different packages for different places,
categorized by many aspects like fares, restroom facilities and service charges etc. As
Pakistan is a rich in culture, moral values and different colours of life and it also has a lot
of beautiful natural places to visit, the World Economic Forum’s travel and tourism
competitiveness report ranked Pakistan as one of the top countries for tourism [2]. Tourism
in Pakistan has been a major source of economy but it was disturbed by terrorism [1]
activities and Islamic states have suffered [3]. However, it is becoming popular once again
as the government has solved the issues that were causing its downfall. Much improved
security situation has helped increase the number of tourists arriving in Pakistan by 300%
[4]. As a result, there should be some work towards the betterment of tourism by providing
trip planning.
User will also be able to customize his tour plan according to his own interest, financial
status and location on website. This will assist the tourists throughout their whole tour.

Problem Statement

A person who wants to travel to different locations in Pakistan faces a lot of issues such as
transport booking, hotel booking and he does not know much about places of interest in a
specific area. So, there should be a website where he can book a hassle-free tour with
customisable packages. There doesn’t exist many systems/applications that allow the travel
agents to run their business online and attract different customers all over from Pakistan.
The presence of too many advertisements in existing systems and flocked interactive
experience is less user-friendly. Existing systems have a user interface that makes a user
confused about the whole process and do not clearly depict the features of the products
along with their usage. This website will save a lot of time for tourists. People don’t have
to manually visit travel agents or transport office and they will be able to avoid visiting
hotels as well. Thus, it will save a lot of effort.

Constraints and Assumptions

Constraints

 All the tasks must be finished within their respective deadlines


 None of the functionalities should deviate from the scope of the project
 Lack of essential software etc.

Assumptions

 Resources must be available


 All the members of project must be available
 Individual skills must increase
 Project scope must be clearly stated and explained
 Availability of technologies and tools

Objectives

To provide a website that allows user to:


 Find different tour packages
 Book/plan a tour
 Locate famous places easily through search
 Book/select Transport
 Book restrooms
 Use make-a-trip feature to get a package that suits his needs
 Use budget calculator feature to get an estimate of the cost in custom packages
And to enable an agent to:
 Add or modify packages
 Add or modify Transport
 Add or modify hotels
 Check location history of tourist
Some other objectives
 Provide a hassle-free booking procedure
 Reduce the cost, time and effort of the user
 Portray a better image of the country by attracting more people towards culture and
tourism

Motivation and Scope:


Now a days, People often visit other places for recreation of mind and body and to take a
break from their hectic routine. Tourists from all around the world use tourism websites to
plan their tours. Following this trend, motivation for this website lies in making it easier
for tourists to find the locations according to their interests and plan their tours in a hassle-
free manner. There are a lot of websites for tourism [5] but in Pakistan, there are only a
few websites that provide quality services and are unattractive for tourists from other
countries [6][7]. So, this website will try to resolve these issues by providing better services
and it can be a source to portray Pakistan as a secure place to visit. Pakistan is an
agricultural country and it also has abundance of minerals so tourism is very important in
providing more exportation and for that, international tourists must feel attraction in
visiting Pakistan. This website is a complete solution to the problems that tourists face now
a days such as lack of information about places, security concerns and financial
circumstances.
Methodology:

Development of this website is based on Agile model because this model does not require
full requirement specifications for initiation of development. The main benefit of this
approach for this website development is that it begins by identifying the requirements and
then developing just a piece of the software. Then, it can be inspected to find further
specifications. This cycle is repeated and as the website is based on the user feedback.
Agile model is chosen for this project because it provides iterative enhancements, resolving
uncertainties, flexibility and speed. It guarantees that a modification will always be
welcomed. Quickness and quality assurance are main advantages of Agile method and it is
based upon regular feedback from clients. It can easily adapt with ever-changing
specifications.

Related Subjects:

 Object Oriented Programming


 Software Engineering-I
 Software Engineering - II
 Human Computer Interaction
 Database Systems
 Web Technologies

Tools/IDE

Following modules will used in development of this website:


 Ruby on Rails
 Postgres Database
 HTML
 CSS
 Activating
 JavaScript, jQuery, Ajax
 Omni AUTH v2 for Social Sign On
 Devise for User Authentication
 Pundit for User Authorization
 MoD Machine for Roles
 Pagination using Will Paginate
 Carrier Wave for handling file uploads
 Search Kick with Elasticsearch for search
 Risqué for schedular
 Puma for server management
 Stripe for payments
 Captcha v2 from google to avoid botnets
 Airbrake for error monitoring
 Geocoder for Lat/Long functionality of places and addresses
2 Chapter 2: Requirement Analysis

Literature Review:

This website aims to help people who want to visit different recreational places in Pakistan.
Tourists face a lot of issues when travelling. This website will assist them with planning,
booking and it will provide a hassle-free tour plan.

Here are some of the existing websites for tourism in Pakistan:

Tripadvisor.com
It is world’s largest tourism website makes it easier for the people from all around the globe
to fully enjoy their tours. It covers approximately 8.1 million accommodations, restaurants
and airlines. It helps travellers to decide where to start, how to plan their tour, things to do
etc. (TripAdvisor, 2018)

Kayak.com
It offers meta-search function to provide better results in tour planning. From a small setup,
they have grown to be one of the most popular tourism websites.

Skyscanner.net
They claim to compare hotels, flights and transportation from a lot of providers. It was
founded in 2003 in UK and they do not ask for any commission from travellers.
(skyscanner.net, 2018)

Makemytrip.com
It is the most famous website in India for planning tours. They claim to meet travellers’
expectations by using latest technology. It also offers discounts in tours. The design of the
website is not too good and attractive but still, their services make them the first choice for
traveller.
Aroundpakistan.com
It is a website about tourism in Pakistan. Its objective is to provide comprehensive and
detailed information on the major tourist attractions in Pakistan. They also have added
categories on local crafts and cuisine to showcase the rich cultural heritage of Pakistan.
This website is very informative and interesting. This website is also in Chinese and
Japanese languages. The main features of Aroundpakistan.com are:
 Ad-Free
 Usage of visual aids
 Based on different cities in Pakistan
 Easy to use

Figure 1:AroudPakistan.com

Tourplanner.pk
It is an online travel portal catering to the inbound needs of Pakistani travellers. Positioned
as a brand for “Hassle free travel”, it provides information, pricing, availability, and
booking facility for domestic and international Hotel bookings, International flight search,
holiday packages, and car rentals.
Travelo.pk
They are the private tour operators offering their services for the travel and tourism
activities in Kashmir and other regions of Pakistan having their offices in Karachi and Azad
Kashmir. It aims to provide its services for the people who want to visit the different tourist
destinations in Pakistan. Their aim is to make the different beautiful areas of Pakistan [6]
reachable so that the travellers may see the real beauty of Pakistan. Also, their goal is to
preserve its cultural heritage making the others familiarize with the culture of these
beautiful destinations.

FindMyAdventure
Founded in August of 2016 with offices in Karachi and Lahore, FindMyAdventure is
Pakistan’s first online marketplace for people to search, compare, discover and book trips,
tours and travel experiences across Pakistan at any price point. You can search, compare,
and book trips, tours and activities from their listings and join a well-arranged tour with
like-minded travel enthusiasts. Or, you can fill out 'Make My Adventure' form and they’ll
arrange the perfect trip for you!
Stakeholders List:

Admin:
Admin will manage the whole website. He can modify all content.
Agent:
Agent will be able to modify package details and other promotional offers.
User:
User will be able to search and select a package from multiple options and after that, he
can book his tour.

Functional requirements
Admin

Table 1:Admin FR

Req.
Requirements FR-Critical Analysis
no.

 Admin will enter his credentials to login the system

1 Log in  If there are multiple admins, any other admins can


only login once the previous admin has logged out

2 Profile update  Admin can update his/her profile

 Admin can view the profiles of the registered users


 Admin can view the activities (feedback, images,
3 Profile visit bookings etc.) of the users
 Admin can view the activities of the travel agents
 Credentials and other record of registered user, agents
4 Database and admin will be kept in a secure database

 System will allow the admin to manage the data


5 Data uploaded by agents and users

 Admin can get the location of users through their


consent
6 Location  Admin can track the location of transports offered in a
package

Content  Admin can modify any kind of content on his website


7
Modification

 Admin can logout from the website using logout


8 Log out button

User:

Table 2:User FR

Req. Requirements FR-Critical Analysis


no.

 User can search places

Search/Filter  User can search


1
 User can use provided filters for packages

2 Uploading  User can share reviews


 User can upload images

 User can login using his credentials

 System will check his credentials from database and if they match,
3 Login/Logout he will be logged in otherwise a message will be shown telling him
that his entered data is invalid

 User can log out using logout button

 System will save and maintain all the data of user


4 Database record
 Travel and booking history will also be maintained

5 Profile update  User can update his profile

 User can view multiple available packages


6 View/Selection
 User can select a package including transport and hotels as well

 User can book a tour using provided packages


Booking and
7
budget calculator  User can use budget calculator

 User can select from different payment methods


8 Payment
 After successful payment, he will get the receipt
Agent

Table 3:Agent FR

Req. Requirements FR-Critical Analysis


no.
 Agent will enter his credentials to login the system

Log in
1  If there are multiple agents, any other admins can only
login once the previous admin has logged out

2 Profile update  Agent can update his/her profile

 Agent can view user bookings


Profile visit
3
 Agent can view user profile

 Agent can add new places

 Agent can add new pictures


Content
4 Modification
 Agent can add new packages

 Add can modify previous places, pictures and packages

5 Logout  Agent can logout from the website using logout button
Non-Functional Requirements

Table 4:NFR

1 Performance

1.1 System will be able to solve user issues quickly and in an efficient way

1.2 System will load the webpage in less time


2 Security

Any info about user, admin or the agent shall not be leaked and will be kept securely
2.1
in database

2.2 More than one database backups


2.3 Sensitive data can only be accessed by authorized persons

3 Reliability

3.1 System shall perform in every condition; no crashes will occur

Proper reasons will be provided in case of any bug and it will be solved
3.2
immediately

4 Discoverability
Important features will be presented on homepage, thus making it a user-friendly
4.1
website
4.2 Any non-technical person can also understand and perform his tasks easily
5 Portability
5.1 System will support all the major browsers such as Firefox, Chrome, Opera etc.
5.2 This system will support all smartphones and desktops as well
6 Availability
6.1 Website will be accessible at any time
7 Maintainability
7.1 Website will always remain up-to-date
7.2 If something bad happens, website will be able to recover quickly
3 Chapter3: Design & Architecture
Use Cases:
User

Figure 2:User Use Case


Use case: Agent

Figure 3:Agent Use Case


Use Case: Admin

Figure 4:Admin Use Case


Use Case Description:

Sign Up:

Description:
This use case is about signup of a user who visits the website. Signup is required to avail
different features such as package selection, posting reviews or images and to checkout.

Table 5:Signup Use Case Description

Use case 1 Sign up

Main actor Any person who wants to sign up

 Make an account to enjoy all features.


 Give feedback
Objectives
 To get updates properly.
 To be able to get the facilities such as budget calculator

Prerequisites An internet connection is needed and sign up form must be filled

User is given new credentials once signed up, he enters them and
Desired Results
browses the website as a member.

 User enters correct credentials.


 Surfs the website.
Natural Flow
 Gains information about tourism
 Shares thoughts and reviews
 User could not login.
Unfavorable  Incorrect credentials
Outcomes  Unable to recall password
 Create new account
Login

Description:
This use case is about login of a user who visits the website. Login is required to avail
different features such as package selection, posting reviews or images and to checkout.

Table 6:Login Use Case Description

Use case 2 Login as a verified user


Main actor A person who has successfully signed up

 To reach the main page as a member


 To enjoy the premium services limited only to the users
Objectives
 Correct credentials entered, logged in
 Remains logged in till the end of the session manually

Prerequisites  Correct credentials

 Enter username/id and password correctly


Desired Results
 Access is granted to main page
 User uses valid credentials to login
 User logged in successfully
Natural Flow  User is now entered in website as a member
 User surfs the website
 While logged in, user can enjoy the features

 ID is missing
 User does not log in, instead, he tries to create an account
 User browses the homepage as a guest
Unfavorable Outcomes
 Invalid credentials
 Account gets blocked due to some reason
 Logged in with another account by mistake
Website Surfing

Description:
This use case is about web surfing. Any person who surfs the website is able to see available
packages, promotional offers, places etc.

Table 7:Website Surfing Case Description

Use case 3 Website surfing


Main actor A person who surfs the website
 To get information about tourism in Pakistan
 To find places of interest nearby (Terms and conditions apply)
 To get offers and packages for tour booking
Objectives  To perform customized searches (Terms and conditions
apply)

Prerequisites Knowledge of terms and conditions

A button, ‘visit site’ takes the user to homepage and then, he is


Desired Results
able to browser seamlessly

 User wants to know about the website and clicks on the visit
button
 Homepage is shown
Natural Flow  User chooses an option from tabs
 Chooses an option from drop down list
 User browses the website and know about rates and booking
plans and other information

 Some error displayed on homepage


 User selects sign up button by mistake
Unfavourable
 Internet connectivity is compromised
Outcomes
 User wants to access premium features but as a guest
View of City

Description:
This use case is about city view. A user can see or search different places in map.

Table 8:View of city Use Case Description

Use case 4 View of city


Main actor Website member/user
 User wishes to explore maps
 Web site must be fast and efficient
 Desired map is presented with areas of interest in it
 User can use the panning features to get precision
Objectives
 The distance between current location and the destination
will be provided
Prerequisites User is a member and he is currently logged in
In maps tab, user is shown maps of Provinces in Pakistan and
Desired Results
their cities as well
 User is logged in successfully
 Opens homepage through visit button and then chooses maps
list option from menu
Natural Flow
 Maps of Provinces and their cities are shown
 Map of the selected area is shown
 User can know about the place
 User was unable to login.
 User did not create an account
 Internet connectivity issues
Unfavourable
 Sign up option is selected
Outcomes
 Invalid credentials
 Opens something other than maps
View of Hotel

Description:
This use case is about Hotel view. A user can see the list of available hotels that are being
offered in a package by agent.

Table 9:View of Hotel Use Case Description

Use case 5 View of Hotel


Main actor Website member/user
 User wishes to explore Hotels
 Hotels of the desired city are shown
Objectives  User can have the details about fares
 Ratings and details of particular hotels are shown as well
Prerequisites User is a member and he is currently logged in
User can have the details about hotel fares, pictures and their
Desired Results
rating/reviews
 User is logged in successfully
 Famous hotels are shown in a list
Natural Flow
 User decides and then selects a particular hotel
 User gets info about that hotel
 User was unable to login.
 User did not create an account
 Internet connectivity issues
Unfavourable
 Sign up option is selected
Outcomes
 Invalid credentials
 Opens something other than hotels
Calculation of Budget

Description:
This use case is about budget calculation. A user can calculate the budget in make-my-trip
kind of offers.

Table 10:Calculation of Budget Use Case Description

Use case 6 Calculation of budget

Main actor Website member/user

 User sets current location and destination


 Places of interest and other details are presented about that
Objectives destination
 Budget calculator estimates the budget

Prerequisites User is a member and he is currently logged in

User browses homepage and then selects guidance for tourism.


Desired Results
Budget calculator correctly estimates the budget
 User must be logged in.
 User visits main web page. User clicks the tourism guide
button at the top.
Natural Flow  Enters details about the arrival and destination places.
 Tour guide is provided to the user.
 Travelling distance, travelling expense, hotels and restaurant,
famous sites etc. is shown.
 User could not log in
Unfavourable  User has not social media account
Outcomes  Internet connectivity issues
 Social account was blocked
Social Media Sharing

Description:
This use case is about social media sharing. A user can use social sites (after being logged
in) to post reviews and upload images etc.

Table 11:Social media sharing Use Case Description

Use case 7 Social media sharing

Main actor Website member/user

To post images, reviews and discuss about the tour on social


Objectives
media

User is a member and he is currently logged in and user must have


Prerequisites
some social media account
User will be able to post and share images after logging in his
Desired Results
social accounts

User signed in to his social account and received recent activity


Natural Flow
updates

 User could not log in


Unfavourable  User has not social media account
Outcomes  Internet connectivity issues
 Social account was blocked
Maps Exploration

Description:
This use case is about Map Exploration. This provides user the facility to know about places
that are being offered in packages. Their description, pictures and reviews etc will be offered.
Table 12:Maps Exploration Use Case Description

Use case 8 Maps Exploration

Main actor Website member/user

 User desires to explore cities


Objectives  User desires to have information about a particular city
 User desires to find his own location

Prerequisites User is a member and he is currently logged in

User can view and explore his desired map and he can also find
Desired Results
his own location

 User enters correct credentials


Natural Flow  User chooses the location to explore
 Website will show the location

 User did not log in properly


Unfavourable  User has not signed up yet
Outcomes  Internet connectivity issues
 User wants to explore prohibited areas
Route Selection

Description:
This use case is about Route selection. User can select from available packages or he can
also choose make-a-trip offer and define a route himself.

Table 13:Route Selection Use Case Description

Use case 9 Route selection

Main actor Website member/user

 User desires to plan a tour


 User can choose the desired tour from menu or he will choose
Objectives a location from map
 To find the distance between current location and the
destination

Prerequisites User is a member and he is currently logged in

Desired Results User gets a plan that best suits his needs and interest

 User logs in as a member


 He selects his current/arriving place
Natural Flow
 Selects areas of interest
 Selects destination

 User did not log in properly


Unfavourable
 User has not signed up yet
Outcomes
 Internet connectivity issues
Administrator Login

Description:
This use case is about login of an admin. He is asked to enter his credentials and upon
success, he gets logged in as an admin.

Table 14: Administrator login Use Case Description

Use case 10 Administrator login

Main actor Administrator

 To get logged in as an administrator


 Website maintenance and control.
Objectives
 Modify available content
 Perform upgrades

Prerequisites Must be logged in using administrator credentials

Administrator access is granted, modifies or control the


Desired Results
content
 Administrator credentials are accepted
Natural Flow  Manages user section
 Controls and modifies the data
 Administrator did not log in properly
Unfavourable
 Unable to recall password.
Outcomes
 Internet connectivity issues
User Management

Description:
This use case is user management by admin. Admin can log in their accounts with their
consent and then, he can modify their data. He can also resolve bugs this way.

Table 15:User management Use Case Description

Use case 11 User management

Main actor Administrator

 To control users’ data


Objectives.
 To manage their accounts

Prerequisites Must be logged in using administrator credentials

Desired Results Administrator controls accounts

 Data of the users is controlled properly


Natural Flow
 User accounts modified in desired manner
 Administrator did not log in properly
 Unable to recall password.
 Internet connectivity issues
Unfavourable Outcomes
 System crash
 Database crash
Modify Cities

Description:
This use case is about city related updates. An Admin can modify cities information
uploaded by an agent.

Table 16:Modify Cities Use Case Description

Use case 12 Modify cities

Main actor Administrator/Agent

 Updates locations and cities and their maps


Objectives.
 To modify website content

Prerequisites Must be logged in using administrator/agent credentials

Desired Results Administrator/agent updates data and the content successfully

 Data updated
Natural Flow
 Saved the changes made
 Administrator/agent did not log in properly
 Unable to recall password.
Unfavourable
 Internet connectivity issues
Outcomes
 Database crash
Modify Popular Places

Description:
This use case is about Places related updates. An Admin can also modify places information
uploaded by an agent.

Table 17:Modify Popular places Use Case Description

Use case 13 Modify popular places

Main actor Administrator

 Modify places and their maps


Objectives.
 To modify website content

Prerequisites Must be logged in using administrator credentials

Desired Results Administrator updates data and the content successfully

 Data updated
Natural Flow
 Saved the changes made

 Administrator did not log in properly


 Unable to recall password.
Unfavourable Outcomes
 Internet connectivity issues
 System crash
Modify Images

Description:
This use case is about image modification. An Admin can add, remove, edit any image he
wants.

Table 18:Modify Images Use Case Description

Use case 14 Modify Images

Main actor Administrator

 Modify images
Objectives.
 To modify website content

Prerequisites Must be logged in using administrator credentials

Desired Results Administrator updates data and the content successfully

 Data updated
Natural Flow
 Saved the changes made

 Administrator did not log in properly


 Unable to recall password.
Unfavourable Outcomes
 Internet connectivity issues
 System crash
Agent Login

Description:
This use case is about login of an Agent. He is asked to enter his credentials and upon
success, he gets logged in as an Agent.

Table 19:Agent login Use Case Description

Use case 15 Agent login

Main actor Agent

 To get logged in as an Agent


 Website maintenance and control.
Objectives
 Modify available content
 Perform upgrades

Prerequisites Must be logged in using Agent credentials

Desired Results Agent access is granted, modifies or control the content

 Agent credentials are accepted


Natural Flow  Manages user section
 Controls and modifies the data
 Agent did not log in properly
Unfavourable Outcomes  Unable to recall password.
 Internet connectivity issues
Add Images

Description:
This use case is about image modification. Agent can add, remove, replace an image. Agent
cannot modify image uploaded by an admin.

Table 20:Add images

Use case 16 Add Images

Main actor Agent

 Modify images
Objectives.
 To modify website content

Prerequisites Must be logged in using Agent credentials

Desired Results Agent updates data and the content successfully

 Data updated
Natural Flow
 Saved the changes made

 Image was uploaded by an admin


 Agent did not log in properly
Unfavourable Outcomes  Unable to recall password.
 Internet connectivity issues
 System crash
Add Popular Places

Description:
This use case is about places modification. Agent can add, remove, replace a place. Agent
cannot modify a place uploaded by an admin.

Table 21:Add popular places Use Case Description

Use case 17 Add popular places

Main actor Agent

 Modify places and their maps


Objectives.
 To modify website content

Prerequisites Must be logged in using Agent credentials

Desired Results Agent updates data and the content successfully

 Data updated
Natural Flow
 Saved the changes made

 Place was uploaded by an admin


 Agent did not log in properly
Unfavourable Outcomes  Unable to recall password.
 Internet connectivity issues
 System crash
Modify Hotels

Description:
This use case is about hotel related updates. An Admin can modify hotel information
uploaded by an agent.

Table 22:Modify Hotels Use Case Description

Use case 18 Modify hotels

Main actor Administrator

 Modifies hotel and their information


Objectives.
 To modify website content

Prerequisites Must be logged in using administrator credentials

Desired Results Adminiterator updates data and the content successfully

 Data updated
Natural Flow
 Saved the changes made
 Administrator did not log in properly
 Unable to recall password.
Unfavourable Outcomes  Internet connectivity issues
 Database crash
Add Hotels

Description:
This use case is about places modification. Agent can add, remove, replace a place.

Table 23:Add hotels Use Case Description

Use case 19 Add Hotels

Main actor Agent

 Adds hotel information


Objectives
 To modify website content

Prerequisites Must be logged in using Agent credentials

Desired Results Agent updates data and the content successfully

 Data updated
Natural Flow
 Saved the changes made

 Agent did not log in properly


 Unable to recall password.
Unfavorable Outcomes
 Internet connectivity issues
 Database crash
Test Cases:

A Test case consists of some conditions under which a tester will check whether a system
put to test satisfies requirements.

Registration:

Description:
This test case is created to test whether a user is able to register or not. It shows all the steps
that a user performs if he wants to get registered.

Test Case Id Test Case01: Registration

Actor User

Pre-Condition User will be able to register an account

Summary User wants to book a tour

 User Visited the website

 User clicked on signup option

Events
 User entered required credentials on form

 User clicked on submit option

Post-Condition: New account is registered


Login

Description:
This test case is created to test whether a user is able to login or not. It shows all the steps
that a user performs if he wants to login.

Table 24:Login Test Case

Test Case Id Test Case02: Login

Actor User

Pre-Condition Registered account

Summary User wants to sign-in

 User Visited the website

 User clicked on sign-in option

Events
 The user entered credentials

 User clicked on submit option

Post-Condition: User is logged in


Book a tour

Description:
This test case is created to test whether a user is able to book a tour or not. It shows all the
steps that a user performs if he wants to book a tour.

Table 25:Book a tour Test Case

Test Case Id Test Case03: Tour Booking

Actor User

Pre-Condition Must have an account

Summary User wants to book a tour


 User selects a package

 User gets package details

 User selected package


Events

 User entered payment and other details

 User clicked on book

Post-Condition: User booked a tour


Profile Update

Description:
This test case is created to test whether a user is able to update his profile or not. It shows
all the steps that a user performs if he wants to update his profile.

Table 26:Profile Update Test Case

Test Case Id Test Case04: Profile Update

Actor User

Pre-Condition Must have an account

Summary User wants to update his profile

 User opens profile

 User clicked on update option

Events
 User entered new details

 User clicked on submit option

Post-Condition: User update his profile


Image Uploading

Description:
This test case is created to test whether an agent is able to upload an image or not. It shows
all the steps that an agent performs if he wants to upload an image.

Table 27:Image uploading Test Case

Test Case Id Test Case05: Upload an Image

Actor Agent

Pre-Condition Must have an account

Summary Agent wants to upload an image

 Visits the agent dashboard

 Agent clicked on add image option

Events
 Agent selected the file

 Agent clicked on submit

Post-Condition: Agent uploaded an image


Add Transport

Description:
This test case is created to test whether an agent is able to add a transport or not. It shows
all the steps that an agent performs if he wants to upload an image.

Table 28:Add TransportTest Case

Test Case Id Test Case06: Add Transport

Actor Agent

Pre-Condition Must have an account

Summary Agent wants to add transport

 Visits the agent dashboard

 Agent clicked on add Transport option

Events
 Agent entered details

 Agent clicked on submit

Post-Condition: Agent added transport


Add Hotel

Description:
This test case is created to test whether an agent is able to a hotel or not. It shows all the
steps that an agent performs if he wants to Add hotels.

Table 29:Add Hotels Test Case

Test Case Id Test Case07: Add a Hotel

Actor Agent

Pre-Condition Must have an account

Summary Agent wants to add a hotel

 Visits the agent dashboard

 Agent clicked on add Hotel option

Events
 Agent entered details

 Agent clicked on submit

Post-Condition: Agent added a hotel


Add Package

Description:
This test case is created to test whether an agent is able to add a package or not. It shows
all the steps that an agent performs if he wants to add a package.

Table 30:Add Package Test Case

Test Case Id Test Case08: Add a Package

Actor Agent

Pre-Condition Must have an account

Summary Agent wants to add a package

 Visits the agent dashboard

 Agent clicked on add package option

Events
 Agent entered details

 Agent clicked on submit

Post-Condition: Agent added a package


Content Modification

Description:
This test case is created to test whether an admin is able to modify some content or not. It
shows all the steps that an admin performs if he wants to modify some content.

Table 31:Content Modification Test Case

Test Case Id Test Case09: Content Modification

Actor Admin

Pre-Condition Must have an account

Summary Admin wants to modify content

 Visits the admin dashboard


 Admin clicked on modify option
Events  Admin entered details
 Admin clicked on submit

Post-Condition: Admin modified content


Logout

Description:
This test case is created to test whether a user is able to logout or not. It shows all the steps
that a user performs if he wants to logout.

Table 32:Logout Test Case

Test Case Id Test Case10: Logout

Actor User

Pre-Condition Must have an account

Summary User wants to log out

 User clicked on logout option


Events

 User redirected to home

Post-Condition: User was logged out


4 Chapter 4: Diagrams

Sequence Diagrams

Sign up

Figure 5 Sign-up
Login

Figure 6 Login
Location Search

Figure 7 Location Search


Hotels

Figure 8 Hotels
Add City

Figure 9 Add city


Famous Sites

Figure 10 Famous Sites


Activity Diagram:

Signup

Figure 11: Signup


Login

Figure 12: Login


Track Location:

Figure 13:Track Location


Add an image

Figure 14:Add an image


Add Transport

Figure 15:Add Transport


Add Package:

Figure 16:Add Package


Collaboration Diagram

View/Book a package:

Figure 17:View/Book a package

Add Package:

Figure 18:Add Package


Add an Image:

Figure 19:Add an Image

Add Transport:

Figure 20:Add Transport


Add Hotel:

Figure 21:Add Hotel

Update Hotel:

Figure 22:Update Hotel


Update Package:

Figure 23:Update Package

Update Transport:

Figure 24:Update Transport


Database Diagram
Pak_Place_images
Place_Image_id
Place_Places_id
Place_Image_Url
Place_Image_descrp

Pak_Popoular_places
Popular_Id
Popular_Name Pak_Places
Place_id
Popular_Place_id
Place_Name
Popular_City_id
Place_descption
Popular_Img
Place_City_id
Polpular_descrp
Pak_Reviews
Place_X_Cordinate Place_Map_id
Review_id
Place_Y_Cordinate Review_Place_id
Review_City_id
Review_Place_rating
Review_City_rating
Review_Descrp
Review_User_Id

Pak_City
City_Id
City_Name Pak_City_Images
Image_id
City_Description
image_url
City_image_url
City_X_Coordinate City_Id

City_Y_Coordinate

Pak_Hotels
id
Name
[Deluxe Double bed]
[Business Club Double bed]
[Executive Club Double bed]
FacebookLink
City_id
ImageUrl

Figure 25:Database
5 Chapter 5: Conclusion:

Issues faced and learnt lessons:

The development of this website has been very difficult for me but on the other side, it was
interesting as well. I learnt a lot during the development of this website.

First issue was the collection of all the requirements of this website. But it was solved
immediately as I have worked on this project for a client and after his consent, I decided to
include it as my FYP. So, I arranged meetings and interviewed my client on regular basis
and it provided me the specifications. Moreover, my supervisor was of great assistance for
me.
Second, I started with PHP based framework. But after a lot of struggle, I decided to move
on to Ruby on Rails framework for development. For PHP CodeIgniter or even Laravel,
you first have to learn them properly. People would create their frameworks rather than
configuring old ones while Ruby is meant to make tasks easier by using pre-defined
libararies and it is more focused on conventions and it does not revolve around
configurations.
Third, I had to learn how to meet deadlines for the development of this website. In this
regard, my supervisor helped me a lot and he advised me divide my project into smaller
parts and then work on each chunk separately.

Future Work:

In future, there will be a lot of improvements based on user-reviews and agile methodology
used in development of this website also ensures that in future, this website can include
new features as well. Security of the system will also be enhanced because website contains
private and financial data of users and it is already the era of cyber-crime. In future, there
can be a recommendation feature based on AI. It will recommend new travel destinations
and transport and other things as soon as a user gets logged in the system, using his travel
history.
Moreover, there are also some chances that an IOS/Android app will be launched, later. It
will provide all the functionality of the web version as well as some other features can also
be expected such as discounts and more promotional offers can be made possible if a user
books his travel from the app. Website will also be launched properly in near future. In
future, travel history feature can also be introduced.
6 REFERENCES

1. Dudley, D. (2016). The Ten Countries Most Affected by Terrorism. [online]


Forbes.com: https://www.Forbes.com/sites/dominicdudley/2016/11/18/countries-
most-affected-by-terrorism/ [Accessed 20 Nov. 2018].

2. Jatoi, A. (2018). Tourism — the untapped potential of Pakistan - Daily Times. [online]
Daily Times. Available at: https://dailytimes.com.pk/228069/tourism-the-untapped-
potential-of-pakistan/ [Accessed 28 Nov. 2018].

3. Pakistantourntravel.com. (2016). Pakistan tour & travel. [online] Available at:


https://pakistantourntravel.com/ [Accessed 2 Sept. 2018].

4. Desk, I. (2017). 16 Pakistani tourist spots you must visit in 2016. [online]
DAWN.COM. Available at: https://www.dawn.com/news/1228738 [Accessed 10 Oct.
2018].

5. World Travel Guide. (2016). Pakistan - World Travel Guide. [online] Available at:
https://www.worldtravelguide.net/guides/asia/pakistan/ [Accessed 25 Oct. 2018].

6. Travel and Culture Services. (2014). Pakistan Travel Guide. Information about every
city of Pakistan. Travel Tours hotels. [online] Available at: https://www.travel-
culture.com/pakistan/ [Accessed 28 Sept. 2018].

7. Walton, J. (2019). tourism | Definition, History, Types, Importance, & Facts. [online]
Encyclopedia Britannica. Available at: https://www.Britannica.com/topic/tourism
[Accessed 2 Sept. 2018].
8. The Express Tribune. (2018). Pakistan ranked number one adventure travel destination
| The Express Tribune. [online] Available at: https://tribune.com.pk/story/1604280/1-
pakistan-ranked-number-one-adventure-travel-destination/ [Accessed 29 Nov. 2018].
75 of 75 24 June 2019

Das könnte Ihnen auch gefallen