There are many apps, which all of us use every day. But have you ever thought of how they are developed or designed? Here is the full case study of GPS tracking app Winter Friend for sports and mountain lovers, which lets you track your friends location during your rest in the mountains, connect with friends, send them alarms and navigate various skiing resorts! You can download the winter app at https://itunes.apple.com/us/app/winter-friend/id1116922194?mt=8. Make your rest in the mountains safe and unforgettable!
2. “I really like winter. It is a time for
Christmas, presents and, of course
winter sports. Main purpose of
developing the application was to
allow user and his friends to find
each other on the resort, or to send
an alarm to the friends, when you got
injured. Hope it will help people to
feel more confident on the hill.”
Aleksandr
Project Manager
“We often attend misc events,
sometimes sponsoring some, in
London specifically. Everyone needs
apps now and this is where
Mobilunity with its literally unlimited
access to very skilled and very
affordable talent definitely stands of
a crowd. This app was a good project
to do. Nevertheless I prefer androids
:) but android apps are a subject for
way different case study.”
Alfonsine Williams
Director of Business Development
Any person, who has ever spent a winter vacation at
a skiing resort, has encountered the problem of
locating friends or relatives, and gathering them all
for a common lunch or coffee break. And for larger
groups this problem can be even worse. With
advancements in mobile technologies connections
have become available in almost every corner of the
globe, and with this you would assume that the
easiest option would be to give your friends a call.
This may be true, but what if you are spending your
winter vacation abroad? Roaming charges and
inconsistent connections could cost you hundreds of
dollars and eat into your vacation budget.
Our mobile application development team decided to take on
this challenge and develop a GPS phone tracking app, which
would allow its users to:
The outcome of the project is a new skiing app we call, Winter
Friend, available for iOS which we encourage you to download
on the App Store.
PROBLEM
1
Project Team
Project Manager
Designer
Backend Developer
iOS Developer
QA Engineer
Easily add contacts of friends
Locate and track your team on slopes
Communicate with friends
Send instant alarms in case of emergency
Avoid spending money on calls
3. As with any internal project, we started our GPS app
development process with initial market research. Our
Project manager analyzed popular skiing apps with
similar functionality to define the key advantages of the
new product and the Top 4 apps were compared using
the following criteria:
THE CASE STUDY
2
MARKET RESEARCH &
BUSINESS ANALYSIS
Criterion Find My Friends! Friends tracker Friend mapper
Phone tracker
for iPhones
Resort maps
User location
Friends location
Covered distance
Speedometer
Chat
Social streaming
Add locations
Push notifications
-
+
+
-
-
+
+
-
+
-
+
+
-
-
-/+ (SMS)
-
-
+
-
+
+
-
-
-
-
-
-
-
+
+
-
-
-/+ (SMS)
-
-
+
The analysis showed that the apps currently on the market lack two main features:
1. The ability to communicate directly with friends and send them alarms/alerts
2. A database of detailed resort maps
And these features were fully implemented in our new app.
4. Once we identified and agreed upon the key advantages
of the winter app over its competitors our Project
Manager proceeded to writing technical requirements for
the mobile application development project. This
included defining the milestones for the MVP version of
the app. At Mobilunity we use various tools for project
planning and tracking, and one of them is Redmine. Here
is a screenshot of the project:
TECHNICAL
REQUIREMENTS
3
Screenshot of Winter Friend project in Redmine
5. In line with project requirements our team proceeded to
develop the design for the sports app using Photoshop.
Our designer prepared the wireframes and 13 app
screens in total which were required for the following
modules:
Additionally we developed a logo for the app, default
images for the start and profile screens and a set of
icons.
To provide a better user experience we use InvisionApp
for all of our design projects, you may review the screens
for our app here:
UI/UX DESIGN
4
Registration/login through facebook
Friends
Current resort map
List of resorts
Prototypes of Winter Friend app done in PhotoShop
6. 5
The process of travel app development was divided into
2 parts: backend and frontend development. With both
teams working on Google Maps integration, Facebook
authorization and GPS data procession.
The Backend team was tasked at solving a list of issues
to allow the app to do the following:
BACKEND APP
DEVELOPMENT
Send user profile data to the server including the fields-
birthday, first_name, last_name, photo, & email through
Facebook’s API
Integrate Google Map’s API to receive the maps of the
most popular resorts
Change API to POST parameters list
Collect, store and receive GPS data to be reflected on the
map
Implement the alarm functionality using a custom push
notification library
Our iOS app developers were working on the following
functionality:
FRONTEND APP
DEVELOPMENT
App authorization through Facebook
Retrieve information on resorts through Google Maps
API
Get information about friends via Facebook API
Send GPS data on current location to the server
Implement friends search in the app
Slice all designs for iPhone ski resort app
Add sound to alarm messages in the app
Optimize the app for lower battery usage
Solving problems with integration of third-party services is not an issue when you hire an iOS app
developer with Mobilunity!
7. 6
Once our Objective C application was ready for testing, it
was thoroughly reviewed in developer mode by our QA
team on Apple devices including iPhone 5, iPhone 6, and
the iPhone 6S. The following features were reviewed for
bugs:
TESTING &
BUGFIX
User registration
User’s friends list
Ability to display user and his friends on Google Map
User profile
Search through friends list
Alarms
Resort list
Web cam/web site
Our marketing team’s task was to promote the new ski
app in order to get more app downloads. The team
started working according to the following plan:
PROMOTION
Analyze competition and define app keywords
Optimize the AppStore description
Launch a dedicated website for the mobile application
Plan the app’s landing page design
Create the app’s demo video explaining features of the
new application
Find relevant portals dedicated to winter sports and
interested in mentioning new apps in articles
Submit the app for review to specialized websites
11 bugs were reported and fixed in the process of testing, and our ski track app was ready to go over to
testflight on the AppStore. It should be noted here, that in-depth testing is an integral part of the mobile app
development services we provide.
The outcome of this activity was the launch of the new app website, which explains in detail how the app
works and who may benefit from using it.
8. 6
GPS app development with Google Maps and Facebook integration has a number of con-
straints, which should be taken into consideration. Our MVP mobile app development team
has faced and successfully solved several of them:
Friends list
Adding friends to your account is one of the common problems, when you want to use a new social app.
That’s why our Objective C developer decided to use facebook’s API for user registration. When a user logs in,
using their facebook account, the app automatically gets a list of friends, who use the application.
Maps
Currently the market provides plenty of map services, so there is no need to create your own. Leaders in the
industry include: Google Maps, Yandex Maps, Apple Maps and Open Street Maps. Some of the services are
free, and others require payment for some of the functionality features. For example, Apple Maps require an
iOS device to use them properly, so it wouldn't be the best solution, if you are looking for cross platform app
development. Yandex Maps are well detailed but only for the former Soviet Union. Open Street Maps is less
detailed so it would not be as useful with an app designed to help you find your friends. After critical analysis
of all existing features, we decided to use Google Maps API.
High battery consumption
Geolocation is a process that, if done incorrectly, can cause a major strain on a device’s battery. To avoid this
issue, our team set the accuracy to 20-30 meters, increased the intervals between requests to the server, and
implemented an algorithm which monitors the customer's location regulating when location data is sent to
the server.
Network load
To avoid overloading the network with constant downloading of new images, our developers implemented
image caching, and Core Data object graph framework to minimize the Internet consumption after the appli-
cations first launch.
CHALLENGES & SOLUTIONS
9. 6
https://mobilunity.com sales@mobilunity.com
The new snowboarding app Winter Friend became a mix of Facebook and Google Maps
integrations elegantly coded using Objective C as its programming language. The key tech-
nologies we used included:
TECHNOLOGIES USED
GPS for location tracking
Facebook API for registration, authorization and friends list
GoogleMapKit based on Google Maps API for resorts map visualization and user geo location definition
Objective-C for iOS app coding
AFNetworking to send the data to the web server
Core Motion and Core Location iOS frameworks to receive and process motion data
FastImageCache iOS library for storing and retrieving images
Core Data iOS framework for image optimization
Google Analytics for Mobile Apps for app analytics
Let’s make your dream come true and develop the app for your business!