Storyboard

I have already defined that we will be building an Android app according to the deliverable of the task.

Let me create a quick storyboard on how I see the user experience. This technique was inspired by Brian Chesky, CEO of Airbnb who hired Pixar animator to visualize the experience of Airbnb customers (hosts/guests) [2].

Creating storyboards help me to empathize the user journey and also enables me to understand contextual situation and ideate potential challenges or needs users may have.

Figure 3: Storyboard of a happy flow of entire driver journey

Problems

By going through the user reviews, various contextual situations and storyboard, I assume the following are some of the pain points I can tackle in order to elevate the end-to-end user experience.

Getting pick up location far off from current location.

Unable to accept multiple jobs along fairly similar route for efficiency.

Date consumption by the app

Ability to perform on 2G or low speed networks

I have listed down some of the good vs bad experience specific to stages that are crucial in the driver app user flow.

Accept a job

Good Experience: getting jobs that are within the service area set.

getting jobs that are within the service area set. Good Experience: ability to quickly skim to available jobs before accepting.

ability to quickly skim to available jobs before accepting. Good Experience: ability to see delivery locations and estimated earning.

ability to see delivery locations and estimated earning. Bad Experience: getting jobs request while in the middle of a previous job.

2. Picking up item to deliver

Good Experience: ability to identify the package is correct.

ability to identify the package is correct. Good Experience: ability to check pick-up status if it is a food delivery.

3. At pick-up and drop-off locations

Good Experience: ability to contact assigned people.

ability to contact assigned people. Bad Experience: unable to contact people which may result in delay of the job.

User Journey and prioritization

According to the book Algorithms to live by, when faced with unknown situation, people have the tendency to use explore/exploit tradeoff. To explore is to try out new things to gather knowledge. To exploit is to use that information to perform tasks efficiently.

Exploration and Exploitation

To Explore

In order to make onboarding for the first time drivers delightful and easy, I am using a method called progressive disclosure. It is an interaction technique that delays the appearance of advanced or little used options to reduce the number of errors and facilitate user learning.

The main objective is not to overwhelm the user with all the available options, for this we relegate the less frequent or more complex tasks to later steps focusing on the core user flow.

In this scenario, we are enabling the new users to go through our complete end-to-end user journey.

Figure 4: A simple linear end-to-end user journey

To Exploit

After the drivers are familiar with the flow, they may want to set their preferences in order to maximize their earnings by completing more jobs in a day. In this the technological and business context comes into play where the AI is providing more jobs along a optimized route and business is offering bonuses as appreciation to hard working drivers.

Figure 5: advanced user flow with user preferences

Information architecture

In order to accomodate both beginner and expert users, I wanted to leverage an architecture where there is a single point of start and single prominent ability to take action in each stage of the journey.

Figure 6: Information architecture of the driver’s app

I did some quick rough sketching in order to identify how the above IA would look like in terms of screens and various other states based on the user journey mentioned above.

Figure 7: Snapshot of rough explorations of layout and states of user journey

You can read more about the navigation in android here 👇