You are on page 1of 152

TOURHUNT

Mateen Sajid (1780155)


Usama Aurangzeb (1780175)

Supervised by: Adil Majeed

In partial fulfillment of requirement for the degree


Bachelor of Science (Software Engineering)
Shaheed Zulfikar Ali Bhutto Institute of Science and Technology
Islamabad, Pakistan

FALL 2021
Revision History
Compiled By Checked By Date Reason for Change Version
Mateen Sajid Ms. Isma Masood 1 March 2021 Initial Version 1.0
Usama Aurangzeb Ms. Isma Masood 9 March 2021 Revised Scope & Features 1.1
Mateen Sajid Mr. Adil Majeed 18 March 2021 Revised Title, Introduction & Methodology 1.2
Usama Aurangzeb Mr. Adil Majeed 30 March 2021 Revised Chap 1 1.3
Mateen Sajid Mr. Adil Majeed 6 April 2021 Revised Process Model 1.4
Usama Aurangzeb Mr. Adil Majeed 8 April 2021 Revised Chap 2 1.5
Mateen Sajid Mr. Adil Majeed 9 April 2021 Revised Proposed Solution 1.6
Mateen Sajid Mr. Adil Majeed 10 April 2021 Revised Functional Requirements 1.7
Usama Aurangzeb Mr. Adil Majeed 25 May 2021 Revised Chap 3 1.8
Mateen Sajid Mr. Adil Majeed 28 May 2021 Revised Usecase Diagram 1.9
Mateen Sajid Mr. Adil Majeed 2 June 2021 Revised DFD Diagram 2.0
Usama Aurangzeb Mr. Adil Majeed 12 June 2021 Revised Usecase Diagram 2.1
Mateen Sajid Mr. Adil Majeed 12 June 2021 Revised ERD Diagram 2.2
Usama Aurangzeb Mr. Adil Majeed 10 Oct 2021 Revised Class Diagram 2.3
Mateen Sajid Mr. Adil Majeed 15 Oct 2021 Revised Class Diagram 2.3
Mateen Sajid Mr. Adil Majeed 16 Oct 2021 Revised Activity Diagrams 2.4
Usama Aurangzeb Mr. Adil Majeed 19 Oct 2021 Revised Deployment Diagram 2.5
Mateen Sajid Mr. Adil Majeed 28 Oct 2021 Revised Sequence Diagrams 2.6
Mateen Sajid Mr. Adil Majeed 2 Nov 2021 Revised Sequence Diagrams 2.7
Usama Aurangzeb Mr. Adil Majeed 12 Nov 2021 Revised Communication Diagrams 2.8
Mateen Sajid Mr. Adil Majeed 10 Dec 2021 Revised Chapter 7 2.9
Mateen Sajid Mr. Adil Majeed 18 Dec 2021 Revised Chapter 7 3.0
Mateen Sajid Mr. Adil Majeed 25 Dec 2021 Revised Test Cases 3.1
Usama Abbasi Mr. Adil Majeed 5 Jan 2022 Revised Chapter 8 3.2
Usama Abbasi Mr. Adil Majeed 5 Jan 2022 Revised Chapter Conclusion 3.3

ii
Project Overview
This Android-based Application is developed using Java language and Android Studio for
Android Operating Mobile phones. There will be three Users of the application which are
tourists, tour organizers, and partners. The main objective of this application is to allow tourists
to explore the variety of tour ads created by tour organizers and make bookings or payments,
allow tour organizers to organize a tour or post-tour ads to get bookings, and allow partners to
register their business in the application to get bookings.

iii
Dedication
Firstly, we dedicate our project to the creator Allah Almighty and dedicate to whom the world
owes its existence Muhammad (Peace Be Upon Him) and dedicate this to our beloved parents,
our extremely dedicated and generous teachers and supportive friends, their prayers always
pave the way to success for us.

iv
Acknowledgement
The requirements for the degree of Bachelor of Software Engineering.

Mateen Sajid Usama Aurangzeb


Contents
Revision History ii

Project Overview iii

Dedication iv

Acknowledgements

List of Figures vi

List of Tables vii

1 Introduction 1
1.1 Product Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Product Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2.1 Existing System Description . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Trip Advisor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.3 Tripit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.4 Tours and Travel: . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.5 Future System Usage Analysis . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 Problem Statement / Limitations . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5 Proposed Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5.1 Tourist Module: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5.2 Tour Organizer Module: . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5.3 Partner Module: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.6 Intended Market of Product . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.7 Intended Users of Product . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.8 Software Process Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.8.2 Justification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.8.3 Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.9 Project Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 SOFTWARE REQUIREMENTS SPECIFICATION 10


2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1 Document Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.2 Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Functional Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

i
CONTENTS ii

2.2.1 Functional Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 10


2.3 Non-Functional Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.1 Software Quality Attributes . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.2 Other Non-Functional Requirements . . . . . . . . . . . . . . . . . . . 13
2.4 Requirement Gathering Techniques Used . . . . . . . . . . . . . . . . . . . . 14
2.4.1 Brainstorming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4.2 Questionnaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4.3 Observation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.5 Time Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 SOFTWARE PROJECT PLAN 16


3.1 Deliverables of the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2 Software Project Management Plan . . . . . . . . . . . . . . . . . . . . . . . 16
3.2.1 Project Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2.2 Project Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3 Managerial Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3.1 Management Objectives and Priorities . . . . . . . . . . . . . . . . . 19
3.3.2 Assumptions and Constraints . . . . . . . . . . . . . . . . . . . . . . 20
3.4 Project Risk Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.4.1 Risk Management Plan . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.4.2 Risk Management Activities . . . . . . . . . . . . . . . . . . . . . . . 21

4 FUNCTIONAL ANALYSIS AND MODELING 26


4.1 Use Case Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.1.1 User Stories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.1.2 Individual Actor Use Cases . . . . . . . . . . . . . . . . . . . . . . . 28
4.2 Functional Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.1 Entity Relationship Diagram . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.2 Data Flow Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5 SYSTEM DESIGN 37
5.1 Structure Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.1.1 Class Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.1.2 Deployment Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.2 Behavioral Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.2.1 Activity Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.2.2 Sequence Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.2.3 Communication Diagrams . . . . . . . . . . . . . . . . . . . . . . . . 65
6 SYSTEM INTERFACE AND PHYSICAL DESIGN 70
6.1 System User Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6.1.1 Tourists Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.1.2 Organizers Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.1.3 Partners Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.1.4 User Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.1.5 Tourist Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.1.6 PartnerTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.1.7 OrganizerTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.1.8 TourAdTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.1.9 TourBookingTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.1.10 OrganizeTourTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

7 TEST PLAN 127


7.1 Objective of the Testing Phase . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.2 Levels of Tests for Testing Software . . . . . . . . . . . . . . . . . . . . . . . 127
7.2.1 Unit Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.2.2 Integration testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.2.3 System Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.3 Test Management Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
7.3.1 Design the Test Strategy . . . . . . . . . . . . . . . . . . . . . . . . . 128
7.3.2 Test Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
7.3.3 Test Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
7.3.4 Resource Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
7.3.5 Plan Test Environment . . . . . . . . . . . . . . . . . . . . . . . . . . 129
7.3.6 Schedule and Estimation . . . . . . . . . . . . . . . . . . . . . . . . . 129
7.4 Test Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
7.4.1 Test Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
7.4.2 Test Case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.4.3 Test Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7.4.4 Test Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
7.4.5 Test Case 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
7.4.6 Test Case 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.4.7 Test Case 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
7.4.8 Test Case 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

8 Conclusion 138
8.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
8.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
List of Figures
1.1 Prototyping Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.1 Milestone Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17


3.2 Gantt Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.3 Work Breakdown Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4 Critical Path Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.1 Use Case Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28


4.2 ERD Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.3 DFD LEVEL 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.4 DFD LEVEL 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.5 DFD LEVEL 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.1 Class Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37


5.2 Deployment Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.3 Signup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.4 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.5 Post Ad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.6 Organize Tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.7 Partner Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.8 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.9 Book Tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.10 Online Payment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.11 Bookings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.12 Manage Bookings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.13 Tour Reviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.14 View Tour Ads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.15 Search Tour Ads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.16 Signup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.17 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.18 Post Ad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5.19 Organize Tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.20 Partner Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.21 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.22 Book Tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.23 Online Payment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.24 Bookings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.25 Manage Bookings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

iv
LIST OF FIGURES v

5.26 Tour Reviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62


