It's already hours after dark. You're lost and alone in a city that is unknown to you, and you need transportation to a friend's apartment. Flagging down a taxi has always been a difficult and usually unsuccessful endeavor for you, for one reason or other, and you start getting anxious. Luckily, you have the Taxi, Taxi! app on your iPhone! With just a couple of taps and a short wait, a taxi pulls right up to you with your name on its LED display, all without you ever having to manually specify your location!
Taxi, Taxi!, an app that aims to revolutionize the way a taxi can be called, is the result of a rapid prototyping design challenge as a part of Cornell's Advanced HCI class. The assignment was to design a tool in order to encourage public transit; it was also an agile design challenge, as preassigned pairs would have to finish the first iteration of the design (accompanied with a detailed report) within a week. Taxi, Taxi!'s design is copyright myself and my partner, Sam Dannemiller.
From our prompt, I quickly sketched out three or four alternatives we could pursue; I then sat down with Sam, and we walked through each of them, finally settling on the idea of a device that would encourage taxi usage. Given our week's worth of time, Sam and I decided to put the beginning two or three days into research, and the rest into designing the tool and writing up the brief.
Consolidating User Data
Here, we took our two days looking into literature written about the taxi industry, as well as interviewing potential users and looking through customer reviews online. At the end of the second day, we took the information we had gathered, and consolidated it into three main personas for the app, all of whom are either visiting or living in moderate-sized cities. They are introduced below.
Meet David, the primary persona this app is targeting. David has been a city dweller for some time, now, having moved here at the beginning of middle school. In his teenage years, he is extremely tech-saavy (the type that loves blogging about current technologies) and street smart (the kind who knows when he's being overcharged, and likes to know what he's paying for), but is still pretty shy. He knows the city pretty well, and knows which parts to avoid. Problem is, having an intense fear of rejection, David is too shy to attempt to flag down a taxi, in fear of being rejected by an off-limits car, even when he prefers riding a taxi to walking.
Unlike David, Alice is a country girl new to the city area. In her twenty-somethings, she loves fashion, and loves staying on top of current trends. She has an iPhone because it's the "popular and fashionable option," and is comfortable with most of the features it offers, even though she's not a power user. Alice has never called a taxi before, and the whole process not only confuses her a little bit, but also "requires too much running." However, she cannot drive and frequently needs to carry large canvases and/or shopping bags from one part of the city to another. She doesn't carry much cash in hand, and would rather not give out her credit card to small vendors too frequently, like every time she needed a taxi.
Lastly, Bertha, a woman on the border of generation X and the baby boomers, is in the city to visit her son's family. She'll be here for a while, but her son won't always be home to attend to her. She's lived in cities before, and is restless when cooped up at home, so she likes to go sight-seeing in the city. The problem is, she's had vision problems for a while now, and absolutely cannot see when it gets dark. She has a smartphone only because her son's in a high-tech startup, and gives her his recycled, slightly out-of-date devices. She can make calls and use one or two apps here and there, but is not a strong user.
Keeping Their Goals In Mind
With these three personas in mind, we developed a core set of tasks we wanted to help our users accomplish:
- automatically book a taxi without knowledge of the booker's exact street address
- select an appropriate taxi based on cost, time until arrival, and quality rating
- get the taxi you reserved reliably
- pay with the simple press of an additional button
We took special heed of Hollan et al.'s Distributed Cognition Theory and Nielson's ten Heuristics when working on the design of this tool. We stressed that the goal of this distributed cognitive system, the delivery of the passenger to his/her destination, would be achieved by putting information about the customer's location into a physical artifact into the world. This physical artifact would thus help the two geographically separated people work together in a more unified way. In addition, we made sure to stress visibility of the system's status, error prevention, as well as the flexibility and efficiency of use of the system.
In the end, we decided that on the passenger side, this tool would be best manifested as a smartphone app because of the popularity of and people's familiarity with smartphones. Above, you will find some initial sketches, as well as a workflow diagram.
With everything decided, I took charge of the final mock-ups and little visual details. The prototype for users looking to book taxis is found below.
The Main Flow
The last three mocks shown in this flow are secondary features. 3rd from last: Fare meter during the ride-should be synched with Taxi driver's. 2nd from last: Integrated payment method. Last: Driver rating.
Alternatives to Main Flow:
1: Auto-book based on three attributes: cheapest, fastest to reach current location, or highest rating.
2: Taxi rejects user's request.
Even though Taxi, Taxi! is a rapid prototyping assignment, I believe its unique features has the potential to out-compete similar apps, and really encourage taxi-travel in medium-to-large sized cities. However, before it can become a full-functioning app, there are several hurdles in the way worth mentioning:
- Taxi Support: to build a truly magical user experience for both parties, taxi drivers must agree to modify their GPS to support Taxi, Taxi!
- Taxi-side Developement: taxi drivers may not be using the same GPS devices (or any at all) - thus, making the driver's side of the app may be difficult for future developers
- Real-time Updates: on the passenger side, the app must update the location of multiple taxis in real time, which is harder said than done