Problem:

An engineer at Google has found a way to get real-time gas prices across the country.

Assumptions:
  1. Gas prices can be linked directly to a specific station and can be represented on a map.
  2. The data can be used comparatively and used in an algorithm to filter and sort results.
  3. The data can be averaged fluidly by a user defined region.
  4. The data will be accrued throughout time to enable trending and relational history.

Analysis:

The first step is to determine how users could best use this new data. The obvious application is the ability to locate cheap gas and save money. Also to use the data relationally for a variety of purposes (like marketing statistical analysis, basic cost trending, and complex data comparisons, say in shipping/cost of goods analysis as well as historical/scientific relational studies between world events or conditional events and gas cost per region).

The consumer application can be divided into three major user scenarios.

  1. I want to find cheap gas now / here.
  2. I want to find cheap gas somewhere else.
  3. I want to use current and historical data about gas prices.

Feature Exploration:

My general approach is to find a way to incorporate new features from the bottom up as much as possible (instead of tacking on new features at a top level) so I see this new data stream being incorporated into a variety of products simultaneously depending on the userís need. This includes direct search, map search, and map exploration on both mobile and desktop devices, Google Analytics, and throughout Googleís other data comparison products and experiments. However, a standalone version of the feature could be created, say as a Google Labs product to be evaluated before integration into the larger Google suite.

The trick is to provide the data only to users who want it to prevent cluttering the UI or overloading features for the users who donít. This would require evaluating the userís intent (through keyword sets and user initiated options) and providing the information appropriately. In this way, the feature set would be largely invisible but show up exactly when needed.

Letís go through each user scenario and discuss how each need can be addressed.

Scenario 1: I want to find cheap gas now / here.
  1. A user is driving in their car and wants to find a gas station near them with cheap gas. The user types "Cheap Gas" into their mobile Google maps application and the red pins are filtered by lowest cost in relation to the userís GPS location. Hover info for each pin contains both the station name and the cost of regular gasoline for that location. A link is provided that when clicked plots a course from the userís current location to the station.
  2. A user is using a desktop device and wants to find cheap gas nearby. The user types "Cheap Gas" into Google search. Below the initial results for the keyword is a widget which shows a quick sample of cheap filling stations relative to the userís location. The price of gas for each station is designated in the listing. In addition a map appears in the top right column indicating results on a map. When clicked it launches scenario C.
  3. A user is using a desktop device and wants to find cheap gas nearby. The user types "Cheap Gas" into their Google maps application which returns a list of stations nearby ordered by price of gas. The price of gas is shown in the header next to each station. Each station is indicated on the map with pins that correspond to the letter of the station in the listing. This behaviour is identical to other cost/location items such as hotels.

Scenario 2: I want to find cheap gas somewhere else.
  1. A user is planning a trip and wants to find the cheapest route. The user plots the route in Google maps using the "Get Directions" feature. Under "show options" the user selects "Suggest fill ups" and clicks "Get Directions". Their route is then recalculated showing the most fuel efficient route and alternative routes with their distances/costs. Additional features allow the user to set MPG, pick individual stations, and set the range willing to deviate from their route to get good deals.

Scenario 3: I want to use current and historical data about gas prices.
  1. This is perhaps the easiest from a UX perspective. The live and historical data would simply be made available to Googleís existing data application as any other historical or location based data is made available. The information would be selected from that productís UI as it currently is designed.