5.27 View Tour Ads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.28 Search Tour Ads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.29 Signup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.30 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.31 Post Ad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.32 Organize Tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.33 Partner Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.34 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.35 Book Tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.36 Online Payment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.37 Tour Reviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.38 Search Tour Ads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

6.1 Splash Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70


6.2 Home . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
6.3 Singup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.4 OTP Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.5 Forgot Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
6.6 Signin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
6.7 Tourist Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.8 Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.9 Tourist Home . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.10 Ad Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.11 Tour Weather Forecast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.12 Payment Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6.13 EasyPaisa Checkout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.14 JazzCash Forecast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6.15 Ticket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.16 Tour Organizer Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
6.17 Tourist Profile View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.18 Tourist Profile Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.19 Tourist Account Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.20 Tourist Update Email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.21 Tourist Update Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.22 Tourist Update Phone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
6.23 Organizer Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.24 My Ads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.25 My Organized Tours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
LIST OF FIGURES vi

6.26 Post Ad - 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.27 Post Ad - 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.28 Post Ad - 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.29 Post Ad - 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.30 Organize Tour - 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.31 Organize Tour - 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.32 Organize Tour - 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.33 Organize Tour - 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.34 Organizer Profile View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.35 Organizer Profile Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.36 Organizer Bookings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.37 Organizer Account Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.38 Organizer Update Email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.39 Organizer Update Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.40 Organizer Update Phone Number . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.41 Partner Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.42 Partner Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
6.43 Partner Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.44 Partner Hotel Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.45 Partner Hotel Booking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6.46 Partner Restaurant Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . 115
6.47 Partner Restaurant Booking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.48 Partner Bus Travel Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . 117
6.49 Partner Bus Travel Booking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.50 Partner Account Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.51 Partner Update Email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
6.52 Partner Update Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.53 Partner Update Phone Number . . . . . . . . . . . . . . . . . . . . . . . . . . 122
List of Tables
1.1 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Applications Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1 Time Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1 Project Deliverables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16


3.2 Roles and Responsibilities Table . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Impact Probability Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.4 Severity Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.5 Risk Analysis Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.6 Risk Response Planning Table . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.7 Rating Risk Likelihood Table . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

6.1 Tourist Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123


6.2 Partner Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.3 Tour Booking Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.4 OrganizeTour Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

7.1 Signup Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130


7.2 Login Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.3 Profile Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7.4 Tour Booking Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
7.5 Post Ad Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
7.6 Organize Tour Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.7 Partner Registration Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . 136
7.8 Weather Forecast Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

vii
Chapter 1

Introduction
1.1 Product Purpose
The Purpose of the system is to emerge the tourism industry in Pakistan. It is providing a
platform for tourists and tourism-based companies. This system will give opportunities to the
hospitality industry to earn the most from their businesses.

In today’s day and age people need a break from their busy life and want to spend time
with their friends and family by simply traveling but in search of hotels, restaurants they get
frustrated and, If they need to go through travels companies, they have to find these companies
as well. We want to make people’s travel experience more comfortable where anyone can book
a tour just by using an application and pay for it within the application and, if they don’t want to
go through tour companies, they can organize a tour of their own just by using an application.

It is hard for people to find tour ads on social media. The probability of seeing an advertisement
related to a tour is less on social media due to the variety of other category ads existing there
and, due to this reason tourism companies also get few bookings. This system will solve issues
on both ends using one application tourists will browse tour ads and, companies who will post
their tour ads will get bookings.

We are expecting that by the use of the system, tourism will flourish in Pakistan and, anyone
would be able to go on tours without facing any hassle. The Completion of the system will be
at the end of December 2021. For making it successful, we intend to launch it in the market and
do social media marketing or TV ads. By shifting to our provided platform, tourism companies
will get free from social media paid ads.

1.2 Product Scope


The scope is that a person can register as a Tourist, Tour Organizer, or Partner. The tour
organizer or tourist can organize a tour for any place in Pakistan just by choosing the date
and bus travel, hotel, and restaurants of their choice for the total number of people and, the tour
organizer can also post a tour ad on the application. Partners will be able to register their hotels,
buses, and restaurants on the application, which will be available as options while organizing
the tour and, partners will also have to manage the availability status using the application.
Tourists will be able to browse the tour ads posted by tour organizers and will be able to book
and pay for tours within the application.

1
CHAPTER 1. INTRODUCTION 2

Table 1.1: Abbreviations

Serial # Abbreviations Definition


1 IDE Integrated Development Environment
2 DB Database
3 FR Functional Requirement
4 NFR Non Functional Requirement
5 OTP One Time Password

1.2.1 Existing System Description


There are tons of applications that are working to facilitate the customers regarding restaurants
and hotel bookings, transportation bookings, and recommending the most visited and famous
destinations such as Trip-advisor, Tripit, Tours and travel, etc. These apps are used by people
who had planned their trips by themselves and, want to book hotels, restaurants before reaching
their destination.

1.2.2 Trip Advisor

Introduction: TripAdvisor.com is a travel website that assists customers in gathering travel


information, posting reviews and opinions of travel-related content and engaging in interactive
travel forums. TripAdvisor was an early adopter of user-generated content. The website
services are free to users, who provide most of the content, and the website is supported by
an advertising business model [1].

Features:

• Booking: TripAdvisor allows users to book hotels, flights, vacation rentals, restaurants,
and directly from the app.

• Review: TripAdvisor allows users to post reviews about places.

• Maps: TripAdvisor uses maps that allow travelers to see locally recommended places on
the map while traveling.

• Recommendations: TripAdvisor recommends highly popular places.

• Notifications: TripAdvisor gives notifications about highly rated nearby places.

• Respond to Reviews: TripAdvisor allows to Respond to reviews.


CHAPTER 1. INTRODUCTION 3

Limitations:

• TripAdvisor doesn’t have within App payment for bookings. It also doesn’t have OTP
Mobile Verification. Reviews are fake sometimes because anyone can post a review on
the application about any place.It is restricted to bookings and recommendations only. It
doesn’t provide any feature for tourism company to create and post an ad related to a tour.

1.2.3 Tripit
Introduction: TripIt is an online service that helps travelers organize all their travel plans
no matter where they booked. With TripIt, it’s easy for travelers to print or access their trip
plans from anywhere and to share itineraries and travel calendars with friends and colleagues
in their TripIt social network [2].

Features:

• Booking: Book Flights and Hotels directly from the application.

• Trip Notifications : Integrate to your calendar and provide notifications about your upcoming
flights, events, etc.

• Trip History: Keep track of your past tours.

• Upcoming Trips: Fetch travel plans directly from your email inbox.

Limitations:

• Tripit application doesn’t have OTP Mobile Verification. The interface is not user friendly.
Sometimes it doesn’t catch all the data and users have to manually input the information.
This application also doesn’t provide the feature where business organizations such as a
tour company can create and post ads related to tours. It is restricted to bookings and
reminder notifications only

1.2.4 Tours and Travel:


Introduction: With Tours & Travel you will get, +5,000 FREE Travel Guides, Street,
Maps, Public Transportation Maps, Daily itineraries for top destinations worldwide, Tours and
CHAPTER 1. INTRODUCTION 4

activities around you, Augmented Reality to see, what’s near you, Local recommendations, and
Real activities trusted reviews. This is just a small sample of the free travel guides worldwide
that the app covers [3].

Features:

• Maps: Provides street maps and public transportation ads.

• Tours Around You: Shows tours and activities around you.

• Notifications: Gives notification’s of world top destinations.

• Reviews : Real Users reviews.

• Recommendations: Provides local recommendations through notifications.

Limitations:

• The Travel and Tour application show tours around you, organized by different companies
but don’t have the option to post a tour ad.
CHAPTER 1. INTRODUCTION 5

Table 1.2: Applications Comparison


Feature Tour Adviser [1] TripIt [2] Tour and Travels [3] Proposed System
OTP Verification 3 7 7 3
Organize Tour 7 7 7 3
Post Tour Add 7 7 7 3
Browse Tour Ads 7 7 3 3
Weather Forecast 3 3 7 3
Tour Booking 3 3 7 3
In-app Payments 7 7 7 3
Map 3 7 3 7
Reviews 3 7 3 3
Recommendations 3 7 3 3
Notifications 3 3 3 3
Trip History 7 3 7 3
Respond to reviews 3 7 7 7

1.2.5 Future System Usage Analysis


