the context fabric scalability and privacy for context-aware computing jason i. hong g r o u p f o r...

55
The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley Confab - A casual talk

Upload: brittney-booker

Post on 18-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

The Context FabricScalability and Privacy for Context-Aware Computing

Jason I. Hong

G r o u p f o rUser Interface Research

University of CaliforniaBerkeley

Confab - A casual talk

Page 2: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 2

Motivation

• Modern computers are divorced from our reality– Unaware of who, where, and what around them– Mismatch between our expectations and

functionality– Also limits what we can do with computers

• Computers have extremely limited input– Aware of explicit input only– A lot of effort to do simple things (or to remember)

• Context-Aware Computing– One line of ubiquitous computing research– Making computers more aware of the physical and

social situations they are embedded in

Page 3: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 3

Examples of Using Context

Context TypesExisting Examples Human Concern

Room ActivityAuto Lights On / Off Convenience

Personal Identity & Time

File Systems Finding Info

TimeCalendar Reminders Memory

Activity Finding Info

Safety

Time

Location

Activity

Health Alert

Tag PhotosHistory

Identity

ProximityEfficiency

Service FleetDispatching

Context Types Potential Examples Human Concern

Page 4: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 4

Technology Trends

• Sensors– GPS, Active Badges, Active Bats– Smart Dust– Cameras and microphones

• Recognition algorithms– MSR Radar location from 802.11– Smart Floor footstep force

• Wireless technologies– Bluetooth, 802.11, cell phone

Page 5: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 5

A New Class of Context-Aware Apps

Active Badge(Olivetti)

ParcTabs(Xerox PARC)

Cyberguide(Abowd et al)

Page 6: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 6

A Computational View of Context

• Context as a strategy for building apps• Increasing the number of input channels

into the computer– Pushing towards implicit acquisition of data

• Creating better models– Pushing towards the physical and social

• Using the input and models in useful ways– Proactively taking predictable and meaningful

actions– Tagging other information– Passing on the information to people

Page 7: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 7

Two Problems with Context-Awareness

• Scalability– Lots of people, places, things, and sensors– Over long periods of time– Over large geographic distances– Sharing resources (sensors and data)

• Privacy– Tremendous source of valid criticism– Need architecture and mechanisms to

safeguard personal data and make it easy for people to manage

– Need a way of thinking about privacy for ubicomp (previous talk)

Page 8: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 8

Research Goals and Solution Overview

• Provide network-oriented set of abstractions, mechanisms, and programming model

• Scalability– Data-oriented P2P repositories called information

spaces– Decentralized, high availability, with local control

• Privacy– Provide suite of mechanisms for app developers– Based on Fair Information Practices and

Information Asymmetry

Page 9: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 9

Talk Overview

MotivationResearch OverviewConfab Architecture – ScalabilityConfab Architecture – PrivacyPlan for Evaluation and Graduation

Page 10: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 10

Architectural Abstractions

• Information Spaces– TupleSpace repositories of context data and

operators– Associated with entities (people, places, things)– Somewhat similar to web servers and home pages

• Context Data– Representation for context data

• Operators– Reusable and composable code operating on data

• Context Queries / Notifications– Simple API for accessing context

Page 11: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 11

Architectural SketchInformation Spaces

Carol's InfoSpace(Desktop)

Information Spaces

Carol's InfoSpace

(PDA)

Soda 525 InfoSpace(Server)

Page 12: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 12

Architectural SketchContext Data

Loc Act ActLoc

Context Data Information Spaces

Page 13: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 13

Architectural SketchOperators

Context Data Information Spaces

TransFilterDebug

Operators

Page 14: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 14

Architectural SketchContext Queries

Loc

Context Data Information Spaces

TransFilter

Operators

Query

LocTrans

Page 15: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 15

Architectural SketchContext Notifications

Context Data Information Spaces

Operators

Notification(Standing Query)

Page 16: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 16

Architectural SketchPeering of Information Spaces

Carol's Context when Mobile

Carol's Context in Soda 525

Context = Set of Available Info Spaces

Page 17: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 17

Emergency Response Scenario

• Fire or earthquake situation• Keep track of the people in a building

– Allow building managers to check if a building is clear in the event of an evacuation

– Allow firefighters to check where people were

• Provide reasonable privacy protection– People don't like to be tracked– Emergency situations relatively rare

Page 18: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 18

Emergency Response Scenario

Building InfoSpace

Carol'sInfoSpace

Smart Dust

User="Carol"Location="525 Soda Hall"Time="Apr 12 1:05PM"

Access Control

User="Carol"Location="5th floor"Age="37 seconds"

Send location info

Logging

User="Carol"Location="in"Age="37 seconds"Blurring

Page 19: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 19

Emergency Response Scenario

