huddle and information triggers: helping users automate complex and temporally-distant tasks

72
Huddle and Information Triggers: Helping Users Automate Complex and Temporally-Distant Tasks Jeffrey Nichols IBM Almaden Research Center UC Berkeley June 14, 2007

Upload: violet

Post on 22-Jan-2016

21 views

Category:

Documents


0 download

DESCRIPTION

Huddle and Information Triggers: Helping Users Automate Complex and Temporally-Distant Tasks. Jeffrey Nichols IBM Almaden Research Center UC Berkeley June 14, 2007. Today – Two Mini Talks. Huddle Automatic generation of interfaces for systems of connected appliances - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

Huddle and Information Triggers: Helping Users Automate Complex and Temporally-Distant Tasks

Jeffrey NicholsIBM Almaden Research Center

UC BerkeleyJune 14, 2007

Page 2: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

2

Today – Two Mini Talks

Huddle• Automatic generation of

interfaces for systems of connected appliances

• Part of my dissertation work on the Personal Universal Controller

Information Triggers• Helps users recall important

information or tasks at the moment they are important

• New project at IBM Almaden Research Center

• In collaboration with Jake Wobbrock at the University of Washington

Page 3: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

3

The Multi-Appliance Problem

Page 4: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

4

The Multi-Appliance Problem, cont.

How can we provide improved interfaces for systems of connected appliances?

Page 5: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

5

Control of Multiple Appliances

Built-in Interfaces

Universal Remote Controls

Custom Installations

Page 6: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

6

Huddle

Improved multi-appliance interfaces based on content flow

Flow-Based Interface

Aggregate User Interfaces

Page 7: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

7

Personal Universal Controller (PUC)

• Automatically generates interfaces for remotely controlling appliances [Nichols, UIST 2002]

• Specification language for describing appliance functionality

Dependency information that describes the availability of functions based on appliance state

• Automatically generate new interfaces to be consistent with previous interfaces [Nichols, CHI 2006]

Knowledge base that identifies and stores similarities between appliances

Page 8: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

8

Related WorkRoadie [Lieberman, IUI 2006]

Goal-oriented natural language interface for appliancesUses planner to configure appliances based on common sense database (EventNet)

ICrafter [Ponnekanti, Ubicomp 2002]

Builds aggregate user interfaces based on “service interfaces”Hand-coded interface aggregatorsLimited automatic generation capabilities

Omojokun, et al. [Omojokun 2006]

Examined how remote control interfaces might be generated from recordings of actual usageRecorded remote control usage with IR receiver

General Work on Interface Generation• Task-based work: TERESA [Mori 2004], XIML [Puerta, IUI 2002], others…• SUPPLE [Gajos, IUI 2004]

Page 9: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

9

Huddle Overview

• Introduction

• Content Flow Modeling

• Flow-Based Interface

• Aggregate User Interfaces

• Discussion and Future Work

Page 10: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

10

Content Flow Model

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Home Theater

Page 11: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

11

Modeling Tasks

Home Theater: Watching Television

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 12: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

12

Modeling Tasks

Home Theater: Watching Television

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 13: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

13

Modeling Tasks

Home Theater: Watching Television

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 14: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

14

Modeling Tasks

Home Theater: Watch DVD

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 15: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

15

Modeling Tasks

Home Theater: Watch DVD + Copy Tape

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 16: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

16

Modeling Tasks

Presentation Room

VCR

PowerPoint

Laptop Task

Manager

External Video

Control

Projector

Media Player

Page 17: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

17

Modeling Tasks

Presentation Room: Presenting PowerPoint

VCR

PowerPoint

Projector

Media Player

Laptop Task

Manager

External Video

Control

Page 18: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

18

Where does the model come from?

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 19: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

19

Where does the model come from?

DVD

TVVCR #1

Receiver

VCR #2

Page 20: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

20

Where does the model come from?