The system will be helpful for tourism companies in a way that they no longer have to pay
for marketing their tour ads, their workload will be decreased because all the tour payments
will get managed by the system. The tourist will no longer have to worry about finding tourism
companies or their ads because they will get access to all the tours arranged by different
companies in one place. Time will be saved by organizing a tour using the system instead
of spending days arranging a tour manually.

1.3 Objectives
• The Objective of the system is to help tourism companies of all sizes start, run, and grow
their businesses. Helping them in growing their business means helping them offer better
service to tourist.

• The purpose is to provide easiness to tourists to organize tours by themselves or explore


tour ads of different companies and make booking and payments just using a single
application without going anywhere.

• Our mission is to make Pakistan a better place for tourism.We want to make every tourist
experience enjoyable and memorable. By using the system, their journey will be safe and
CHAPTER 1. INTRODUCTION 6

comfortable.

1.4 Problem Statement / Limitations


Tourism in Pakistan is emerging day by day as foreigners started coming to Pakistan for
traveling and every other day even Pakistani people are going on tours with friends and family.
Now, few people arrange trips on their own while most people, most importantly foreigners,
prefer organized tours hosted by companies because they are much cheaper and have lots of
benefits. Now the problem is tour organizing companies or, anyone who wants to organize
a tour for their family or friends need days to organize a tour for doing things like arranging
bus services, going to multiple places to book hotels, and having restaurant reservations which
takes a lot of human work and the other problem is people don’t know how to approach tour
companies because mostly we see tour ads randomly on social media, there isn’t a specific
proper place where one can find all tours hosted by different companies.

1.5 Proposed Solution


The system is an android-based application that will run on smartphones running the Android
Operating System. This system will benefit tour organizers and partners in getting bookings
and tourists in, exploring tour ads by different companies in one place. We will use Java
Language to build this system and, we will develop this system in Android Studio. For the
recommendation system, we will use Collaborating Filtering Algorithm and use Abracadabra
Recommender API to train the model and receive recommendations and, for the Database, we
will use Firebase Real-Time Database. There will be three different modules in the system for
three types of users.

1.5.1 Tourist Module:


• View Tour Ads.

• Set Location Filter

• Make tour booking and payment.

• Get digital ticket after making payment.

• Give reviews after completing tour.

• Recommendation of tours.

1.5.2 Tour Organizer Module:


• Post Tour Ad.
CHAPTER 1. INTRODUCTION 7

• Organize a Tour.

• Manage Received Bookings.

1.5.3 Partner Module:


• Register business.

• Set Availability Status.

• Manage received Bookings.

1.6 Intended Market of Product


The target market will be tour organizing companies that arrange tours for the people
and the hospitality industry, such as hotels, restaurants, and bus travel companies. Existing
applications have targeted the hospitality industry only but, they haven’t targeted the actual
services providers that are tour organizing companies. Based upon our system features, we will
target both tour organizing companies and the hospitality industry.

1.7 Intended Users of Product


The intended users of the system will be the tourists searching for pre-planned tours where
they have to pay only and, the company will do the rest of the work. In terms of elaboration,
people who are well aware of using smartphones and are willing to pay for pre-planned tours
in advance will be the intended users.

1.8 Software Process Model

1.8.1 Introduction
The prototyping model is one of the most popularly used Software development Life Cycle
Model. Prototyping can be defined as developing a replica of a product that has to be engineered.
It offers a small-scale facsimile of the end product. In this process model, the system is partially
implemented before or during the analysis phase thereby giving us an opportunity to see the
product early in the life cycle [4].

1.8.2 Justification
The reason for choosing the prototype process model is that it offers a developing team to
make a functioning prototype of the system step by step so that on the basis of the prototype it
can be easily reviewed and modified by the developing team and respective supervisor. In the
CHAPTER 1. INTRODUCTION 8

initial stages requirements seems to be complete but this process model indicates modification
in requirements with time. Also, by using this process model, we can interact with a fully
functioning prototype, and thus any lack or requirement to be fulfilled can easily judged.

Figure 1.1: Prototyping Model

1.8.3 Steps
1. Requirement Gathering and Analysis
In this step we will define requirements of the system in detail.

2. Quick Design
In this step we will Create a simple design of the system.

3. Building a Prototype
In this step we will designed an actual prototype based on the information we gathered
in step 2. It will be a small working model of our system.

4. Evaluation
In this step we will evaluate our system and find out strength and weakness of the working
model.

5. Refining the Prototype


In this step we will refine our prototype based on evaluation and this step will not over
until we get satisfied with the prototype.

6. Implementation
Once our final system is developed based on our prototype , it will be tested and deployed
to production.
CHAPTER 1. INTRODUCTION 9

1.9 Project Summary


Your project summary is a brief but specific statement of the project objectives, methods
and impact on you as an artist. Be succinct and to the point! You will expand on your Project
Summary in the Project Narrative.
Chapter 2

SOFTWARE REQUIREMENTS
SPECIFICATION
This document presents a detailed description of the system named "TourHunt" (A Tour Based
Android Application). It provides a general overview of the system. It includes the understanding
of the problem domain, users who will interact with the system, and the overall functionality
of the system.

2.1 Introduction
The purpose of this document is to describe the requirements of the system completely,
accurately, and unambiguously in a Technology-independent manner. It will provide a detailed
description of the project’s functional, non-functional requirements, and other requirements for
the system, and all the features which will be present in the system will also be expressed in
this document.

2.1.1 Document Scope


This document intends to define the requirements for TourHunt mobile application. We
will be the system developers and engineers and, we will also do requirement elicitation on
one’s own by identifying and documenting functional, performance, or other requirements for
the TourHunt software system. There is no real occurring monetary cost associated with the
project. The project is expected to be delivered by the end of December 2021.

2.1.2 Audience
The intended audience for this document is developers of the system and, it is restricted
within the university premises. The system is being developed under the guidance of Prof.
Adil Majeed.

2.2 Functional Requirements

2.2.1 Functional Requirements


FR-1: The users shall be able to choose user type while registering in the system from the
following

10
CHAPTER 2. SOFTWARE REQUIREMENTS SPECIFICATION 11

• Partner

• Tour Organizer

• Tourist

FR-2: The users shall be able to register in the system using email, phone number and
password.

FR-3: The users email and phone number should be verified using OTP.

FR-4: The users shall be able to login into the system using registered email and password.

FR-5: The users shall be able to recover forgotten password.

FR-6: The users shall be able to change their email and password.

FR-7: Each user type shall have different access to the system.

FR-8: The tourists, tour organizers and partners shall be able to set up their profile.

FR-9: The tourists, tour organizers and partners shall be able to set their profile picture.

FR-10: The tourists, tour organizers and partners shall be able to edit their profile.

FR-11: The tour organizers shall be able to post tour ad.

FR-12: The tour organizers shall be able to upload tour artwork image while posting ad.

FR-13: The tour organizers shall be able to organize tour.

FR-14: The tour organizers and partners shall be able to see bookings they receive.

FR-15: The system shall notify tour organizers and partners when they receives booking.

FR-16: The tour organizers and partners shall be able to manage bookings.
CHAPTER 2. SOFTWARE REQUIREMENTS SPECIFICATION 12

FR-17: The tour organizers shall be to see reviews given about them by the tourists.

FR-18: The partners shall be able to register their business in the system.

FR-19: The partners shall be able to set their business availability every day.

FR-20: The system shall notify partners if they forget to set availability status.

FR-21: The tourists shall be able to choose their city on homepage of system.

FR-22: The system shall show tour ads posted by tour organizers to tourists based on their
city.

FR-23: The tourists shall be able to browse tour ads.

FR-24: The tourists shall be able to view particular tour ad detail.

FR-25: The tourists shall be able view weather forecast of the tour destination place on tour
detail page.

FR-26: The tourists shall be able to book and make payment for the tour in the system.

FR-27: The tourists shall be able to download digital ticket in PDF format after making
payment successfully.

FR-28: The tourists shall be able to give review for tour organizers after completing tour.

FR-29: The tourists shall be to see reviews on tour organizers profile.

FR-30: The tourists shall be able to view his bookings.

FR-31: The system shall recommend tours to tourists based on their search using notifications.
CHAPTER 2. SOFTWARE REQUIREMENTS SPECIFICATION 13

2.3 Non-Functional Requirements

2.3.1 Software Quality Attributes


• Availability: The system shall be available 24 x 7 for the users.

