Presentation is loading. Please wait.

Presentation is loading. Please wait.

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.

Similar presentations


Presentation on theme: "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."— Presentation transcript:

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 Confab - A casual talk

2 June 14 20022 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

3 June 14 20023 Examples of Using Context Context TypesExisting ExamplesHuman Concern Room ActivityAuto Lights On / OffConvenience Personal Identity & Time File SystemsFinding Info TimeCalendar RemindersMemory Activity Finding Info Safety Time Location Activity Health Alert Tag Photos History Identity Proximity Efficiency Service Fleet Dispatching Context Types Potential ExamplesHuman Concern

4 June 14 20024 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

5 June 14 20025 A New Class of Context-Aware Apps Active Badge (Olivetti) ParcTabs (Xerox PARC) Cyberguide (Abowd et al)

6 June 14 20026 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

7 June 14 20027 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)

8 June 14 20028 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

9 June 14 20029 Talk Overview  Motivation  Research Overview  Confab Architecture – Scalability  Confab Architecture – Privacy  Plan for Evaluation and Graduation

10 June 14 200210 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

11 June 14 200211 Architectural Sketch Information Spaces Carol's InfoSpace (Desktop) Information Spaces Carol's InfoSpace (PDA) Soda 525 InfoSpace (Server)

12 June 14 200212 Architectural Sketch Context Data Loc Act Loc Context Data Information Spaces

13 June 14 200213 Architectural Sketch Operators Context Data Information Spaces TransFilter Debug Operators

14 June 14 200214 Architectural Sketch Context Queries Loc Context Data Information Spaces TransFilter Operators Query Loc Trans

15 June 14 200215 Architectural Sketch Context Notifications Context Data Information Spaces Operators Notification (Standing Query)

16 June 14 200216 Architectural Sketch Peering of Information Spaces Carol's Context when Mobile Carol's Context in Soda 525 Context = Set of Available Info Spaces

17 June 14 200217 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

18 June 14 200218 Emergency Response Scenario Building InfoSpace Carol's InfoSpace 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

19 June 14 200219 Emergency Response Scenario Building InfoSpace Carol's InfoSpace Smart Dust User="Carol" Location="5th floor" Age="37 seconds" User="Carol" Location="525 Soda Hall" Time="Apr 12 1:05PM" NotificationLogging User="Carol" Location="525 Soda" Age="7 seconds"

20 June 14 200220 Layers of InfoSpaces and Context Data Physical Logical View My Location on PDA My Location on PC My Location to Strangers My Location to Friends My Location to Family

21 June 14 200221 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

22 June 14 200222 Talk Overview  Motivation  Research Overview  Confab Architecture – Scalability  Confab Architecture – Privacy  Plan for Evaluation and Graduation

23 June 14 200223 Privacy – Fair Information Practices Notice Choice Onward Transfer Access Security Data Integrity Enforcement

24 June 14 200224 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)

25 June 14 200225 A Privacy Design Space Legal Social Economic Technology Detection Avoidance Prevention CollectionSecond UseAccess Themes for Minimizing Asymmetry Data Lifecycle Anonymization Pseudonymization P3P RBAC Location Support Privacy Mirrors Wearables User Interfaces for Feedback, Notification, and Consent Goal: Provide reusable mechanisms that can populate this design space

26 June 14 200226 Privacy Mechanisms Operators Focus on providing mechanisms for prevention and avoidance, on collection and access Still working on this… Garbage collectionRemove or aggregate old data BlurringIncrease ambiguity Access ControlCheck authorization LoggingDetection FiltersRemove certain data

27 June 14 200227 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

28 June 14 200228 Talk Overview  Motivation  Research Overview  Confab Architecture – Scalability  Confab Architecture – Privacy  Plan for Evaluation and Graduation

29 June 14 200229 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

30 June 14 200230 The Ultimate Metric

31 June 14 200231 Q & A Privacy is good here, but be careful not to fall into the systems tarpit. Focus, Jason, focus!

32 June 14 200232 Q & A Agree with Bill do I, avoid the dark side of systems you must!

33 June 14 200233 Q & A Good work, Jason, I think you deserve a raise! This party's started!

34 Jason I. Hong http://guir.berkeley.edu/cfabric G r o u p f o r User Interface Research University of California Berkeley Thanks to: DARPA Expeditions PARC Intel Fellowship NSF ITR Yoda Context the circumstances in which an event occurs; a setting; to join; to weave

35 June 14 200235 Q & A Maybe 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.

36 June 14 200236 Q & A But 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.

37 June 14 200237 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

38 June 14 200238 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

39 June 14 200239 Context Data Person="jasonh@cs.berkeley.edu" Name="Location" Value="Room 525" Schema="Building:Room" Metadata= Time="1023498143" Time-to-Live="60sec" Source="SmartDust" Name="Device" Value=http://zzz.comhttp://zzz.com Schema="Device" Entity Attribute Relationship

40 June 14 200240 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

41 June 14 200241 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)

42 June 14 200242 Operators Problem: how to manipulate context data in a reusable manner? Chainable Operators Data-type ConversionEx. Celsius -> Farenheit FusionRefine same data type CompositionMerge different data types Garbage collectionRemove or aggregate old data BlurringIncrease ambiguity Access ControlCheck authorization LoggingDetection FiltersRemove certain data

43 June 14 200243 Context Queries Problem: how to use context data?

44 June 14 200244 Related Work Context Toolkit EventHeap ParcTab infrastructure

45 June 14 200245 Existing Examples of Using Context Context TypesExisting ExamplesHuman Concern Room ActivitySmoke AlarmSafetyRoom ActivityAuto Lights On / OffConvenienceObject IdentityBarcode ScannersEfficiency Personal Identity & Time File SystemsFinding InfoTimeCalendar RemindersMemory

46 June 14 200246 Potential Examples of Using Context Existing ExamplesContext Types Potential ExamplesHuman Concern ActivityConvenience ActivityFinding Info IdentityMemory Identity & TimeSafety TimeEfficiency Identity Time Location Proximity Activity History … Health Alert Auto Cell Phone Off In Meetings Service Fleet Dispatching Tag Photos Proximal Reminders

47 June 14 200247 Defining Context Abowd & 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)

48 June 14 200248 Defining Context Distributed 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?

49 June 14 200249 Defining Context Situated 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?

50 June 14 200250 Defining Context Phenomenology 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

51 June 14 200251 Defining Context My 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)

52 June 14 200252 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)

53 June 14 200253 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

54 June 14 200254 Vision Context-Aware Computing Today

55 June 14 200255 Vision Context-Aware Computing in the Future January


Download ppt "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."

Similar presentations


Ads by Google