DVD TVVCR #1 Receiver

VCR #2

Page 21: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

21

Flow-Based Interface

Flow-Based Interface (FBI)

• Allows user to manage high-level tasks

• Quick specification of flows

• AI Planner automatically configures appliances

• Question/Answer interface to address conflicts

Page 22: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

22

Flow-Based Interface

Page 23: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

23

Flow-Based Interface

Page 24: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

24

Flow-Based Interface

Page 25: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

25

Flow-Based Interface

Page 26: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

26

Flow-Based Interface

Page 27: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

27

Flow-Based Interface

Page 28: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

28

Flow-Based Interface

Page 29: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

29

Flow-Based Interface

Page 30: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

30

Flow-Based Interface

Page 31: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

31

Aggregate User Interfaces (AUIs)• Allows user to manage low-level

details

• Control or setup of active flows

• General setup of all appliances

• Merged functionsAggregate Controls for “Watch

DVD”

Page 32: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

32

Aggregate User Interfaces

Three kinds• Control of Active Flows

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 33: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

33

Aggregate User Interfaces

Three kinds• Control of Active Flows

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 34: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

34

Aggregate User Interfaces

Three kinds• Control of Active Flows

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 35: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

35

Aggregate User Interfaces

Three kinds• Control of Active Flows

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 36: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

36

Aggregate User Interfaces

Three kinds• Control of Active Flows

DVD

TVVCR #1

BroadcastTelevision

Receiver

VCR #2

Page 37: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

37

Aggregate User Interfaces

Three kinds• Control of Active Flows

“Copy Tape” “Watch TV using TV speakers”

“Watch TV using Receiver

speakers”

Volume for TV

Volume for Receiver

Page 38: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

38

Aggregate User Interfaces

Three kinds• Control of Active Flows

• Setup of Active Flows

Two screens of “Watch DVD” setup

Page 39: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

39

Aggregate User Interfaces

Three kinds• Control of Active Flows

• Setup of Active Flows

• General Setup of all appliances

Two screens of General Setup for a home theater config.

Page 40: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

40

Aggregate User Interfaces

Three kinds• Control of Active Flows

• Setup of Active Flows

• General Setup of all appliances

Merged Functions• Most functions shouldn’t be

merged

• Some should: clock, language, sleep timer…

• Future work…Baudisch’s flat volume controlGeneral merging

Some merged functions

Page 41: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

41

Discussion

How can our use of content flow be extended?• Lighting in a presentation room

• Video-conferencing rooms

• Outside the home: factories & offices

• Kitchen?

Page 42: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

42

Future Work

Extending to more detailed content types• Home theater: support for HD signals, encoded audio, etc.

Setup and Troubleshooting• Tool for specifying initial wiring• Helping with Problems

More aggregate interfaces• Usage-based aggregate?

Usability evaluations

Page 43: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

43

Information Triggers

Page 44: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

44

Information Triggers

Motivation

It’s easy to find stuff on the web

It’s even easy to re-find something you’ve previously found...

...if you remember to re-find it when you need it

“Participants [in a re-finding study] complained that they often forgot to look for an information item until the period of its usefulness had

passed.” (Jones et al. 2005)

Page 45: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

45

Information Triggers

What we’ve built so far

A Firefox extension that allows people to associate web pages with future events at which that page will be particularly relevant

When the event occurs, the web page is automatically opened for the user

Goal is to make triggers as easy and lightweight to configure as possible

Supports three different types of triggers:

•Date & time

•Arrival of an e-mail

•Visit to a web page

Page 46: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

46

Beyond Current Reminder SystemsExisting reminder systems provide a short message about their topic, but info triggers provides the information itself

Context-based reminder systems (e.g. Cybreminder) have mainly used location for context

Page 47: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

47

ScenariosWaiting to login to a website to configure account information (date & time trigger)

Page 48: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

48

