Documente Academic
Documente Profesional
Documente Cultură
PRO REVIEW
BY
NAME ROLL#
SUPERVISED BY
DR.QASIM ALI ARAIN
DEDICATION
We dedicate this humble piece of work to our beloved parents and respected
teacher who have been a soucrce of support , motivation, knowlodge and
inspiration for all of us.
Certificate of Approval
This is to certify that the work presented in this thesis is entirely designed,
developed and written by the following students themselves.
NAME ROLL#
Supervisor Co-Supervisor
Chairman
Dated:
(i)
Acknowledgments
For the successful completion of our thesis titled “Pro Review”(An android app
that provide easiness in finding hotels, restaurant, hospitals to the user) pay
outmost regards to our parents to upbringing us to complete and escalate to the
astounding achievements concerning every aspect of our life.
The thesis actually has been a joint effort of several individuals, first and foremost
is our project supervisor Qasim Ali Arain ,Assistant Professor at Department of
Software Engineering.
Finally, we would like to express our deep regards to all other staff members on
board for giving us their precious time and advices concerning our problems
during the thesis.
(ii)
Table of Contents
CERTIFICATE……………………………………………………………………………i
ACKNOWLEDGMENTS………………………………………………………………...ii
TABLE OF CONTENTS………………………………………………………………iii-vii
LIST OF FIGURES……………………………………………………………………viii-ix
LIST OF TABLES………………………………………………………………………...x
ABSTRACT……………………………………………………………………………….xi
Chapter I: INTRODUCTION
1.1 Introduction…………………………………………………………………………...1
1.3.4 Objectives..............................................................................................................…...4
1.3.6 Advantages…………………………………………………………………….……..5
1.3.7 Limitations………………………………………………………………………...…5
1.3.8.1 User…………………………………………………………………………………..6
1.3.9.1 Registration…………………………………………………………………..………6
6
(iii)
1.3.9.3 Post Review……………….………………………………………………………....6
1.3.9.4 GPS………………………………………………………………………………….7
1.3.11.4 Maintainability……………………………………………………………………..9
1.3.11.5 Availability…………………………………………………………………………9
2.1 Introduction…………………………………………………………………………...10
3.1 Introduction…………………………………………………………………………...13
(iv)
3.3.4 Cooperation between Business people and developers….…………………………...14
3.4.2 Design……………….…………………..…………………..………………………...17
3.4.3 Development………...…………………..…………………..………………………...17
3.4.4 Implementation……...…………………..…………………..………………………...17
3.4.5 Maintenance.…………………..…………………..…………………………………...17
5.2 Android……………………………………………………………………………….25
5.2.1 History………………………………………………………………………………..25
(v)
5.2.3 Android Studio…………………………………………………………………….....26
5.3 PHP……………..……………………………………………………………………27
5.7 GPS……………..……………………………………………………………………28
6.3 Login…………………………………………………………………………………31
(vi)
7.8 Download and display User Review…………………………………………………48
5.1 Results……………………………………………………………………………….66
5.2 Conclusion…………………………………………………………….......................66
References.......…………………………………………………………………………...68
(vii)
LIST OF FIGURES
(viii)
Figure 7.2 Testing Singleton Object of HTTPS Request Queue..…………………………40
(ix)
LIST OF TABLES
(x)
Abstract
Pro Review is an Android app which facilitates the travelers to find hotels,
retaurants, hospitals near to them based on their GPS location. Our application
provide some easiness to travelers and for saving the time of travelers, this is an
android-based application, this app will provide users a platform for checking the
reviews regarding the place (restaurant, hotels, hospitals) that users want to visit.
In addition, users can submit the reviews (can be ratings, description and images)
about the place that users have visited.We have applied incentive mechanism(a
sourcing. Google Map used to show travelers location which make application
(xi)
CHAPTER NO I
INTRODUCTION
1.1 INTRODUCTION
This chapter discusses the research that was done in order to know about your
most wanted places of unknown cities by searching through an app and also get
knowledge of that place according to reviews of people that either that restaurant
or shopping mall etc is worth going for you or not. The original study work is
also discussed in this chapter to give readers idea of the application that has been
developed. Your current place is taken by this app, and show you nearby places
accordingly.
1.2 BACKGROUND
shopping malls or hospitals in a new city where you don’t know anyone to guide
you perfectly. And if you heir a guider than may be there is a possibility that he
can tell you some places according to his choice that you don’t like after visiting.
In past few years, so many apps have been built related to searching places of any
city in which someone is a new comer, a traveller or a tourist. That kind of apps
1
guides users to get knowledge of that particular place where user is wanted to go
for the very first time. These kinds of apps are working in most of the American
the different nature of cities. Mobile apps provide a wide range of information in
a short period of time. A tourist can read reviews of any particular place and
decide what and when they require. Travelers become more empowered through
Our app is based on crowed sourcing. This application facilitates the travellers to
find hotel, restaurant, hospitals, and shopping malls without any difficulty. We
are developing an application which is named as PRO REVIWS .Here you can
find nearby places. Our application has all the features similar to current available
applications but in addition we are adding the mechanism for filtering reviews.
but there is an immense need of something unique that attracts the user. So this
have been issued to them. The procedure of this app starts from the admin side of
the application where user log in and turn his location on so the map will show
2
him how far his respective place is. Then he can go on review section and read
reviews of other users. After that he can give his own review along with pictures
too. The app provides gifts for their users to get the attention of its users. This
In this app, a user first have to login and write the area and city name to know the
location and also find out reviews of other users to know what exactly the services
are provided by that place and is it suitable for him to go there. A user can also
More specifically once you login the app, the app get your current location and
”university”. So these all four places displayed on your screen, now yoy
spwcifically choose where you want to go- let’s say you choose restaurents: then
all the nearly available restaurants are dsiplay on your screen, now you can check
the reviews of any restaurent you want, you can get to see how many of people
like or dislike the place you choose to visit. It will help you to take the right
Tourism is one of the rapidly growing businesses of the Pakistan and it is paying
obstinately in the Pakistan economy. The objective for developing the application
is to recommend places to visit within Pakistan for tourists and travellers in order
to assist them in planning and choosing places that are the most suitable for them
3
and meet their needs. As a traveller it is always been a difficulty to find some
good restaurants, shopping malls or hospitals in a new city where you don’t know
anyone to guide you perfectly. And if you hiar a guider then maybe there is a
possibility that he can tell you some places according to his choice that you don’t
like after visiting. As you heard ‘Moriority is Authority’ so here, from our
application you can check out what majoirity is reffering so you can get a good
1.3.3 Aim:
To develop an Android app and to make easy for traveller to search and locate
places near to them. See what others recommend the most. Check out what is
worth visiting.
1.3.4 Objectives:
Users would be able to post their reviews, rate the app, and upload five
pictures of the things you like the most about different places using this
app.
Make easy and convenient way of finding places. Searching would be easy.
4
According to your location nearby hospitals, restaurants and other things
We have gone through the literature and found that such kind of application has
been developed in USA, India, UK, and France but they are not really working
for Pakistan. So we are developing this app which will be used all over Pakistan.
1.3.6 Advantages:
If you want to go outside and you don’t know about the best shopping mall, you
just have to do is search the shopping mall in Pro Review the list of nearby
shopping malls will appear on the screen. You can checkout photos and reviews
of that place. After visiting some place you can also post your review about that
place and get reward (in terms of money) from application which you can use in
1.3.7 Limitations:
IOS.
You must have android based phone to download and use this app.
5
1.3.8 WHO CAN USE THE SYSTEM
1.3.8.1 User:
User can login/logout the system. The user can view, and post comment, rate the
app, rate the places, upload five pictures of the things you liked the most about
1.3.9.1 Registration:
After successful registration the user can login from his/her username and
6
1.3.9.4 GPS:
While posting the review the user must have to give his/her location either by
choosing the manual option or automatically by turning the GPs location on. It is
location.
1.3.9.5 Searching:
The user can easily search the places by selecting the city name or by typing
directly the place that user wants to visit. It help you in this way that you don’t
We have used Google Map so that the travellers can easily search the places near
to them. Also, you can check the direction so you don’t need to ask anybody
7
1.3.10 SOFTWARE & HARDWARE REQUIREMENTS:
Android Studio
MySQL
JSON
PHP
Emulator
Mobile Phone
directly linked with aspect of users those are travelling in unknown places
Thus hardware and software compatibility should strictly matched the minimum
normally.
8
1.3.11.2 Security Requirements:
The application should identify user with valid login id and password using login
feature. Pro Reviews mobile application would be secure and would validate each
entrance and would only allow authenticated mobile. Only verified app user
would be able to use the application. At its very first panel, a login would be
Android Studio: android programming will be used to develop the application for
SQL Database: SQL programming will be used to save the records (comments
1.3.11.4 Maintainability:
Backup of the application should take regularly, so if application crash due to any
1.3.11.5 Availability:
9
CHAPTER NO II
LITERATURE REVIEW
2.1 INTRODUCTION
This chapter discusses the research that was done in order to know about your
most wanted places of unknown cities by searching through an app and also get
knowledge of that place according to reviews of people that either that restaurant
The original study work is also discussed in this chapter to give readers idea of
malls or hospitals in a new city where you don’t know anyone to guide you
perfectly. And if you heir a guider than may be there is a possibility that he can
tell you some places according to his choice that you don’t like after visiting.
In past few years, so many apps have been built related to searching places of any
city in which someone is a new comer, a traveler or a tourist. That kind of apps
guides users to get knowledge of that particular place where user is wanted to go
10
for the very first time. These kinds of apps are working in most of the American
In this type of apps, a user first have to login and write the area and city name to
know the location and also find out reviews of other users to know what exactly
the services are provided by that place and is it suitable for him to go there. A
the different nature of cities. Mobile apps provide a wide range of information in
A tourist can read reviews of any particular place and decide what and when they
but there is an immense need of something unique that attracts the user. So this
11
The procedure of this app starts from the admin side of the application where user
log in and turn his location on so the map will show him how far his respective
place is.
User can go on review section and read reviews of other users. After that he can
give his own review along with pictures too. The app provides gifts for their users
to get the attention of its users. This app will filter abusive reviews too.
12
CHAPTER NO III
METHODOLOGY
3.1 INTRODUCTION
This chapter discusses the methodology that we had used in the construction of
our project. In the first chapter we described the purpose and working principle
of the application and, later we described the literature review of the project on
the basis of literature review ,background and history we had developed our
gathering,designing of the system and then implementing the whole system and
We are using agile methodology in building our application. Agile methodology is used widely
iterative approach. Each increment have six phases and after each increment a part of software
is build. All processes are broken into separate model that coder and designer work on. Main
Advantage of using agile methodology is that error can be find and fixed in the early of the
project. Every iteration has its own testing phase so there will be less chances of occurring error
13
3.3.1 Better Customer Satisfaction
Customer Satisfaction increase through continuous delivery of the product, through continuous
delivery customer are keep in touch with the development of the product, customer know the
progress and through delivery of each increment to the customer by fulfilling the user
requirement. The output of each iteration is a code that can be used to check whether they want
Agile methodology is flexible in changing requirement unlike in waterfall model in which all
the requirements are gather at the beginning of the phase or if customer wants to change the
requirement or want to change anything in the project, the customer will change it easily, while
in agile customer can change the requirement any time even late in the development phase.
Agile methodology provide an efficient way of delivering the project on time, because it
provide the immediate values (code) in each iteration and then user give some comments about
that value which is delivered to him. The team make sure that all the features are fully
lightweight, and informing that change is a normal and acceptable in software development.
This makes close partnership in order to clarify requirements just-in-time and to keep all team
14
Projects are built around motivated and trusted persons who are given the environment and
support they needed. Team members choose the jobs in which they have interest, e.g if someone
Gaining direct feedback by customer or use verbal communication at the workplace for the
benefit of better understanding. Virtual squad conversations are enabled through video
conferencing.
The principle of agile methodology is practiced through collocation and pair programming.
Collocation involves a many teams in the same area, pair programming involves two or more
programmers sharing a single workstation (single screen, keyboard and mouse). The
programmer at the keyboard is also called the "driver", and the other programmer which is
tangled in the programming task but focusing on two or more task is called "navigator".
Agile methodologies provide a balance among their personal and professional lives the crew
members promote happiness by avoiding stress or tiredness. Through teamwork and being
creative.
15
Agile methodologies provide the constructions, styles, requirements, and designs arise from
self-organizing teams. After passing some time, the team decide how to become more effective,
then set its performance accordingly. These meetings guarantee that the lessons which we have
The team is completely self-managing under the agile methodology. The team has the
responsibility to meet the goals of the product and is accountable for defining how they will
achieve the task which has to be completed. The basic rule is that the team knows how to do
the work.
In this phase we gather the requirements of our project. This phase addressed all the
requirements like
User Requirement
System Requirement
Functional Requirement
Non-Functional Requirement.
3.4.2 Design
16
In this phase we were build the layout, structure and high level design of the system. we are
divided each task into subtask. Test cases were also made in this phase.
3.4.3 Development
In this phase we were developed our project. First we were developed the login activity and
further we were developed the other activities in consequent iterations. Unit testing is done in
this phase. A defect report is also generated in the last of each iteration if there is any flaws.
3.4.4 Implementation
After each iteration we are doing testing of the code to in order to confirm that our application
is free from any bud or error. Regression testing is also done in this phase. We released small
portions of project. System testing is done after the complete release of the project.
3.4.5 Maintenance
In this phase some changes are made in project in order to repair flaws in design coding and
implementation.
Planning
Maintenance Designing
implementing Developing
17
CHAPTER NO IV
doing minimum amount of hard work and there is no full stop in making more
all over the world and also in Pakistan and it is paying obstinately in the Pakistan
economy.
within Pakistan for tourists and travellers in order to assist them in planning and
choosing places that are the most suitable for them and meet their needs.
There are many more benefits of online travelling applications. There are
thousands of these kinds of apps and websites running in the world. We have also
incentive mechanism. Before developing our app we have gone through the
18
The main problem which we have observed is that when the user search place
they don’t know about the environment of that place or either the place is good
or bad. To resolve this issue we have decided to develop an app which can help
the travellers to search the places near to the user and user can see the ratings and
read the comments about place so the decision could be made easy for the
travellers.
Use case diagrams are usually defined to as behaviour diagrams used to describe
a set of actions (use cases) that some system or systems (subject) should or can
perform in collaboration with one or more external users of the system (actors).
19
Fig 4.2 shows the use case diagram for user. This diagram shows that user can
edit profile. He/she can edit and delete review from the application.
20
4.3 ACTIVITY DIAGRAM
flow from one activity to another activity. The activity can be described as an
Fig 4.3. shows the activity diagram for the user. For using the application user
must have to register himself/herself first.When the user get registered with the
21
4.4 ENTITY-RELATIONSHIP MODEL
types (which classify the things of interest) and specifies relationships that can
22
4.5 HIGH LEVEL ARCHITECTURE
We can access application through android mobile and web. We can perform
functions with j-son parsing which is shared database so that when app is installed
in your phone it will make request to the server and server will give you response
from the centralized database and then we can use the application and access the
application.
23
CHAPTER NO V
This section includes the tools used for the implementation of the business logic
applications. The term usually refers to relatively simple programs that can be
combined together to accomplish a task, much as one might use multiple hand
Tools were originally simple and light weight. As some tools have been
into one place, sometimes increasing simplicity and productivity, other times
sought after. Successful tools have proven elusive. In one sense, CASE tools
24
emphasized design and architecture support, such as for UML, but the most
software engineer.
5.2 ANDROID
5.2.1 History
A software platform and operating system for mobile based on the Linux kernel.
Android was found way back in 2003. It was developed in Palo Alto, California.
Android was developed by Andy Rubin, Rich Miner, Nick Sears and Chris White.
own process.
25
Developing an android application is not tough using SDK (standard
development kit) and java emulator we can easily develop applications that
we want.
code editor and developer tools, Android Studio offers even more features that
enhance your productivity when building Android apps. A fast and feature-rich
emulator. A unified environment where you can develop for all Android devices.
Instant Run to push changes to your running app without building a new APK.
Android studio is used for this project as this project is based on mobile
application. First we install java development kit and then android studio. What
comes with android studio is a flexible gradle based build system, code templates,
github integration, and then download the latest android SDK components.
Android volley library is an http library that is used to manage network calls in
26
5.3 PHP
PHP (Hypertext Processor) is a widely used open source general purpose server-
side scripting language and a powerful tool which is designed for making the
This technology has been used in this project for developing the mobile
application scripts so that mobile application can connect to the database. The
The database used for the proposed application is MYSQL database version
(SQL).SQL is the most popular language for adding, accessing and managing
content in a database. It is most noted for its quick processing, proven reliability,
Google map is a powerful tool that helps you to find your wanted location. Google
map is able to find your location by just writing your target keywords.
In this project a user can find its concern location through this technology easily.
27
3.6 GOOGLE PLACES API
Google maps offers it’s API worldwide so one don’t need to write the full coding
for the same function. We use this method in our app to take benefits of this
technology.
3.7 GPS
GPS tracker is a navigation device installed in a mobile to track its movement and
location. Its basic features are real time tracking, route history up to 6 months,
and speed alert. We use this in our app to track the location of any place. It can
28
CHAPTER NO VI
IMPLEMENTATION
new city where you don’t know anyone to guide you perfectly.
Figure: 6.1
29
6.2 REGISTRATION ACTIVITY:
In registration activity you have to fill the all field appropriately and then press
signup button you will be registered and you can login in the app with id or
password.
Figure 6.2
30
6.3 LOGIN:
After getting registered, the user will write its user name and password to get
login.
Figure 6.3
31
6.4 MAIN ACTIVITY:
The main activity is showing all the nearby places including hospitals,
Figure 6.4
32
6.5 SUBMIT REVIEW ACTIVITY:
To submit a review you have to fill all the fields given in the activity. After filling
all the fields you just click the submit button and your review will be submitted
on the application.
Figure 6.5
33
4.6 SEARCH LIST:
When you search the particular place in the search box either it is hospital,
restaurant, hotel it will show you list of that places along with ratings.
34
Figure 6.6 (b) shows the list of restaurant
35
6.7 INCENTIVE MECHANISM DETAIL:
remove the slang or vulgar word, and filtered out the comments. After visiting
some place user can also post their reviews about that place and get reward (in
terms of money) from application. User can also check their balance, and use
Figure 6.7(a)
36
Figure 6.7(b)
37
6.8 GOOGLE MAP:
When you click view location on map Google map activity will open and it will
show you the locations of nearby hospitals, shopping centers and hotels.
Figure 6.8
38
CHAPTER NO VII
TESTING
Instead of creating new Request Queue each time when me have to make
a https request we should create only one Request Queue and use it all
39
Figure 7.2 a
Figure 7.3 b
40
Figure 7.4 c
41
7.3 Test Result
Figure 7.3
42
7.4 Download places Data
o Internet connectivity
o Place type
Figure 7.4 a
43
Figure 7.4 b
Figure 7.4 c
44
7.5 Test Result
Figure 7.5
Figure 7.6 a
45
Add markers to google map
Figure 7.6 b
Figure 7.6 c
46
7.7 Test Result
Figure 7.7 a
47
Figure 7.7 b
Figure 7.8 a
48
Display data
Figure 7.8 b
49
7.9 Test Result
Figure 7.9 a
Figure 7.9 b
50
Figure 7.9 b
Figure 7.10 a
51
Figure 7.10 b
52
7.11 Test Result
Figure 7.11
53
7.12 Test Case:
Request Queue
Short Description : This test case checks whether the only one HTTPS Request Queue is used though out
app or not.
Pre Conditions :
Table 7.12
54
7.13 Test Case :
app.
Singleton class.
Table 7.13
55
7.14 Test Results:
Post – Conditions :
System should return same copy of Request Queue object whenever it is needed.
Table 7.14
56
7.15 Test Case
Short Description : This test case checks whether the places data is downloaded successfully or not.
Pre Conditions :
Android phone.
Type of places
Table 7.15 a
57
Exp Action Expected System Response Valid/Invalid Comments
2 Get type of places. Get type of places from the user. Valid NA
3 Adding place type in URL Insert the type of the places in Valid NA
URL.
server.
Table 7.15 b
Post – Conditions :
If an error is occurred.
o Check if error because of internet connectivity, then make a request and wait for response to
come.
58
7.16 Test Results
Figure 7.16
Short Description : This test case checks whether the marker of places are inserted to map successfully or
not.
Pre Conditions :
Android phone.
Table 7.17 a
59
Exp Action Expected System Response Valid/Invalid Comments
store them.
Table 7.17 b
Post – Conditions :
After adding markers system should store each object of marker. Stored marker will used for
Figure 7.18
60
7.19 Test Case
Test Case # : 4 Test Case Name : Download and Display User Reviews
16SW172(RUSAB KHAN),
Short Description : This test case checks downloading user review and displaying them.
Pre Conditions :
Android phone.
Table 7.19 a
61
Exp Action Expected System Response Valid/Invalid Comments
1 Get user’s review data System should make request for Valid NA
using user’s email address. the user review data, and wait for
response to come.
Table 7.19 b
Post – Conditions :
62
7.20 Test Result:
Figure 7.20
Short Description: This test case checks capturing review image(s) successfully.
Pre Conditions :
Android phone.
Table 7.21 a
63
Exp Action Expected System Response Valid/Invalid Comments
image(s). temporary.
Table 7.21 b
Post – Conditions :
Figure 7.22
64
7.23 Testing Libraries
Devices:
lib
testImplementation 'junit:junit:4.12'
androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0',{
})
1. androidTestImplementation "com.android.support.test:runner:1.0.2"
2. androidTestImplementation "com.android.support.test:rules:1.0.2"
65
Chapter VII
7.1 Results
It can be said that we have achieved the required goal. Our main goal was to
facilitate the user in finding nearby places of unknown cities by searching through
an app and also get knowledge of that place according to reviews of people that
either that restaurant or shopping mall etc. is worth going for you or not.
7.2 Conclusion
This android app is based on Crowed Sourcing model means that end user use the
application and if they face any difficulty in finding their place of interest other
end user help them.. Using this android app you can get reward in terms of money
after posting reviews and rating about the place they have visited.
As we have discussed earlier that the only aim for developing this android app
was to help the travellers to finding their place of interest easily by using Google
map so that travellers would not face any difficulty in finding nearby places.
66
7.3 Future Work
Provide maximum security measures to the user so that they cannot face any
difficulty.
67
Refrences:
https://tg.yasar.edu.tr/en/department-of-tourism-guidance/
https://developers.google.com/maps/documentation/android-sdk/start
https://www.google.com/search?ei=zJNKXZfcBaa_lwSLj7ugCA&q=mar
kers+in+google+maps+android&oq=markers+in+google+maps+android
&gs_l=psy-ab.3..0i22i30l10.33459.45185..45449...1.0..2.1187.13136.2-
9j4j2j5j4j2......0....1..gws-
wiz.....10..0i71j35i39j0i67j0j0i131j0i131i20i263j0i20i263.CEOAC9sLR
Hg&ved=&uact=5
https://www.google.com/search?q=high+level+diagram+for+tourism+ap
plications&tbm=isch&source=univ&sa=X&ved=2ahUKEwjxjdjks_DjAh
XJzYUKHbqED5IQsAR6BAgGEAE
https://developers.google.com/places/web-
service/intro?utm_source=google&utm_medium=cpc&utm_campaign=F
Y18-Q2-global-demandgen-paidsearchonnetworkhouseads-cs-
maps_contactsal_saf&utm_content=text-ad-none-none-DEV_c-
CRE_374137922351-
ADGP_Hybrid+%7C+AW+SEM+%7C+SKWS+~+Places+%7C+BMM
+%7C+Places+API-KWID_43700046143621540-aud-
563211326064:kwd-475997044718-
userloc_9075153&utm_term=KW_%2Bplace%20%2Bapi-
ST_%2Bplace+%2Bapi&gclid=CjwKCAjw7anqBRALEiwAgvGgm7frz
MpGK9jSfrIeZ7SN-
cp0V55vkzM_ktUtnWR_F_TdtfLljwjc0BoCcxcQAvD_BwE
https://play.google.com/store/apps/details?id=com.ebmacs.pakistan.touris
m.tour&hl=en_US
https://odosta.com/3-top-travel-apps-in-pakistan/
http://www.ibexmag.com/featured/first-traveling-app-pakistan-makes-
travel-plans-easy/
https://codecanyon.net/category/php-scripts
68