• Usability: This system interface shall be developed in such a way that there will be no
need for instructing users about how to use the system, anyone with basic knowledge of
using a smartphone should be able to use it easily.

• Reliability: The system shall not crash or close under any circumstances. It should
recover from failure in the time application closes and restart. The system shall always
be available to be used by the user.

• Maintainability: The code shall be written clean so that other programmers can easily
make changes and enable the future evaluation of the system

• Portability: The system shall be available for download via Play-store. It shall perform
without errors in the presence of other android applications.

2.3.2 Other Non-Functional Requirements


• Software Requirements

Software Technical Requirement


Operating System Android
Android Version Android 4.1 or newer

• Hardware Requirements

Hardware Technical Requirement


Device Smartphones
Processor Minimum 1 GHZ
RAM Minimum 1 GB
Storage Minimum 4GB

• Performance Requirements
The system shall respond to the user queries without delay. It shouldn’t lag and work
fast. When the user logs in, it shall take only 1 to 2 seconds to verify the user credentials.
When tour organizer posts-tour ads, it shall get visible to tourists in less than a minute,
and when partners set their availability, it shall make an update on the tour organizers
screens immediately.
CHAPTER 2. SOFTWARE REQUIREMENTS SPECIFICATION 14

• Safety Requirements
The system shall make the payment method safe for tour organizers. All the Payment of
tour bookings shall be transferred to their accounts after tours will be completed. All the
data system shall take from tourists, tour organizers and, partners shall be confidential
and shall not be shared with any third party.

• Security Requirements
The system shall provide access to authorized persons only with valid user IDs and
passwords. All three different users shall have different access to the application. Tourists
shall have access to tour ads and making bookings and payments, Tour organizing companies
shall have access to posting tour ads and organizing tours and, partners shall have access
to registering their business and setting availability status. When tourists make a booking
of the tour it shall reflect into tour organizers module and, when tour organizers will make
bookings to hotels or restaurants for organizing tour it shall reflect into partner’s module.
When the tourist will make the payment for the Tour booking their account details shall
be fully secured.

2.4 Requirement Gathering Techniques Used

2.4.1 Brainstorming
The first technique is brainstorming. In this technique, the requirement gathering team
invites all the stakeholders to an open environment where all the stakeholders will participate in
the discussion, and everyone is free to share suggestions. In this way, all the direct people who
are indirect affiliates with the project will come face to face, and the requirements gathering
team will get a better idea of the user’s need and the problems that the tourists are facing in
other existing applications. After gathering the requirements of tourists, developers and other
team members will analyze how they will develop the application that fulfills the requirements.

2.4.2 Questionnaires
The following requirement elicitation technique is to gather requirements by filling out the
questionnaire by tourists. We have created the questionnaire on google form and asked the
people of Pakistan to fill the questionnaire. It is to know what problems people are facing and
what features do they want so that we can solve those problems through our application.

2.4.3 Observation
The following requirement elicitation technique is for requirement gathering by observing
different existing applications, and there are many tourism-based applications available in the
CHAPTER 2. SOFTWARE REQUIREMENTS SPECIFICATION 15

market from where the requirements will be gathered. Different observers will install these
applications on their smartphones. They will analyze the features, design, and facilities of
applications. After that, they will analyze the different common problems they are facing
in these applications. The requirement will also be gathered using this technique by simply
meeting with employees. The observers will ask questions from the employees about the
application. The observer will record all the activities and the time taken to perform the task.

2.5 Time Frame


Table 2.1: Time Frame

Sr No Phase Duration
1 Feasibility Study 5 Days
2 Elicitation 10 Days
3 Elaboration 5 Days
4 Negotiation Study 5 Days
5 Requirement Analysis 8 Days
6 Requirement Validation 3 Days
7 Requirement Specification 15 Days
8 SRS Document 12 Days
Chapter 3

SOFTWARE PROJECT PLAN


3.1 Deliverables of the Project

Deliverables Month
Project Proposal March 2021
FYP- 1 Mid Review ( Chapter 1 & 2 ) April 2021
FYP- 1 Implementation (25 %) April 2021
FYP- 1 Final Document ( Chapter 3 & 4 ) June 2021
FYP- 1 Implementation (50 %) June 2021
FYP- 11 Mid Review ( Chapter 5 & 6 ) November 2021
FYP- 11 Implementation (75 %) November 2021
FYP- 11 Final Document ( Chapter 7 & 8 ) January 2022
FYP- 11 Implementation (100 %) January 2022
Final Report January 2022

Table 3.1: Project Deliverables

3.2 Software Project Management Plan

3.2.1 Project Planning


Project planning is about developing a project that meets stakeholders’ expectations and,
to achieve it, the triple constraint of project management is considered. According to project
management’s triple constraint, progress should be made after analyzing the project scope goal,
time goal, and cost goal. By using triple constraints in the proposed system, the system will
meet the requirements and expectations of stakeholders.

3.2.1.1 Milestones Plan

16
CHAPTER 3. SOFTWARE PROJECT PLAN 17

Figure 3.1: Milestone Plan

3.2.1.2 Documentation Plan


The documentation plan includes adding all the necessary points in the documents that define
the proposed application, from requirement gathering to testing and deployment. The documents
include the SRS document, design document, and final document. These documents help
the development team understand the project’s clear picture and help the stakeholder verify
the expectation from the proposed application. The documentation defines all the standards
which will be in action in the the proposed system, and also the documentation helps for other
investment purposes.

3.2.1.3 Resources Plan


To manage the resources which are required for the proposed system, we set a complete plan.
The required resources used in the system are OpenWeatherMap API for weather forecast,
Android studio for implementation, firebase for authentication and real-time database, the
dataset for a recommendation system, and emulator or smartphone for system testing.

3.2.1.4 Quality Plan


The quality of the proposed system will be considered a priority. The proposed application
will be a reliable solution for limitations in other existing applications. The application will be
easy to use for all the users, i.e., tourists, tour organizers, and partners. The application will be
available 24/7, and it will serve the customer with a review feature that will ensure the quality
of the service of the tour organizers and partners.

3.2.2 Project Scheduling

3.2.2.1 Gantt Chart


CHAPTER 3. SOFTWARE PROJECT PLAN 18

Figure 3.2: Gantt Chart

3.2.2.2 Work Breakdown Structure

Figure 3.3: Work Breakdown Structure


CHAPTER 3. SOFTWARE PROJECT PLAN 19

3.2.2.3 Critical Path Method

Figure 3.4: Critical Path Method

3.3 Managerial Process

3.3.1 Management Objectives and Priorities


The proposed system is modular. The module taken to the first priority is the Tour Organizer
Module, responsible for providing touring services to tourists by posting tour ads and organizing
tours. The second priority module is Partners, responsible for providing hotel, restaurants, or
travel services. The Partners module works as a backbone for the tour organizer module. When
the organizer organizes a tour through the application, all the services registered by the partner
in the system will be visible to him for bookings. Partners will also update the availability
status of their business every day. The last priority module is Tourist, where they can view tour
ads, compare them with other ads, make Booking and payment for them. The application also
generates a ticket for tourists after the tour is booked successfully.

The Objectives of the Proposed system are

• Promoting tourism in Pakistan.

• Providing a platform for free of cost to the tour organizing companies to earn the most
from their businesses.

• Providing opportunities to the hospitality industry to increase their revenue by providing


services to our customers and organizers.

• Saving tourists from spending time on social media applications in search of tour ads.
The Proposed system will allow them to explore the variety of tour ads in one place.
CHAPTER 3. SOFTWARE PROJECT PLAN 20

3.3.2 Assumptions and Constraints


In the proposed system, while implementation, we have to use several APIs. If the budget
does not meet the project expense, there is a chance not to use those APIs. For example, for the
online payment module or weather forecast, we have to use an API that may be expensive so,
we may not use them in the project.

3.4 Project Risk Management


In Project Risk Management, we will consider all the upcoming risks for the project, which
will affect the schedule, quality, and performance of the proposed system. The Risks can be
following

• Risk of conflicts in Modules Priority While Development

• Risk of insufficient resources

• Risk of loss of project data due to virus attacks on system.

• Risk of Conflict in Dividing work between team members.

• Risk of Team member does not have a skill to develop some part of module.

• Risk of Team member not completing work on time.

3.4.1 Risk Management Plan


We have made a risk management plan which will tackle the uncertainty and future losses
which can occur in our project due to risks.

3.4.1.1 Purpose

