400 likes | 471 Views
Context and Context-Aware Computing. Omar Khan CS260, Fall 2006. Background. Ubiquitous computing in early 90s: computing everywhere and “ invisible ” Implication Create applications that work seamlessly in human environments Understanding of context. Olivetti Active Badges.
E N D
Context and Context-Aware Computing Omar Khan CS260, Fall 2006
Background • Ubiquitous computing in early 90s: computing everywhere and “invisible” • Implication • Create applications that work seamlessly in human environments • Understanding of context
Olivetti Active Badges • Problem: locating researchers • Solution: badge tied to identity, tracked as researcher moves in building [Want and Hopper, 1992] Assistant sees this view - knows where researcher is - can forward call
Roadmap • Understanding context • Given an understanding of context, how can applications use it? • Example applications • Two Approaches: Dey and Abowd, Dourish • Case Study and Discussion
What’s the Context? Context:
What’s the Context Context: Shop in Indonesia
Video • http://www.youtube.com/watch?v=MTh5nCN_3K0
Thoughts • Question: How do we effectively infer characteristics of situations and usefully supplement them with technology?
Goal [Dey and Abowd, 2000] • Apps like Active Badges using specific user context (e.g. location) as application input • Need representation of context • Helps to build context-aware applications • better embedded in the UbiComp and mobile realms
What is Context? • By example • Location, time, identities of nearby users … • By synonym • Situation, environment, circumstance • By dictionary [WordNet] • the set of facts or circumstances that surround a situation or event • Problems: • New situations don’t fit examples • How to use in practice?
Operational Definition of Context “Context is any information that can be used to characterize the situation of an entity. 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.” [Dey and Abowd, 2000] Observations • From point of view of developer
Active Badges • Application: help operatorforward calls to researcher at appropriate location
Museum Audio Guide Example • Application: digital museum guide
Museum Audio Guide Example • Application: digital museum guide
Context Categories • Recall Dey’s goal: operational definition for use by designers and developers • Once you have entities, want to identify frequently useful contexts • Primary Categories • Answer basic questions like who, what, when, where • Index into more detailed secondary categories • Secondary Categories • More specific details that may be relevant
Primary Categories • Identity: every entity has a unique id • Location: position, spatial relationships (latitude/longitude, with friends, near a Starbucks, in the library) • Activity: what’s happening in the situation (touring a museum, reading a book) • Time: current time, duration of event, temporal ordering
Secondary Categories • Indexed by primary category • Phone number, address, social network, etc.. • E.g. identity -> email address, phone number, etc..
Context-Aware Applications • “A system is context-aware if it uses context to provide relevant information and/or services to the user, where relevancy depends on the user’s task.”
Context-Aware Features • Presentation of information and services • Tour guide, Active Badges • Automatic execution of services • Smart homes (turn off lights, adjust temperature) • Tagging of context to information for later retrieval • Digital camera meta-data (time, location)
Discussion • If you were designing an application and you wanted to take advantage of context, would this framework be helpful? • Example: cell-phone restaurant locator • Entities: ? • Relevant Characteristics (context): ? • Does this help the designer and user?
Dourish’s View on Context • What we talk about when we talk about context [2004] • Consider a central goal of UbiComp – invisibility of useful technology • Does not arise from design, but from useand incorporation into practices [Tolmie et al. 2002]
Dourish’s Context • Context is not • Set of stable features that characterize events • Representable • Context is • Emergent property of interactions (with people, objects)
Dourish’s Context • Previous approaches to context are representational: “what is context and how can it be encoded?” • Alternative approach uses interactional model: “how and why, in the course of their interactions, do people achieve and maintain a mutual understanding of the context for their actions”
Implications of Representable Context • Context is: • Form of information that can be encoded • Delineable: in advance define what contexts are relevant for the application • Stable: determination of relevance of potential context in an activity can be made once, reused • Separable from activity
Context can be encoded • Alternative: • You cannot bundle up all the context • Objects can be contextually relevant • Dey: relevant info about entities (people, exhibit, interface, …) is context • Dourish: all those things might be contextually relevant, but they do not fully describe the context
Context is Delineable • Alternative: • Scope of application’s contextual features is defined dynamically • Dey: When contexts X, Y, Z come into play, feature A can be engaged • Dourish: problematic
Context is Stable • Alternative • Context is an occasioned property • Particulars of situation and activity matter • Dey: Relevance of user’s proximity to an exhibit is always relevant • Dourish: highly dependent on the current situation
Context is separable from Activity • Alternative • Context is produced, maintained and enacted while doing the activity • Dey sort of agrees, but for him activity is very general
Practice • Practice: find meaning in the world by seeing what actions we can engage in • Computer scientist example • Context concerns: • How actions become meaningful in certain situations • Practice • Practice evolves => Context Evolves
Implications on Design • Technology becomes meaningful as individuals engage with it • Use may not align with designer’s conception: • Unexpected uses (e.g. SMS) • Generally used features “particularized” differently (e.g. our different uses of folder hierarchies)
Implications on Design • Predefined contexts will likely fail • “How can ubiquitous computing support the process by which context is continually manifest, defined, negotiated, and shared?” • Support evolution of meaning through practice
Example Application • Structures in Information Spaces • User places items in a two dimensional space, interact directly with data • System suggests relationships, user may work off those suggestions Suggested by Application
Discussion • Building an application • Current applications
Building an Application • If you were designing an application and you wanted to take advantage of context, would these frameworks help? • Example: cell-phone restaurant locator • Do these help the designer and user? Dey Entities: ? Relevant Characteristics (context): ? Context-Aware App? Dourish Context Engaging/Producing App? Both?
Case Study: Web Apps • Do they match up with our discussion of context? • How effective are they? • What are the problems? • What can they learn from the views of context discussed here? • Dey: Context can be represented and processed • Dourish: Context is emergent. Applications should help users produce new meanings and contexts