Building InfoSpace

Carol'sInfoSpace

Smart Dust

User="Carol"Location="5th floor"Age="37 seconds"

User="Carol"Location="525 Soda Hall"Time="Apr 12 1:05PM"

Notification Logging

User="Carol"Location="525 Soda"Age="7 seconds"

Page 20: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 20

Layers of InfoSpaces and Context Data

Physical

Logical

View

My Location on PDA

My Location on PC

My Location

My Locationto Strangers

My Locationto Friends

My Locationto Family

Page 21: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 21

Scalability

• Architecture analogous to web– Information spaces are like web servers– Information spaces contain context data

• Differences from web architecture– Each device contains an information space (so

devices can access context even w/o net access)

– Information spaces contain operators for manipulating and protecting context data

Page 22: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 22

Talk Overview

MotivationResearch OverviewConfab Architecture – ScalabilityConfab Architecture – PrivacyPlan for Evaluation and Graduation

Page 23: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 23

Privacy – Fair Information Practices

• Notice• Choice• Onward Transfer• Access• Security• Data Integrity• Enforcement

Page 24: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 24

Privacy – Information Asymmetry

“In all of human history, no government has ever known more about its people than our government knows about us. And in all of human history, no people have ever been anywhere near as free.” (Brin)

Page 25: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 25

A Privacy Design Space

• Legal• Social• Economic• Technology

Det

ect

ion

Avo

ida

nce

Pre

ven

tion

Collection Second UseAccess

Th

emes

fo

r M

inim

izin

g A

sym

met

ry

Data Lifecycle

AnonymizationPseudonymization

P3P

RBAC

LocationSupport

Privacy Mirrors

Wearables

User Interfaces for Feedback, Notification, and Consent

Goal: Provide reusable mechanisms that can populate this design space

Page 26: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 26

Privacy Mechanisms

• Operators

• Focus on providing mechanisms for prevention and avoidance, on collection and access

• Still working on this…

Garbage collection Remove or aggregate old data

Blurring Increase ambiguity

Access Control Check authorization

Logging Detection

Filters Remove certain data

Page 27: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 27

Supporting Some Desired Properties

• Intentional ambiguity– "Where is Victoria?"– "Restaurant Chez Panisse" -> "Berkeley" -> "CA"– Give different answers depending on requestor

• Plausible deniability– "Is Adam busy?"– "Yes" or "Unknown" according to prefs

Page 28: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 28

Talk Overview

MotivationResearch OverviewConfab Architecture – ScalabilityConfab Architecture – PrivacyPlan for Evaluation and Graduation

Page 29: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 29

Evaluation

• Still in early-to-mid phases– Currently developing initial implementation– JDK, JXTA (Java P2P), XML– Possibly also WSDL, SOAP

• Target applications– SpeakEasy (PARC)– Suite of Emergency Response apps (next week)– Possible Educational Technology apps

• "Metrics"– Types of and effectiveness of apps that can be

built– Ease of adoption– Robustness

Page 30: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 30

The Ultimate Metric

Page 31: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 31

Q & A

Privacy is good here, but be careful not to fall into the systems tarpit.

Focus, Jason, focus!

Page 32: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 32

Q & A

Agree with Bill do I, avoid the dark side of systems you must!

Page 33: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 33

Q & A

Good work, Jason, I think you deserve a raise!

This party's started!

Page 34: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

Jason I. Honghttp://guir.berkeley.edu/cfabric

G r o u p f o rUser Interface Research

University of CaliforniaBerkeley

Thanks to:DARPA ExpeditionsPARCIntel FellowshipNSF ITRYoda

Contextthe circumstances in which an event occurs; a setting; to join; to weave

Page 35: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 35

Q & AMaybe privacy won't be a large issue in the future. Very difficult to say because of the tradeoffs in value, safety, convenience.

One way of evaluating is to describe the design space, and show how your work makes it easy to build in that space.

Page 36: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 36

Q & ABut do we really need ubicomp at all? And if so, how do we build and evaluate it so that it's socially relevant and meaningful?

Maybe context itself isn't really the issue, because activity orders and delineates what is and isn't relevant at any point.

Page 37: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 37

Functional Requirements

• Context Acquisition– Getting the data from a variety of sources

• Context Modeling– Representing the data

• Context Storage and Dissemination– Storing the data– Making the data available when it is needed

• Context Usage– Using the data in a program

Page 38: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 38

Context Data

• Problem: how to represent context data?• Entities

– Like nouns, people, places, and things

• Attributes– Like adjectives or properties, key-value pairs

• Relationships– How one entity relates to another entity

• Aggregates– Actions, Groups of people

Page 39: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 39

Context Data

Person="[email protected]"

