Mobile App Design and Development Report - Coursework 2, Year 1

Verified

Added on  2023/01/19

|11
|2103
|64
Report
AI Summary
This report details the development of an Android application, "For tourists by tourist," designed to enhance tourist experiences in London. The project, undertaken by a student, involved creating an app with features like registration, login, attraction browsing (museums, parks, attractions), booking, reviews, and image uploads. The report discusses the technical aspects, including the use of Android Studio, Firebase ML kit for database management, and the challenges faced during development, such as initial app crashes. The student highlights the importance of teamwork and the enjoyable aspects of the project. Furthermore, the report includes a discussion of the team's successes, potential improvements like adding map integration, and alternatives to Android Studio like Xamarin. The report provides insights into the student's learning experience and the application's functionalities.
Document Page
Running head: FOR TOURISTS BY TOURIST: AN ANDROID APPLICATION
FOR TOURISTS BY TOURIST: AN ANDROID APPLICATION
Name of the Student:
Name of the University:
Author Note:
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Major Steps of the project
The Tourist App named “For tourists by tourists”, is a rich android application, where the
application is made to improve the tourist experiences, in the London city. During our (me and
my group partner) time of the application development, we aimed at creating an android app
which would enhance the tourists experiences, by browsing through the application usage.
Moreover, to transform the thinking into reality, we distinguished the application’s pages into the
parts of Registration, Login, Attractions, Museums, Parks, Green Spaces, and other added
features are also included. We continued on creating the application in the following ways:
First, Android Studio 3.3 was installed in a computer system. Also, for the database
management, Firebase ML kit was configured.
Next, the settings of the Firebase project (database) was configured successfully, to create
a connection between the Firebase console and the project.
The designing of the activity pages were created, and further MainActivity.java was
coded to provide a Login/Registration options as the entry page of the application. The
registration and login page consisted of both ‘Email address’ and ‘Password’ textboxes,
where user would validate their entry to register/login successfully, into the app.
Document Page
(Login and Registration)
After successful login, the user is accessed to enter the FirstPageActivity.java page. Here,
three categories of- Museum, Attractions and Parks, are shown, which are buttons
(initiated by OnClickListener), to transfer user to any of the three based preference. After
selecting any one the preferences, the user is transferred to RecyclingViewActivity,
where the locations are available. Floating action button is also included, to access user
for adding any new places.
Document Page
(FirstActivity showing the Attraction, Museum and Parks buttons, and their contents)
After selecting any attraction from the ShowAttractionActivity.java, a new activity
initiates a new page to learn more about the attraction and further, book tickets (the
activity page is transferred to a new payment website). If an attraction is non-bookable;
Accordingly, the ‘Book a tour’ button is not available.
Booking and Review options)
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Also, a WritingReviewActivity.java gives access to the user, to write a review and leave
a rating, to any designated attraction spot. Also, ReadReviewActivity.java permits the
user to check the previous reviews, on the same spot.
(WritingReviewActivity.java) (ReadReviewActivity.java)
Lastly, the user can also add his own images, in the application to include a new
attraction in the ‘Attractions’ page, in the PickingImageActivity.java. Image is chosen
from the gallery and further, uploaded to the server. Next, in the UploadActivity.java, the
location and description of the spot is added, and ‘Save’ button uploads the attraction, in
the Firebase database.
Document Page
(PickingImageActivity and UploadActivity, to insert image and upload user’s detailed tourist
spot, respectively)
A logout (OnCreateOptionMenu()) option was always available in the top-right, to permit
the user to sign out from the app, anytime. After clicking on the Logout, the user is
reverted back to the MainActivity page.
(Logout button, in inflated menu bar)
Most important thing learnt from the project’s experience
The development of the respective android application (“From tourists by tourist”), has
produced and extended our knowledge to understand different features that can be added to an
android application. The use of Firebase ML kit, as a database, enhanced the insertion, deletion
and update of data. The dynamic feature of the application, is thus maintained. Also, we have
understood the importance of being a team, than an individual project, as the project and
Document Page
knowledge was shared by us, equally. Moreover, the familiarity of the android application
development and working as a team, were the most important things, we learnt from the project’s
experience.
Challenges
Every product development faces limitations (challenges) anytime, as it requires certain
complexity to build, thus drawbacks persist (Joorabchi, Mesbah & Kruchten 2013). Moreover,
during our time of development, few challenges were observed, such as-
During the initial phases of the application development, there was an issue of sudden
‘crash’ while running the app, as it produced unrecognizable errors (formerly). However,
it was resolved, as the issue was researched, and found to be from wrong line of code in
the MainActivity.java.
Sometimes, any of the two members were temporarily unavailable, thus, it slowed down
the development process.
Most enjoyable aspect of the project
Tourism and Hospitality is one of the booming sectors in the global community, and is
recognizable by many (Kang & Cho 2015). Our aim was to develop an application to help the
Tourism community in the city of London. Thus, we worked hard to create such an application
which would help the tourists to understand different spots in the same place, and further book a
ticket at the designated spot. The most enjoyable aspect of the project would be the experience to
work in a desired project, as a team. Each member shared their opinions with respect to the
improvements of the application, and how the errors can be optimized. There was a moment,
when the Firebase ML kit was functioning improperly, and we were confused of the source of
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
the error. After consecutive inspections, a mitigation was found by our respective team member.
The overall experience was overwhelming, while we expanded our knowledge of understanding
different operations, on developing an application on Android Studio platform. We felt a
cherishing moment after completing the overall work, and proper execution of the project,
further increased our motivation levels.
Team’s success and scopes for further improvement
During the overall period of research and development, several sources (Ma, Gu & Wang
2014; Inukollu et al. 2014; Boushehrinejadmoradi et al. 2015) were studied to understand the
importance of data implementation, in the coding of the Tourist app. The aim of our work was to
successfully create a traveler’s application, to browse and locate tourist destination spots, in the
city of London. Moreover, the aim was achieved. We used different processes, such as Firebase
ML kit for database, Picasso library for image processing/loading, and other renowned elements
to support the development of the application. Our team succeeded in developing a user friendly
application, which is easy, simple and efficient to understand and use by any moderately
knowledgeable (technical) person. The application is error-free (as of now) and dynamic in
nature, as users can update the appdata, to help other tourists. Moreover, the application was also
aimed to help the humanity and the respective community in any way possible. We have
achieved our goals successfully.
Improvements are always an option for the betterment of any software or hardware or any
product (Allix et al. 2016). Accordingly, our team members have also understood that
upgradations to the respective application, will have a significant changes to provide a better
interface and increased levels of quality features. We suggest improvements, in the following
ways-
Document Page
The addition of Maps to the spots would locate the desired place. Further, the addition of
navigation feature would, first ask the user to turn on his/her location services, for
accessing their GPS (current location), and then they can be navigated to their target
location, efficiently, through a single application.
Currently, the application is only limited to login/register via the application itself. Thus,
adding other accounts, such as Facebook, Twitter, Gmail, and others, would allow a
lively and fast alternative to manually login/register. Also, a “Keep me signed in”, feature
can be added to store the user’s lastly provided login information, and keep him/her
signed in (until they log out).
A premium version of the application can also be created, to provide certain discounts
and quality services to the customers of the app. For this, firstly the app is required to be
authorized by the Google PlayStore.
Alternative platform to Android Studio and its justification
Android Studio is already the native platform to create android applications, in the most
efficient way possible (Beyer & Pinzger 2014). However, if a choice was provided to us, for
choosing an alternative to the native app; accordingly, a cross platform with a unified
programming language named ‘Xamarin’- would be our preferable choice of application
development. For justification of such preference, the quality and advantages of Xamarin are
discussed as-
While building an android application on Xamarin, they can also be easily migrated to
other platforms, including iOS, Windows, etc. Thus, it saves learning and development
time.
Document Page
Xamarin integrates and complements with other technologies of Microsoft, such as
C#, .Net, to provide a greater option to the large organizations.
It further enhances full scale development and implementation.
However, the application has some drawbacks, like it is an expensive software, with no third-
party library support, where Android Studio is free and supports updates and third-party libraries.
Moreover, both the platforms support android development, however, building apps are dynamic
in Xamarin, due to its extensive features of building iOS, Windows and other apps, as well.
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
References
Allix, K., Bissyandé, T.F., Klein, J. and Le Traon, Y., 2016, May. Androzoo: Collecting millions
of android apps for the research community. In 2016 IEEE/ACM 13th Working Conference on
Mining Software Repositories (MSR) (pp. 468-471). IEEE.
Beyer, S. and Pinzger, M., 2014, September. A manual categorization of android app
development issues on stack overflow. In 2014 IEEE International Conference on Software
Maintenance and Evolution (pp. 531-535). IEEE.
Boushehrinejadmoradi, N., Ganapathy, V., Nagarakatte, S. and Iftode, L., 2015, November.
Testing cross-platform mobile app development frameworks (T). In 2015 30th IEEE/ACM
International Conference on Automated Software Engineering (ASE) (pp. 441-451). IEEE.
Inukollu, V.N., Keshamoni, D.D., Kang, T. and Inukollu, M., 2014. Factors influencing quality
of mobile apps: Role of mobile app development life cycle. arXiv preprint arXiv:1410.4537.
Joorabchi, M.E., Mesbah, A. and Kruchten, P., 2013, October. Real challenges in mobile app
development. In 2013 ACM/IEEE International Symposium on Empirical Software Engineering
and Measurement (pp. 15-24). IEEE.
Kang, H. and Cho, J., 2015. Case study on efficient Android programming education using multi
Android development tools. Indian Journal of Science and Technology, 8(19), p.1.
Ma, L., Gu, L. and Wang, J., 2014. Research and development of mobile application for android
platform. International journal of multimedia and ubiquitous engineering, 9(4), pp.187-198.
chevron_up_icon
1 out of 11
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]