The purpose of the Risk management plan is to predict upcoming risks, their impacts on
the project, and how to deal with those risks. It also helps the team with accurate knowledge of
what to do to protect the project from risk.
CHAPTER 3. SOFTWARE PROJECT PLAN 21

3.4.1.2 Roles and Responsibilities

This table shows the roles and responsibilities of the team members

Roles Responsibilites
1. Schedule and conduct risk review in meetings.
2. Facilitate identification/prioritization/planning discussions.
Project Manager 3. Assist with risk response planning
4. Assist with managing risk action plan
5. Implement or designate risk management strategy
1. Participate in risk review during meetings
Project Team 2. Assist with risk response planning
3. Prioritize risks
1. Approve risk response strategy
Project Analyst
2. Approve closure of risk

Table 3.2: Roles and Responsibilities Table

3.4.2 Risk Management Activities

The risk will manage in such a way as shown in the diagram:

3.4.2.1 Risk Identification


There are always multiple sources of risk in the project. It is our responsibility to analyze and
identify risks in different phases of the project. Some of the risks which may occur in the
proposed system are as follow.

1. Losing data: Due to some inconvenient situation, all the actual project progress can lose.

2. Team communication gap: The communication gap between team members will cause a
severe problem in any SDLC phase.
CHAPTER 3. SOFTWARE PROJECT PLAN 22

3. The project may not be complete in time : The risk of not completing the project in time
may occur because of some annoying bugs in the developing phase, which may take extra
time to complete the project.

4. Fewer Tour Ads Risk: The project may fail if tour organizing does not switch to our
platform and post ads. If there will be no new ad on the application, the tourist will stop
using the application.

5. Fewer Partner Business Registration Risk: The project may fail if partners do not register
their business in the application. If they do not register, tour organizers will not be able
to organize a tour.

6. Tour Quality Risk: The project may also fail due to bad reviews of the tourists if tour
organizing companies do not organize suitable quality tours.

3.4.2.2 Risk Analysis

The below tables shows the analysis of risk in tabular form.

Impact / Probability
0-20% Very Low
21-40% Low
41-60% Medium
61-80% High
81-99% Very High

Table 3.3: Impact Probability Table

Severity
0-5% Very Low
6-16% Medium
17-99% Very High

Table 3.4: Severity Table


CHAPTER 3. SOFTWARE PROJECT PLAN 23

RISK CATEGORIES IMPACT PROBABILITY SEVERITY RESPONSE


(l x P)
Deliverables Categories Result L/M/H Strategy
L/M/H
1.1 External 1.1.1 Fewer Tour Ads 80% 60% 75% Avoid
1.1 External 1.1.2 Fewer Partners Registration 55% 60% 65% Avoid
1.1 External 1.1.3 Tour Quality 85% 50% 55% Avoid
1.2 Project management 1.2.1 Completion on Time 80% 30% 35% Accept
1.2 Project management 1.2.2 Data Loss 90% 20% 75% Avoid
1.2 Project management 1.2.3 Communication Gap 45% 35% 15% Transfer
1.3 Technical 1.3.1 Server overload. 65% 45% 25% Avoid

Table 3.5: Risk Analysis Table

3.4.2.3 Risk Response Planning

The response planning is shown in below table


RISK CATEGORIES IMPACT PROBABILITY SEVERITY RESPONSE
(l x P)
RESPONSE DESCRIPTION
Deliverables Categories Result L/M/H Strategy
L/M/H
Will set a meeting
with multiple tour
organizing companies
1.1 External 1.1.1 Fewer Tour Ads 80% 60% 75% Avoid and will propose them
to post tour ad
on our application
for free.
Will set a meeting
with multiple hotels,
restaurants and bus travel
1.1 External 1.1.2 Fewer Partners Registration 55% 60% 65% Avoid companies and propose
them to register in
our application to
get bookings.
Will not allow companies
to post add if
1.1 External 1.1.3 Tour Quality 85% 50% 55% Avoid
their tour quality
is not good enough.
Will set up regular meetings
1.2 Project management 1.2.1 Completion on Time 80% 30% 35% Accept to make sure team doing
their work.
Will make backup
1.2 Project management 1.2.2 Data Loss 90% 20% 75% Avoid of each project
deliverable in cloud.
Will set up weekly meetings
1.2 Project management 1.2.3 Communication Gap 45% 35% 15% Transfer
to keep everyone on same page.
Will use backup
1.3 Technical 1.3.1 Server overload. 65% 45% 25% Avoid
severs.

Table 3.6: Risk Response Planning Table


CHAPTER 3. SOFTWARE PROJECT PLAN 24

3.4.2.4 Rating Risk Likelihood and Impact

The rating risk likelihood and impact shown in below table

Risk Likelihood Consequences Risk Rating


Fewer Tour Ads Likely High Tolerable
Fewer Partners
Likely High Tolerable
Registration
Tour’s Quality Possible Moderate High
Project Completion
Possible High Tolerable
on Time
Loss of Project Data Possible High Tolerable
Server Overload Likely Moderate High
Communication Gap Unlikely Minor Tolerable

Table 3.7: Rating Risk Likelihood Table

3.4.2.5 Risk Monitoring and Control

Project risk control and risk monitoring are where we maintain a record of how risk responses
are acting upon the plan and the area where new risks to the project are maintained. The team
needs to identify that risks can have contradictory and positive impacts. Positive risk is a
risk assumed by the project because its potential advantages exceed the expected path, and an
adverse risk could negatively affect the schedule and cost of the project.

The main objectives of our project risk monitoring and control are as follow

• Recognize the issues that can have a direct impact on the project deliverable

• Allocate qualitative and quantitative weight, the likelihood and importance of those issues
that might affect the project deliverable

• Provide alternative ways of fulfilling for events that are out of control or cannot be
mitigated from the team

Main goals of risk monitoring and control

• To verify that risks are controlled.

• To monitor if there are further risks in the project.

• To monitor and control if risks are further evolved.


CHAPTER 3. SOFTWARE PROJECT PLAN 25

3.4.2.6 Risk Assessment

Risk assessment is shown in the table below

Risk assessment of the proposed application


Relative or numerical scales are shown
Project Objective
Very Low /0.5 Low /.10 Moderate /.20 High /.40 Very High /.80
Insignificant <10 % cost 10-20% cost 20-40% cost >40% cost
Cost
cost increase increase increase increase increase
Insignificant <5 % time 5-10% time 10-20% time >20% time
Time
time increase increase increase increase increase
scope reduction
Scope decrease Minor areas of Major areas of Project end item
Scope unacceptable to
barely noticeable scope affected scope affected is effectively useless
sponsor
Only very
quality reeducation quality reeducation
Quality degradation demanding Project item is
Quality requires Sponsor unacceptable
barely noticeable applications are effectively useless
approval to sponsor
affected
Chapter 4

FUNCTIONAL ANALYSIS AND


MODELING
4.1 Use Case Modeling

4.1.1 User Stories


TOURIST:

The tourist will first sign up for the application. After registering for the application
and completing OTP verification, Tourists will log into the application. After logging in
successfully, tourists will see a list of tour ads on the Main dashboard and will be to browse
them. If the tourist clicks on an ad, he will view tour details, and from there, he will be to
book and make payment for the tour and get a ticket after booking confirmation. There will
be a menu option on the tourist’s dashboard; if the tourist clicks on it, he will see the profile,
bookings, and account settings options. The user will set or update his name, age, gender, and
city in the profile. In Bookings Tourist will see his booking history and will also be able to
manage his bookings. In Account Setting, the tourist will update his email, phone number, and
password. Using Logout, the tourist will get a sign out from the application.

PARTNERS:

The partner will first sign up for the application. After registering for the application
and completing OTP verification, the partner will log into the application. After logging in
successfully, the partner will see a list of his registered business on the Main dashboard, and
from their partner will set his business availability. There will be a menu option on the partner
dashboard; if the partner clicks on it, he will see the registered business, profile, bookings,
and account settings option. In Register business, partners will register their business into the
system such as hotel, restaurant, or bus travel. The partner will set or update his business name,
city, phone number, and address in his profile. In Bookings partner will see his booking history
and will also be able to manage his bookings. In Account Setting, the partner will update his
email, phone number, and password. Using Logout, the partner will get a sign out from the
application.

26
CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 27

TOUR ORGANIZERS:

The Tour Organizer will first sign up for the application. After registering for the application
and completing the OTP verification, the tour organizer will log into the application. After
logging in successfully, on the Main dashboard tour organizer will see a list of his posted ads,
and from there, they will be able to edit or delete their tour ads. There will be a menu option on
the tour organizer dashboard; if the tour organizer clicks on it, he will see post-tour ad, organize
a tour, profile, bookings, and account settings option. In post-tour ad, the tour organizer will
post an ad by filling the required fields. In Organize Tour, the tour organizer will organize a tour
by choosing the destination, trip duration, hotel, restaurant, and travel company of their choice.
The tour organizer will set or update his company name, city, phone number, and address in
his profile. In Bookings, the tour organizer will see his booking history and will also be able to
manage his bookings. In the Account Settings, the tour organizer will update his email, phone
number, and password. Using Logout, the partner will get a sign out from the application.
CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 28

4.1.2 Individual Actor Use Cases

Figure 4.1: Use Case Diagram


CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 29
CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 30
CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 31
CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 32
CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 33

4.2 Functional Modeling

4.2.1 Entity Relationship Diagram

Figure 4.2: ERD Diagram


CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 34

4.2.2 Data Flow Diagram

4.2.2.1 DFD Level 0

Figure 4.3: DFD LEVEL 0


CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 35

4.2.2.2 DFD Level 1

Figure 4.4: DFD LEVEL 1


CHAPTER 4. FUNCTIONAL ANALYSIS AND MODELING 36

4.2.2.3 DFD Level 2

Figure 4.5: DFD LEVEL 2


Chapter 5

SYSTEM DESIGN
5.1 Structure Diagrams

5.1.1 Class Diagram

Figure 5.1: Class Diagram

37
CHAPTER 5. SYSTEM DESIGN 38

5.1.2 Deployment Diagrams

Figure 5.2: Deployment Diagram


CHAPTER 5. SYSTEM DESIGN 39

5.2 Behavioral Diagrams

5.2.1 Activity Diagrams

5.2.1.1 Signup

Figure 5.3: Signup


CHAPTER 5. SYSTEM DESIGN 40

5.2.1.2 Login

Figure 5.4: Login


CHAPTER 5. SYSTEM DESIGN 41

5.2.1.3 Post Ad

Figure 5.5: Post Ad


CHAPTER 5. SYSTEM DESIGN 42

5.2.1.4 Organize Tour

Figure 5.6: Organize Tour


CHAPTER 5. SYSTEM DESIGN 43

5.2.1.5 Partner Registration

Figure 5.7: Partner Registration


CHAPTER 5. SYSTEM DESIGN 44

5.2.1.6 Profile

Figure 5.8: Profile


CHAPTER 5. SYSTEM DESIGN 45

5.2.1.7 Tour Booking

Figure 5.9: Book Tour


CHAPTER 5. SYSTEM DESIGN 46

5.2.1.8 Online Payment

Figure 5.10: Online Payment


CHAPTER 5. SYSTEM DESIGN 47

5.2.1.9 Bookings

Figure 5.11: Bookings


CHAPTER 5. SYSTEM DESIGN 48

5.2.1.10 Manage Bookings

Figure 5.12: Manage Bookings


CHAPTER 5. SYSTEM DESIGN 49

5.2.1.11 Review

Figure 5.13: Tour Reviews


CHAPTER 5. SYSTEM DESIGN 50

5.2.1.12 View Tour Ads

Figure 5.14: View Tour Ads


CHAPTER 5. SYSTEM DESIGN 51

5.2.1.13 Search Tour Ads

Figure 5.15: Search Tour Ads


CHAPTER 5. SYSTEM DESIGN 52

5.2.2 Sequence Diagrams

5.2.2.1 Signup

Figure 5.16: Signup


CHAPTER 5. SYSTEM DESIGN 53

5.2.2.2 Login

Figure 5.17: Login


CHAPTER 5. SYSTEM DESIGN 54

5.2.2.3 Post Ad

Figure 5.18: Post Ad


CHAPTER 5. SYSTEM DESIGN 55

5.2.2.4 Organize Tour

Figure 5.19: Organize Tour


CHAPTER 5. SYSTEM DESIGN 56

5.2.2.5 Partner Registration

Figure 5.20: Partner Registration


CHAPTER 5. SYSTEM DESIGN 57

5.2.2.6 Profile

Figure 5.21: Profile


CHAPTER 5. SYSTEM DESIGN 58

5.2.2.7 Tour Booking

Figure 5.22: Book Tour


CHAPTER 5. SYSTEM DESIGN 59

5.2.2.8 Online Payment

Figure 5.23: Online Payment


CHAPTER 5. SYSTEM DESIGN 60

5.2.2.9 Bookings

Figure 5.24: Bookings


CHAPTER 5. SYSTEM DESIGN 61

5.2.2.10 Manage Bookings

Figure 5.25: Manage Bookings


CHAPTER 5. SYSTEM DESIGN 62

5.2.2.11 Review

Figure 5.26: Tour Reviews


CHAPTER 5. SYSTEM DESIGN 63

5.2.2.12 View Tour Ads

Figure 5.27: View Tour Ads


CHAPTER 5. SYSTEM DESIGN 64

5.2.2.13 Search Tour Ads

Figure 5.28: Search Tour Ads


CHAPTER 5. SYSTEM DESIGN 65

5.2.3 Communication Diagrams

5.2.3.1 Signup

Figure 5.29: Signup

5.2.3.2 Login

Figure 5.30: Login

5.2.3.3 Post Ad
CHAPTER 5. SYSTEM DESIGN 66

Figure 5.31: Post Ad

5.2.3.4 Organize Tour

Figure 5.32: Organize Tour

5.2.3.5 Partner Registration

Figure 5.33: Partner Registration

5.2.3.6 Profile
CHAPTER 5. SYSTEM DESIGN 67

Figure 5.34: Profile


CHAPTER 5. SYSTEM DESIGN 68

5.2.3.7 Tour Booking

Figure 5.35: Book Tour

5.2.3.8 Online Payment

Figure 5.36: Online Payment

5.2.3.9 Review
CHAPTER 5. SYSTEM DESIGN 69

Figure 5.37: Tour Reviews

5.2.3.10 Search Tour Ads

Figure 5.38: Search Tour Ads


Chapter 6

SYSTEM INTERFACE AND PHYSICAL


DESIGN
6.1 System User Interfaces
6.1.0.1 Splash Screen

Figure 6.1: Splash Screen

70
CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 71

6.1.0.2 Home Interface

Figure 6.2: Home


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 72

6.1.0.3 Sign-up Interface

Figure 6.3: Singup


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 73

6.1.0.4 OTP Verification Interface

Figure 6.4: OTP Verification


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 74

6.1.0.5 Forget Password Interface

Figure 6.5: Forgot Password


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 75

6.1.0.6 Sign-in Interface

Figure 6.6: Signin


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 76

6.1.1 Tourists Interface

6.1.1.1 Tourist Navigation

Figure 6.7: Tourist Navigation


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 77

6.1.1.2 Tourist Location

Figure 6.8: Location


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 78

6.1.1.3 Tourist Home

Figure 6.9: Tourist Home


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 79

6.1.1.4 Tour Ad

Figure 6.10: Ad Details


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 80

6.1.1.5 Weather Forecast Interface

Figure 6.11: Tour Weather Forecast


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 81

6.1.1.6 Payment Methods

Figure 6.12: Payment Methods


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 82

6.1.1.7 EasyPaisa Checkout

Figure 6.13: EasyPaisa Checkout


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 83

6.1.1.8 JazzCash Checkout

Figure 6.14: JazzCash Forecast


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 84

6.1.1.9 Digital Ticket

Figure 6.15: Ticket


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 85

6.1.1.10 Tour Organizer Profile Interface

Figure 6.16: Tour Organizer Profile


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 86

6.1.1.11 Tourist Profile View

Figure 6.17: Tourist Profile View


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 87

6.1.1.12 Tourist Profile Update

Figure 6.18: Tourist Profile Update


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 88

6.1.1.13 Tourist Account Settings

Figure 6.19: Tourist Account Settings


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 89

6.1.1.14 Tourist Update Email

Figure 6.20: Tourist Update Email


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 90

6.1.1.15 Tourist Update Password

Figure 6.21: Tourist Update Password


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 91

6.1.1.16 Tourist Update Phone

Figure 6.22: Tourist Update Phone


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 92