ScenariosResuming a task that can’t be completed in one sitting, e.g. waiting for manager approval (new e-mail trigger)

Page 49: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

49

ScenariosOpening a note-taking site when visiting a page with specific keywords (page visit trigger)

information retrieval

web pages

Page 50: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

50

ScenariosDelaying a task until a leisure period (page visit trigger)

Page 51: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

51

ScenariosOpening a set of pages all at once, e.g. opening one bill payment site opens others (page visit trigger)

Page 52: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

52

ScenariosAutomating routine browsing tasks (date & time trigger)

Page 53: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

53

Demo

Page 54: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

54

User FeedbackDistributed the extension within IBM, currently have several regular users

Needed features• Means for configuring mail triggers within mail reader• Ability to share triggers with others

Uses include:• Reminders of information related to a current event

• Automatically display the web page/blog of a person you are about to meet with

• Regular reminders of a task prior to a deadline• Make the conference registration page appear every morning on the week

before the early registration deadline• Automating phone call forwarding

• One user has a set of triggers that are able to automatically start and stop call forwarding from the office on days that he regularly works from home

• Automating regular browsing tasks• Weekly entry of status reports

Page 55: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

55

Discussion

Programming triggers can be hard or require being “clever”

• Can’t always predict when some information will be useful• Current set of triggers is powerful, but making them do what

you want may not be straight-forward• Delaying until leisure time trigger• Triggering the next time you open your browser• Triggers that open pages that trigger other things

Where should triggers be set?• Triggered information vs. triggering information• Need usability studies to improve authoring of triggers

Deferring Triggered Information• Moving the window to the background can be sufficient• May need an additional explicit mechanism

Page 56: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

56

Future Work

Other Trigger Events?• What other context information might be useful to trigger on?

Sharing Triggers• Can some of the overhead of sharing triggers be offset using

social mechanisms?

Distributed Triggers• No one is always at their browser• Trigger on mobile devices or across a user’s machines

Trigger Queues• A trigger that fires regularly associated with a queue of pages• Each time the trigger fires the next item from the queue is

displayed• “Interesting new articles from today”, “Quick online to-do items”,

“Papers to read”, etc.

Page 57: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

57

Future Work, cont.

Usability and Usage Studies• Improve the interaction• Is it useful? When?

Deeper Questions• How well can people anticipate when they will need

information?• How well can people anticipate when they will next be

interruptable?

Page 58: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

58

IBM Almaden Research Center

400+ research employees; 100+ students and postdocs

Research in Computer Science, Storage Systems, Science and Technology, Services Science

HCI-related Departments:• User Focused Systems group in CS• Services Sciences research

Page 59: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

59

USER Group at Almaden

Four main research thrusts:Activities

• Unified Activity Management• Koala

Web 2.0 and Social Computing• BlueMail• Fringe

Content Management• AACS, etc.

Interaction in Healthcare• Data entry for EMR• Communication management (awareness & context)• Patient-centered healthcare

Page 60: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

Thanks for listening!

For more information…http://www.pebbles.hcii.cmu.edu/puc/http://www.almaden.ibm.com/http://www.jeffreynichols.com/

Page 61: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

Huddle and Information Triggers: Helping Users Automate Complex and Temporally-Distant Tasks

Jeffrey NicholsIBM Almaden Research Center

UC BerkeleyJune 14, 2007

Page 62: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

62

Page 63: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

63

Page 64: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

64

Info Triggers Demo

Page 65: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

65

Info Triggers Demo

Page 66: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

66

Info Triggers Demo

Page 67: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

67

Info Triggers Demo

Page 68: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

68

Info Triggers Demo

Page 69: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

69

Info Triggers Demo

Page 70: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

70

Info Triggers Demo

Page 71: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

71

Info Triggers Demo

Page 72: Huddle and Information Triggers: Helping Users Automate Complex and  Temporally-Distant Tasks

72

Info Triggers Demo