fast things slidedoc

32
The Internet of Fast Things: User Research for Realtime Big Data Query

Transcript of fast things slidedoc

Page 1: fast things slidedoc

The Internet of Fast Things: User Research for

Realtime Big Data Query

Page 2: fast things slidedoc

About me

1988 Formative education

2006 Painting, BFA

2006-2013 Designer of

statistical reports

2015 Design Management,

M.Des

Page 3: fast things slidedoc

Project Overview

Page 4: fast things slidedoc

Storing big dataWe already know what to do with historical (or static) big data—most BI solutions are not much different than Excel, just more powerful. !So what happens when we want to look at real time data?

Page 5: fast things slidedoc

Unlocking valueRealtime visual analysis is possible from a processing standpoint (see Apache Spark), but separating the noise from the value is a complex problem.

Noise

Meaning

Page 6: fast things slidedoc

The reason we use big data is to arrive at some decision or action. Getting to that stage starts with asking the right question. Stop talking about being data-driven, and start being question driven.

From data-driven to question-driven

Page 7: fast things slidedoc

Rules for realtime data queryAsking the right question, when you can’t look at everything, drives the cycle of learning and discovery. !To learn more about this, see here: www.google.com/patents/US20140351233

Crupi, 2014

You can’t look at everything

Questions are time-based

Questions are either superlative or comparative

Two question formats: Calculations and Patterns

1

2

3

4

Page 8: fast things slidedoc

Calculations vs. PatternsA calculation is a question like “show me the average speed over the past 10 minutes”. The answer to that question is the black line, which you’re likely familiar with.

A pattern fits on top of a calculation, and notifies us of a certain event or behavior. For example, “show me when a customer enters and exits the store in 5 minutes and doesn’t buy anything”.

Calculation

Pattern

Page 9: fast things slidedoc

Use case: Formula 1Formula One is a great use case for studying real time data query, because it’s fast-paced and complex. If we can design for a system like this, our findings will be relevant to less complex systems.

Noah Joseph, 2013

Page 10: fast things slidedoc

The race engineer is our top level user. He is the one who turns hypothetical strategy into reality.

He is supported by a team of engineers (sitting at the pit wall, and in another room off-site), who are all monitoring different systems. The cars each have about 1,000 sensors on them, and there is data from the track, the environment, other cars, and the driver.

Page 11: fast things slidedoc

The race engineerhas a Masters, and sometimes a Ph.D in Mechanical Engineering, or a related field. He’s a top expert in his field, but he’s not a programmer, so he can't write query.

Page 12: fast things slidedoc

We need a third languagethat bridges the gap between a natural language question and query. In historical data settings, we have time to learn the ‘language’ the UI uses to form questions (like writing a formula in Excel). But in real time, users want to write ad-hoc questions when time is precious.