6.1.2 Organizers Interface

6.1.2.1 Organizer Navigation Interface

Figure 6.23: Organizer Navigation


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 93

6.1.2.2 Organizer Home Interface - My Ads

Figure 6.24: My Ads


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 94

6.1.2.3 Organizer Home Interface - My Organized Tours

Figure 6.25: My Organized Tours


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 95

6.1.2.4 Post Ad - 1

Figure 6.26: Post Ad - 1


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 96

6.1.2.5 Post Ad - 2

Figure 6.27: Post Ad - 2


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 97

6.1.2.6 Post Ad - 3

Figure 6.28: Post Ad - 3


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 98

6.1.2.7 Post Ad - 4

Figure 6.29: Post Ad - 4


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 99

6.1.2.8 Organize Tour - 1

Figure 6.30: Organize Tour - 1


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 100

6.1.2.9 Organize Tour - 2

Figure 6.31: Organize Tour - 2


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 101

6.1.2.10 Organize Tour - 3

Figure 6.32: Organize Tour - 3


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 102

6.1.2.11 Organize Tour - 4

Figure 6.33: Organize Tour - 4


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 103

6.1.2.12 Organizer Profile

Figure 6.34: Organizer Profile View


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 104

6.1.2.13 Organizer Profile Update

Figure 6.35: Organizer Profile Update


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 105

6.1.2.14 Organizer Bookings

Figure 6.36: Organizer Bookings


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 106

6.1.2.15 Organizer Account Settings

Figure 6.37: Organizer Account Settings


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 107

6.1.2.16 Organizer Update Email

Figure 6.38: Organizer Update Email


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 108

6.1.2.17 Organizer Update Password

Figure 6.39: Organizer Update Password


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 109

6.1.2.18 Organizer Update Phone Number

Figure 6.40: Organizer Update Phone Number


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 110

6.1.3 Partners Interface

6.1.3.1 Partner Navigation Interface

Figure 6.41: Partner Navigation


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 111

6.1.3.2 Partner Registration

Figure 6.42: Partner Registration


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 112

6.1.3.3 Partner Profile

Figure 6.43: Partner Profile


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 113

6.1.3.4 Hotel Dashboard

Figure 6.44: Partner Hotel Dashboard


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 114

6.1.3.5 Hotel Bookings

Figure 6.45: Partner Hotel Booking


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 115

6.1.3.6 Restaurant Dashboard

Figure 6.46: Partner Restaurant Dashboard


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 116

6.1.3.7 Restaurant Bookings

Figure 6.47: Partner Restaurant Booking


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 117

6.1.3.8 Bus Travel Dashboard

Figure 6.48: Partner Bus Travel Dashboard


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 118

6.1.3.9 Bus Travel Booking

Figure 6.49: Partner Bus Travel Booking


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 119

6.1.3.10 Partner Account Settings

Figure 6.50: Partner Account Settings


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 120

6.1.3.11 Partner Update Email

Figure 6.51: Partner Update Email


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 121

6.1.3.12 Partner Update Password

Figure 6.52: Partner Update Password


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 122

6.1.3.13 Partner Update Phone Number

Figure 6.53: Partner Update Phone Number


CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 123

6.1.4 User Table

6.1.5 Tourist Table


Field Name Description Type Length Default Null
Tourist_ID Tourist id number int 18 identify
Tourist_Name Name of Tourist varchar 20 Y
Tourist_Age Age of Tourist varchar 2 Y
Tourist_Gender Gender of Tourist varchar 6 Y
Tourist_City City of Tourist varchar 10 Y
Tourist_Email Email of Tourist varchar 31 Y
Tourist_Phone Phone Number of Tourist varchar 14 +92 Y

Table 6.1: Tourist Table

Unique Keys
Table Name Field Name Key Type
tbltourist Tourist_ID PK

6.1.6 PartnerTable
Field Name Description Type Length Default Null
Partner_ID Partner id number int 18 identify
Partner_Name Name of Business varchar 20 Y
Partner_Type e.g Hotel,Restaraunt or Bus Travel varchar 10 Y
Partner_Address Business Address varchar 6 Y
Partner_City City where Located varchar 10 Y
Partner_Email Business Email varchar 31 Y
Partner_Phone Business Phone Number varchar 14 Y

Table 6.2: Partner Table

Unique Keys
Table Name Field Name Key Type
tblpartner Partner_ID PK
CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 124

6.1.7 OrganizerTable
Field Name Description Type Length Default Null
Organizer_ID Organizer id number int 18 identify
Organizer_Name Name of Tour Organizer or Company varchar 20 Y
Organizer_Address Company Address varchar 6 Y
Organizer_City City where Located varchar 10 Y
Organizer_Email Company Email varchar 31 Y
Organizer_Phone Company Phone Number varchar 14 Y

Unique Keys
Table Name Field Name Key Type
tblorganizer Organizer_ID PK

6.1.8 TourAdTable
Field Name Description Type Length Default Null
TourAd_ID TourAd id number int 18 identify
Organizer_ID Organizer id number int 18 identify
Tour_DatePosted Tour Ad Posted on Date date Y
Tour_OrganziedBy Company Name varchar 20 Y
Tour_Title Title varchar 50 Y
Tour_Description Description varchar 400 Y
Tour_City City varchar 20 Y
Tour_Destination Tour Destination varchar 20 Y
Tour_Departuredate Departure Date date Y
Tour_DepartureTime Departure Time varchar 5 Y
Tour_PickupPoint Pickup Location varchar 20 Y
Tour_Hotel Hotel Name varchar 20 Y
Tour_Restaraunt Restraunt Name varchar 20 Y
Tour_BusTravel Bus Company N varchar 20 Y
Tour_Seats Available Seats of Tour int 2 Y
Tour_Duration Duration of Tour int 2 Y
Tour_Price Price per Head of Tour int 4 Y

Unique Keys
Table Name Field Name Key Type
tbtourad TourAd_ID PK
CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 125

Foreign Keys
Table Name Field Name Key Type
tborganizer Organizer_ID FK

6.1.9 TourBookingTable
Field Name Description Type Length Default Null
TourBooking_ID Booking id number int 18 identify
Organizer_ID Organizer id number int 18 identify
Tourist_ID Tourist id number int 18 identify
TourAD_ID TourAd id number int 18 identify
Tour_Name Name of Tour varchar 20 Y
Organized_By Name of the Tour Organizing Company varchar 20 Y
Seats_Booked No of Seats Booked int 2 Y
Price Price according to no of seats booked int 4 Y

Table 6.3: Tour Booking Table

Unique Keys
Table Name Field Name Key Type
tbtourbooking TourBooking_ID PK

Foreign Keys
Table Name Field Name Key Type
tborganizer Organizer_ID FK
tbtourist Tourist_ID FK
tbtourad TourAd_ID FK
CHAPTER 6. SYSTEM INTERFACE AND PHYSICAL DESIGN 126

6.1.10 OrganizeTourTable
Field Name Description Type Length Default Null
OrganizeTour_ID OrganizeTour id number int 18 identify
Organizer_ID Organizer id number int 18 identify
Partner_ID Partner id number int 18 identify
Created_On Tour Organized on Date date Y
Organized_Date Bookings Date date Y
Hotel_Name Hotel Name varchar 20 Y
Hotel_Rooms Rooms Booked int 2 Y
Hotel_Price Price int 4 Y
Restaurant_Name Restaurant Name varchar 20 Y
Restaurant_Tables Tables Booked int 2 Y
Restaurant_Price Price int 4 Y
BusTravel_Name Bus Travel Name varchar 20 Y
BusTravel_Seats Seats Booked int 2 Y
BusTravel_Price Price int 4 Y

Table 6.4: OrganizeTour Table

Unique Keys
Table Name Field Name Key Type
tborganizetour OrganizeTour_ID PK

Foreign Keys
Table Name Field Name Key Type
tborganizer Organizer_ID FK
tbpartner Partner_ID FK
Chapter 7

TEST PLAN
7.1 Objective of the Testing Phase
The main purpose of testing our application is to identify if there is any malfunctioning in any
of the modules of an app. The testing phase is carried out on each module of an app, such as
in, Tourist, Partners, and Organizer’s Modules functionalities, to ensure that the developed
application is the same as specified in the document.

7.2 Levels of Tests for Testing Software


