Skip to main content
Uber logo

Schedule rides in advance

Reserve a rideReserve a ride

Schedule rides in advance

Reserve a rideReserve a ride

Unifying Mobile Onboarding Experiences at Uber

December 14, 2017 / Global
Featured image for Unifying Mobile Onboarding Experiences at Uber
Figure 1: Three iterations of Uber’s mobile onboarding interface within the rider app highlight how we have streamlined its design over the years.
Figure 2: Previously cluttered designs stand in stark contrast to our new information collection interface.
Figure 3: Our rider app rewrite incorporates simplified information collection steps that provide concise instructions for getting started on the app.
Figure 4: In our mobile onboarding architecture, answers are submitted in response to questions and errors until a session is received.
Figure 5: In our redesign, information collection steps may be dynamically styled for differing onboarding scenarios, as when gathering user passwords (depicted above).
Figure 6: The back end may specify different sets of data gathering steps to collect identical data types.
Figure 7: Uber’s new mobile onboarding framework employs our open source RIB architecture.
Figure 8: During startup, our system’s Entry RIB attaches a Welcome plugin if applicable (on left); otherwise, it attaches an app default (on right).
Figure 9: In the rider app’s mobile onboarding framework, Welcome sends Entry a client-defined question Orchestrator uses to initiate the collection of information.
Figure 10: Orchestrator provides Transformer with questions and receives a list of InfoStep RIBs in return.
Figure 11: Transformer assembles a list of applicable InfoStep RIBs built to satisfy provided questions.
Figure 12: Orchestrator provides Sequence with a question and a list of InfoStep RIBs for mapping.
Figure 13: Sequence maps a question to batches of InfoStep RIBs for presentation and answer submission.
Figure 14: InfoStep RIBs transmit gathered data to Orchestrator which uses Info for intelligent storage.
Figure 15: Orchestrator submits answers to the back end formed by supplying Sequence provided questions to Info.
Figure 16: Orchestrator provides Sequence with errors to distribute amongst relevant InfoStep RIBs.
Figure 17: Sequence adjusts its index by distributing errors amongst InfoStep RIBs.
Figure 18: Orchestrator supplies Sequence data for mapping before sharing the session with the rider app.

Posted by Kyle Gabriel