flash coffee 1/4 :

improve location detection system & store status






product designresearch

PROJECT UNDER
Flash Coffee

DURATION
2 weeks



OVERVIEW
There are times when you order coffee online in a hurry and it turns out that you ordered from the wrong store without realizing. If the store is going to open in 5 minutes, and you are there, but the app doesn’t let you order ahead.

the feedback we received from customers and barista was that a significant number of in-app customers placed orders with the wrong store, only noticing it when they reach for collection.


As a result of the unstable location detection system of the app, there is a high chance that the app will be unable to detect the user’s location accurately, which leads to an increase in waste cost. Moreover, the app pre-selects the default store automatically without any visible indication.

furthermore, app users cannot place an order for later from any opening soon store, especially in the morning when people are most likely to order.



OBJECTIVE
  • Making the app better able to detect the user’s current location more frequently/accurately will reduce the number of orders placed with the incorrect store.
  • Increase sales, especially during orders coming in prior to the store being opened.
  • Support the pre-order feature for the next day and when the store is closed.
  • Decrease instances where customers encounter errors when attempting to order near store closing hours in order to increase sales nearing store closing hours.


HOW DID I START THE PROJECT



UNDERSTANDING THE PRROLEM
Rather than immediately jumping into the solution, I stepped back to gain a better understanding of the problem we were trying to solve.

store status


  • There are only 2 store statuses, Open and Closed. The app does not allow users to place orders or even view menus for closed stores. 

  • The menus are listed under store level information, and some stores have a different menus. These issues prevent us from showing menus without selecting a pick up store.

  • The store information is quite unclear, and redundant. The selected store indicator is not prominent enough for users to recognize it. The addition of new store statuses requires reorganizing store information so that user don’t get confused and overwhelmed.



location detection


  • By detecting the user’s current location only the first time they open the app, if user is moving and location never updates, there is a high possibility that they will order from the wrong store without being aware of it.

  • When there is no internet connection or the user is underground, the pre-selected store will be the default store without any prompting if the app cannot detect the user’s location.



This is an example of app’s location detection system from Tiong Bahru MRT to Raffles Place MRT. It appears that the app is incapable of detecting the user’s location when they are underground, as the MRT is the main transportation on Singapore.


STORE STATUS EXPLORATION
Store Statuses
To understand what users need to know about store statuses, I began by discovering possible scenarios that can happen throughout the day since the store is open until closing time.



Store Information
In order to solve the unclear and redundant issues, I listed all the necessary information and regrouped architecture information. I considered how to display it more clearly and make it less confusing if the pick-up time and delivery time may differ in some stores. Some stores provide only one service (pick up/delivery).



Order type swimlane
User is landed to pick up tap by default, to select the store based on pick up store or delivery address. We need make it clear and less confusion.


LOCATION DETECTION EXPLORATION
User intent and mental model 
I mapped out the possible scenerios in a diagram to find out what user expect to see and select the store on the app.

  • Customers who did not enable location.
  • Customer who wants to explore locations for future ordering.
  • Customer who wants to find a store in a specific location.
  • Customer who wants to find a store nearby their current location.



Maps view exploration
After researching competitors, the rough solution is to create a map view, assuming it would be an ideal solution. While exploring the map view feature, I found that it cannot solve the problem of inaccurately selected stores. Creating a whole system that does not align with the company's vision is time-consuming. Therefore, we opt for a more straightforward solution with more impact.



Frequency of location detection exploration
I worked closely with the engineering team to discuss all the possibilities that we could detect user locations more frequently. The good news was we could detect the location every time the user minimizes and opens the app again which can help us detect the user's current location more accurately. Thus, we aim to address it and improve this in phase 1.



Distance detection between store and user exploration
If we are confident that the user is moving far away from the first pre-selected store then we ask if they want to continue with this store or change to another store. However, from the technical side, this is a bit tricky if we detect the location of when moving in/out of the store. Just GPS might not be enough, need help from another tech like Bluetooth beacons. But that requires other permissions.

The possible solution is to detect the user's location (paired with the nearby store) 2 times, when the user opens the app and when they press the 'View Cart' CTA. If the user's location is moved, we will prompt the user to confirm the store and suggest the new nearest store (paired with the user's location).
 


Showing menu without selected store
If there is no internet connection when the user is underground, instead of pre-selecting the default store, we prompt that we are facing a problem detecting their location and don’t pre-select any store for them. We don’t want to block users from seeing the menu or show blank space to them so we decide to show the menu from the latest store (the higher chance that the user will order from the same store) and also give an option to select the store manually. After the user presses the View Cart button, we will try to detect their location and ask them to confirm the store again.


UI DESIGN

location detection





store listing


The store listing has been enhance to make it easier for customers to identify the selected store. We are also removing the tap to make the current order mode more obvious, and switching between delivery or pickup will have to be deliberate.



store status






store detail


We are also taking the opportunity to enhance way store details are being presented, such as adding store photos to make it easier for customers to identity and locate our stores. The relevant operating hours is also shown first instead of the full list.