Numerous testing techniques are arranged to improve the quality of an app which include
Unit/component testing, integration testing, system testing, and acceptance testing, which are
basic levels for testing any app.

7.2.1 Unit Testing


We have tested each module of the application, such as a method or class. On Our Application,
It is done by running small portions of applications on android devices. We have done unit
testing by dividing the application into integral parts or units. We tested each unit of an app,
such as from sign-up/login unit to printing ticket, confirming partner’s availability, organizing
tours, creating an ad and each testing phase gave a positive result in terms of functionality.

7.2.2 Integration testing


We have done integration testing by integrating two or more modules of our application that
relate to or depend on each other, e.g., by Combining Tour Organizer or Partners Modules to
Check that When a Tour is Organized, Does the Partner Receives Booking or Not ?.
Integration of all interrelated modules and testing after that integration has been done
successfully.

7.2.3 System Testing


We had Integrated all of the modules of our application together, and then on the entire
system, testing is done to check the performance, quality, and functionalities of an app. To

127
CHAPTER 7. TEST PLAN 128

monitor the flexibility of an app, we also ran our app on different android devices, and all the
requirements and functionalities were working properly.

7.3 Test Management Process

7.3.1 Design the Test Strategy


Here is the testing strategy:

• Scope: As we have already defined our boundaries, modules and features and all the things
are according to an application.

• Test Approach: We are doing testing on our application in order to remove bugs and check
that all functionalities are working properly and also performance of our application.

• Test Environment: For test environment we have already backup our data to save our app
from any kind of incidence.

• Test Tools: We are using android studio in build tool called Code Coverage.

• Conclusion: After implementing all the above steps, our application is ready to deploy
without any ambiguity and malfunctioning.

7.3.2 Test Objectives


The main objective is to verify that our application is bug free and ensures that it meets all the
functional,design, implementation, and performance requirements identified in the
specification document

7.3.3 Test Criteria


Testing criteria is given below:

• Assuring all-important Test Cases are passed

• Delivering absolute Functional Coverage

• Classifying and fixing all the high-priority bugs

• Re-testing and connecting all the high-priority bugs to execute similar scenarios successfully
CHAPTER 7. TEST PLAN 129

7.3.4 Resource Planning


Serial Number Modules Tester Name Tools
1 Signup and OTP Authentication Usama Aurangzeb Android-Studio
2 Log-in Usama Aurangzeb Android-Studio
3 Partner’s Module Mateen Sajid Android-Studio
4 Tourist’s Module Usama Aurangzeb Android-Studio
5 Organizer’s Module Mateen Sajid Android-Studio
6 Recommendations Mateen Sajid Android-Studio

7.3.5 Plan Test Environment


Before deploying the system into the real environment there will be the creation of an artificial
environment in a planned test environment called Code Coverage in Android Studio . Four
types of people will perform the task as a tourist, partner, organizer and, system admin in our
application.

7.3.6 Schedule and Estimation


Serial Number Modules Tester Name Starting To Completion Date
1 Sign up and OTP Authentication Usama Aurangzeb 20 Feb 2021 - 18 March 2021
2 Log-in Usama Aurangzeb 28 Feb 2021 - 18 March 2021
3 Partner’s Module Mateen Sajid 15 Aug 2021 - 30 Sep 2021
4 Tourist’s Module Usama Aurangzeb 18 April 2021 - 18 March 2021
5 Organizer’s Module Mateen Sajid 10 Oct 2021 - 28 Dec 2021
6 Recommendations Mateen Sajid 01 Jan 2022 - 29 Jan 2022
CHAPTER 7. TEST PLAN 130

7.4 Test Cases

7.4.1 Test Case 1

Table 7.1: Signup Test Case


CHAPTER 7. TEST PLAN 131

7.4.2 Test Case 2

Table 7.2: Login Test Case


CHAPTER 7. TEST PLAN 132

7.4.3 Test Case 3

Table 7.3: Profile Test Case


CHAPTER 7. TEST PLAN 133

7.4.4 Test Case 4

Table 7.4: Tour Booking Test Case


CHAPTER 7. TEST PLAN 134

7.4.5 Test Case 5

Table 7.5: Post Ad Test Case


CHAPTER 7. TEST PLAN 135

7.4.6 Test Case 6

Table 7.6: Organize Tour Test Case


CHAPTER 7. TEST PLAN 136

7.4.7 Test Case 7

Table 7.7: Partner Registration Test Case


CHAPTER 7. TEST PLAN 137

7.4.8 Test Case 8

Table 7.8: Weather Forecast Test Case


Chapter 8

Conclusion
8.1 Conclusion
This system is based on the needs of the Hospitality Industry of Pakistan and on the needs of
local and international tourists. A Person with basic knowledge of using a mobile phone can
use this application easily because it has a user-friendly interface. Tourhunt has a market of
tour ads, so it has given tourists a variety of tour packages options so that they can make the
best and most affordable decisions for their holidays and allows tourists to make a booking
from the application through the most Used Payment Methods, e.g., JazzCash and EasyPaisa;
also it lets tourists see the weather forecast of their destination. Tourhunt has not only to bring
easiness for tourists to arrange their vacations, but it has also given opportunities to Tour
Organizing Companies and hospitality industry of our country by allowing them to register in
the application and get bookings in return for free of cost. Tour organizers are able to post an
ad and organize tours while partners are able to register their business in order to get bookings
after setting the availability of their business. Tourhunt has a proper notification system in
which for every update, e.g., Receiving Bookings, Book Confirmation Cancellation, a
notification is sent to the users, and it also has a recommendation system that recommends
tour ads through notifications to tourists.

8.2 Future Work


Our future vision regarding our app can be categorized into two categories where we can
modify and upgrade our app functionalities and can increase the scope of an app by seeing and
observing new revolutions and user’s need. Although we talked about the improvements in
functionalities in our app but in terms of marketing and promotions in upcoming time, we
have some goals discussed below.

So, future goals regarding an app can be divided into two parts:

With Aspect of Software Engineering and Development :

• On basis of need, revolving and emerging strategies in market and customer’s


expectations we can add more functionalities in our app to ensure up-to-mark product
by adding these functionalities:

• Adding more payment methods for tourists.

138
CHAPTER 8. CONCLUSION 139

• Adding live GPS tracking functionality for safety purpose.

• Adding more partners like shopping malls, cinemas, and gyms to facilitate the tourists.

With Aspect of Marketing and Promotions:

After deploying successfully, next step will be to promote it in market for business purposes.
Basically, it will be carried out by different methods of promotions and marketing skills
discussed below:

• Promoting an app using social media platforms such as you-tube ads, google ads and
others.

• Promoting by influencers/celebrity endorsements.

• Enhancing searching and visibility using an ASO (app store optimization).


References
[1] Tripadvisor Holdings LLC. (2000). TripAdvisor (39.4) [Mobile application software].
Retrieved from tripadvisor.com

[2] SAP Concur. (2006). TripIt (14.2.1) [Mobile application software]. Retrieved from
www.tripit.com

[3] eTips LTD. (2018). Tours and Travel (3.0.19) [Mobile application software]. Retrieved
from Tours and Travel on the AppStore (apple.com)

[4] 02DCE, Software Engineering Prototyping Model, GeeksForGeeks, Oct 19, 2020.
Accessed on: April 8,2021. [Online]. Available: https://www.geeksforgeeks.org/software-
engineering-prototyping-model/

[5] Guru99. (2020). Prototyping Model in Software Engineering: Methodology, Process,


Approach. https://www.guru99.com/software-engineering-prototyping-model.html

[6] Risk Response Planning (2018).www.opentextbc.ca [Webiste]. Retrieved from


https://opentextbc.ca/projectmanagement/chapter/chapter-16-risk-managementplanning-
project-management/ Last accessed: 07/10/2021

[7] Rating Risk Likelihood and Impact (2019).www.mindtools.com [Webiste]. Retrieved from
https://www.mindtools.com/pages/article/newPPM78.ht Last accessed: 07/10/2021

[8] Risk Monitoring and Control (2020).www.cin.ufpe.br [Webiste]. Retrieved


from https://www.cin.ufpe.br/ if717/Pmbok2000/pmbokv2/wbs11.6.html Last
accessed:07/10/2021

[9] Risk Assessment (2020).www.javatpoint.com [Webiste]. Retrieved from


https://www.javatpoint.com/software-engineering-risk-management-activities Last
accessed: 07/10/2021

140

You might also like