SELECT * FROM ( SELECT bucketId FROM ( SELECT FuelIncrease, bucketId, MAX(FuelIncrease) OVER(ORDER BY bucketId ROWS BETWEEN 5 PRECEDING AND CURRENT ROW) AS MaxFuelIncreaseWithin60Seconds FROM ( SELECT AvgFuelConsumption - LAST_VALUE(AvgFuelConsumption) OVER (ORDER BY bucketId ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS FuelIncrease, AvgPressure, AvgTemperature, AvgFuelConsumption, bucketId FROM ( SELECT AVG(pressure) AS AvgPressure, AVG(temperature) AS AvgTemperature, AVG(fuelConsumption) AS AvgFuelConsumption, ROUND(timestampInMS / 10000, 0) AS bucketId FROM source GROUP BY ROUND(timestampInMS / 10000, 0) ) q1 ) q2 USING (bucketId)

Show me when the tire temperature drops below 30°C and also the speed drops below 70 km/h within 5 seconds.

Page 13: fast things slidedoc

Assumptions and hypotheses‣ Building questions should work like a

sandbox, not a path*

‣ Question elements should emulate Legos—modular, configurable, playful

‣ Colors and block position should have semantic meaning

!Thanks to Stephen P. Anderson for this one.

Speed

RPM

Temp

Page 14: fast things slidedoc

User Research

Page 15: fast things slidedoc

SubjectsI recruited four users, to get a sense of how actual engineers think and act. For the first round, I interviewed them, asking about pain points, current solutions, goals, etc. I searched for users with some Formula 1 background, or with experience with data analysis in fast-paced situations.

Performance engineer

Race engineer

Former air force flight instructor

Mechanical engineer

Page 16: fast things slidedoc

Interview strategy3 out of 4 interviews were conducted via Skype, due to geographical distance.

Page 17: fast things slidedoc

Problems with the studyUsers with relevant background were hard to recruit, due to the exclusive nature of Formula One, and the coincidence of the study with the height of the season. Two users were recruited via LinkedIn, and two were found via personal network.

Page 18: fast things slidedoc

Initial prototypeFrom the initial interviews, I developed an initial prototype—a form of visual syntax that I thought addressed what my subjects discussed.

Question: Show me when the tire

temperature drops below 30°C and also the speed drops below 70

km/h within 5 seconds.

Visual syntax:

Page 19: fast things slidedoc

Co-designFor the second round of interviews, I asked my subjects (3 this time) to help me design the solution. I gave them relatively simple questions, and asked them to ‘translate’ these questions into a visual syntax by placing together the building blocks I provided.

For the two remote subjects, I used a combination of Skype (for audio) and www.realtimeboard.com (as a collaborative whiteboard)

Page 20: fast things slidedoc

‣ Time window: placed ‘underneath’ the question, time unit placed in upper right corner (see photo, right) ‣ Built each question quickly and with

relative ease ‣ I want to be able to define the time

window in a couple ways. With a specific time period (e.g. ‘1:00:00 to 2:00:00’), or a general one (e.g. ‘over 3 minutes’)

User 1 Air Force flight instructor

Page 21: fast things slidedoc

‣ Time window: placed over question (see image, right) ‣ Brake pedal should have two

possibilities: 1. brakes engaged (yes/no), 2. brake pressure ‣ I want to be able to say ‘OR’ (this

was a glaring omission) ‣ I want to be able to name parts of

statements, so I can reuse them later

User 2 Race engineer

Page 22: fast things slidedoc

User 3 Performance engineer

‣ Very focussed on consequences: Discussed the consequence of each action, the effect of each variable, how the cars work and react to changes ‣ Time window: placed to the right of the

question ‣ I prefer to build the question in order of

priority. The main source of the ‘problem’ on the first row, and the rest of the conditions on the following rows ‣ Each part of the question should have

its own row. It’s more organized that way. ‣ Other engineers might like to organize

in another way.

Page 23: fast things slidedoc

Design conclusions

Page 24: fast things slidedoc

1. Format of the questionMeasure: whatever livestream the user is choosing to look at (e.g. SPEED) Change: the type of question the user wishes to ask, either superlative or comparative (e.g. ‘more than’)

Show me when…

measure changes time

fuel consumption page views temperature revenue water pressure

increases highest worst slowest top decreases

seconds minutes laps hours

over

Page 25: fast things slidedoc

2. Sandboxes and simplicityFocus action, and prevent users from getting lost by giving relevant clues BUT Do not constrain options, and allow users to build their question in the sequence they desire. Beginners are asked to drag a livestream into this box, but advanced users can start with another block.

Page 26: fast things slidedoc

3. ContextLooking at both realtime and historical data gives tremendous value. Allow users to compare both, by making some visual distinction between the two data sets

SPEED SPEED*

previous lap previous race previous year

right this second

vs.

Page 27: fast things slidedoc

3. Physical metaphors and affordancesDrag and drop boxes imitate physical building blocks, allowing users to build something, repair, and build again. Changes while building are reflected in the graph of the livestream data.

SPEED

EXCEEDS

200 kph

Show me when…

Page 28: fast things slidedoc

4. LimitationQuestion types are limited to what is relevant in realtime.

more than less than equals

increase decrease

max min

Page 29: fast things slidedoc

5. ModularityQuestions can be saved and archived for repeated use; Parts of questions can be saved as well.

“speed above 200 kph”

“tire temp issue”

Show me when…

AND

Page 30: fast things slidedoc

6. Time window placementTime window is placed to the right of the measure and change blocks !Can be specific (2:00:05 - 2:25:00) or general (6 seconds, 3 laps)

tire temp < 30°C

speed < 70 kph

AND 8 sec

Page 31: fast things slidedoc

What’s next?This same research and analysis process, and many of the conclusions, can be applied to myriad industries and requirements.

Page 32: fast things slidedoc

Thanks for reading!Alexandra Joseph @alexqjoseph [email protected]