Name="Location"Value="Room 525"Schema="Building:Room"Metadata=

Time="1023498143"Time-to-Live="60sec"Source="SmartDust"

Name="Device"Value=http://zzz.comSchema="Device"

En

tity

Attrib

ute

Rela

tion

ship

Page 40: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 40

Key Architectural Abstractions

• Information Spaces– Repositories of context data and operators

• Context Data– Representation for context data

• Operators– Composable code operating on context data

• Context Queries / Notifications– Simple query language (like SQL for DB)– Push / Pull semantics

Page 41: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 41

Information Spaces

• Problem: where to store context data?• Information Spaces analogous to web

servers– Have a unique name– Have an owner– Contain multiple (and not necessarily

related) pieces of data– Can get / put pieces of data (given security

and privacy prefs)

Page 42: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 42

Operators

• Problem: how to manipulate context data in a reusable manner?

• Chainable OperatorsData-type Conversion Ex. Celsius -> Farenheit

Fusion Refine same data type

Composition Merge different data types

Garbage collection Remove or aggregate old data

Blurring Increase ambiguity

Access Control Check authorization

Logging Detection

Filters Remove certain data

Page 43: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 43

Context Queries

• Problem: how to use context data?

Page 44: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 44

Related Work

• Context Toolkit• EventHeap• ParcTab infrastructure

Page 45: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 45

Existing Examples of Using Context

Context TypesExisting Examples Human Concern

Room ActivitySmoke Alarm Safety

Room ActivityAuto Lights On / Off Convenience

Object IdentityBarcode Scanners Efficiency

Personal Identity & Time

File Systems Finding Info

TimeCalendar Reminders Memory

Page 46: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 46

Potential Examples of Using Context

Existing Examples Context Types Potential Examples Human Concern

Activity Convenience

Activity Finding Info

Identity Memory

Identity & Time Safety

Time Efficiency

Identity

Time

Location

Proximity

Activity

History

Health Alert

Auto Cell Phone Off In Meetings

Service FleetDispatching

Tag Photos

Proximal Reminders

Page 47: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 47

Defining ContextAbowd & Dey / Moran & Dourish

• "Any information that can be used to characterize the situation of an entity, where an entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and the application themselves. Context is typically the location, identity, and state of people, groups, and computational and physical objects." (Abowd and Dey)

• "Context refers to the physical and social situation in which computational devices are embedded" (Moran and Dourish)

Page 48: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 48

Defining ContextDistributed Cognition

• Distributed cognition– Need to go beyond physical attributes (ex.

temp)– Look at “state of digital resources, people’s

concepts, task state, social relations, local work culture” (Kirsh)

– Model key attributes and deep structure of whole system (individuals, offices, social structs, work practices)

• Problems– What are the key attributes?– How to represent?

Page 49: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 49

Defining ContextSituated Action

• Situated action– Actions are fluid, moment-by-moment,

improvised, often unplanned, and highly context-dependent

– “[T]he context in which actions take place is what allows people to find it meaningful” (Dourish)

• Problems– Very high-level form of context– Can low-level computer-based context be

useful?– Also, how does this really help us build systems?

Page 50: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 50

Defining ContextPhenomenology

• Phenomenology– Reality consists of objects and events as they are

perceived in human consciousness and not of anything independent of human consciousness.

– Meaning (and hence context) arises from the ways in which we engage with and act within the world

• Problems– Need this level of sophistication to make progress?– How does this help us build systems? – Very wide chasm between philosophy and practice

Page 51: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 51

Defining ContextMy Perspective

• Point #1 – Not clear if we need a solid definition– Operating systems and Artificial Intelligence

• Point #2 – Let's treat it like "information"– Shannon treated it from a mechanical perspective

(i.e. transmission) made great inroads – We are still debating the meaning of "information"– But now we can do it electronically

• Let's treat context from computer perspective– Let designers define context app-by-app– Provide generic reusable mechanisms (like DB)

Page 52: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 52

Privacy

• Privacy is a relatively new concept in society, and is “ultimately a psychological construct, with malleable ties to specific objective conditions” (Grudin)– Convenience, Safety, Efficiency– Ex. Credit cards and cell phones

• Open access to online calendars for efficiency and awareness (Palen)

Page 53: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 53

Designing Context-Aware Systems

• Minimize automatic actions– Cost to benefit via decision theory– Benefit is getting it "right", cost is "wrong"– Factor in likelihood of getting it "right"

• Provide feedback– What is being captured?– Why did the system do that?

• Feed-forward– If you do that, then the system will do this

• Confirmation– The system just did the following action

Page 54: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 54

Vision

Context-Aware Computing Today

Page 55: The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r User Interface Research University of California Berkeley

June 14 2002 55

Vision

Context-Aware Computing in the Future

January