Balancing autonomy and user control in context-aware systems - a survey
---
paper_title: Using Context as a Crystal Ball: Rewards and Pitfalls

paper_content:

Abstract: Context-awareness can be used to simplify a user’s understanding of, and interaction with, interactive systems. In effect, through adaptation, context-aware systems can migrate complexity away from the user and into the system (or agent). However, the incorporation of context-awareness raises a number of issues. For example, users are required to trust the behaviour of the system’s intelligence and this requires the system to have predictable behaviour and the ability to successfully and consistently preempt the user’s goal. Unfortunately, the agent may incorrectly preempt the user’s goal, owing to either flawed intelligence or to incorrect or out-of-date contextual information. In such circumstances the user is likely to feel frustration because the system will either appear overly prescriptive or, worse still, present incorrect results. This paper considers these issues, a number of which are described in anecdotal form, based on our experiences in developing and evaluating the context-aware GUIDE system.
---
paper_title: Making autonomic computing systems accountable: the problem of human computer interaction

paper_content:

The vision of autonomic computing raises fundamental questions about how we interact with computer systems. In this paper, we outline these questions and propose some strategies for addressing them. In particular, we examine the problem of how we may make autonomic computing systems accountable in interaction for their behaviour. We conclude that there is no technological solution to this problem. Rather, it calls for designers of autonomic computing systems to engage with users so as to understand at first hand the challenges of being a user.
---
paper_title: Is Context-Aware Computing Taking Control away from the User? Three Levels of Interactivity Examined

paper_content:

Context-aware computing promises a smooth interaction between humans and technology but few studies have been conducted with regards to how autonomously an application should perform. After defining three levels of interactivity between a mobile computing device and its user: personalization, passive context-awareness and active context-awareness, we test which approach will limit users’ perceived sense of control. We also investigate users’ preferences for the three approaches. We conducted an experimental case study, using mobile phone applications to exemplify the three levels of interactivity. Our study shows that users feel less in control when using either passive or active context-aware applications than when personalizing their own applications. Despite this we also find that context-aware applications are preferred over the personalization oriented ones. We conclude that people are willing to give up partial control if the reward in usefulness is great enough.
---
paper_title: Intelligibility and Accountability: Human Considerations in Context-Aware Systems

paper_content:

This essay considers the problem of defining the context that context-aware systems should pay attention to from a human perspective. In particular, we argue that there are human aspects of context that cannot be sensed or even inferred by technological means, so context-aware systems cannot be designed simply to act on our behalf. Rather, they will have to be able to defer to users in an efficient and nonobtrusive fashion. Our point is particularly relevant for systems that are constructed such that applications are architecturally isolated from the sensing and inferencing that governs their behavior. We propose a design framework that is intended to guide thinking about accommodating human aspects of context. This framework presents four design principles that support intelligibility of system behavior and accountability of human users and a number of human-salient details of context that must be accounted for in context-aware system design.
---
paper_title: Developing Context-Aware Pervasive Computing Applications: Models and Approach

paper_content:

There is growing interest in the use of context-awareness as a technique for developing pervasive computing applications that are flexible, adaptable, and capable of acting autonomously on behalf of users. However, context-awareness introduces a variety of software engineering challenges. In this paper, we address these challenges by proposing a set of conceptual models designed to support the software engineering process, including context modelling techniques, a preference model for representing context-dependent requirements, and two programming models. We also present a software infrastructure and software engineering process that can be used in conjunction with our models. Finally, we discuss a case study that demonstrates the strengths of our models and software engineering approach with respect to a set of software quality metrics.
---
paper_title: Topiary: a tool for prototyping location-enhanced applications

paper_content:

Location-enhanced applications use the location of people, places, and things to augment or streamline interaction. Location-enhanced applications are just starting to emerge in several different domains, and many people believe that this type of application will experience tremendous growth in the near future. However, it currently requires a high level of technical expertise to build location-enhanced applications, making it hard to iterate on designs. To address this problem we introduce Topiary, a tool for rapidly prototyping location-enhanced applications. Topiary lets designers create a map that models the location of people, places, and things; use this active map to demonstrate scenarios depicting location contexts; use these scenarios in creating storyboards that describe interaction sequences; and then run these storyboards on mobile devices, with a wizard updating the location of people and things on a separate device. We performed an informal evaluation with seven researchers and interface designers and found that they reacted positively to the concept.
---
paper_title: A Context Modeling Survey

paper_content:

Context-awareness is one of the drivers of the ubiquitous computing paradigm, whereas a well designed model is a key accessor to the context in any context-aware system. This paper provides a survey of the the most relevant current approaches to modeling context for ubiquitous computing. Numerous approaches are reviewed, classified relative to their core elements and evaluated with respect to their appropriateness for ubiquitous computing.
---
paper_title: Web Ontology Language Overview: W3C Recommendation

paper_content:

A method of recovering energy by means of a cyclic thermodynamic process which is induced by means of a medium comprising at least two substances or groups of substances, one of which substances is separated from the other at a point w' defining a first thermodynamic parameter of the medium and combined with the other one of said substances at a second point w'' defining second thermodynamic parameter of the medium while a differential in total pressure of the medium is maintained between the two points. The separation and combination of the two substances are induced by diffusion whereby one of the substances or groups of substances is diffused out of the other one of the substances or groups of substances at the first point and diffused into the other substances at the second point. The method contemplates particularly the recovery of energy from a heat reservoir of lower temperature by means of a cyclic thermodynamic process and has particular application to steam engines, refrigeration plants and heat pumps for the purpose of increasing the efficiency thereof and is based upon the concept of combining two processes one of which produces work and the other of which absorbs work.
---
paper_title: An infrastructure for context-awareness based on first order logic

paper_content:

Context simplifies and enriches human-human interaction. However, enhancing human-computer interaction through the use of context remains a difficult task. Applications in pervasive and mobile environments need to be context-aware so that they can adapt themselves to rapidly changing situations. One of the problems is that there is no common, reusable model for context used by these environments. In this paper, we propose a model of context that is based on first order predicate calculus. The first order model allows complex rules involving contexts to be written. It also enables automated inductive and deductive reasoning to be done on contextual information. The first order model allows an expressive description of context using Boolean operators and existential and universal quantifiers. Based on this model, an infrastructure to enable context-awareness in ubiquitous computing environments has been developed. The infrastructure allows the easy development and deployment of various sensors and context-aware applications. It also allows distributed reasoning to take place. This context infrastructure is part of our smart spaces framework for ubiquitous computing, Gaia.
---
paper_title: Refining visualization reference model for context information

paper_content:

Context-awareness can be used to decrease the need for interaction with a mobile device. This is increasingly important since the functionality of mobile devices and personal digital assistants gets more and more complex while the input and output capabilities remain restricted. An important aspect of context-awareness is to present the current context to the user. We propose a model for visualizing contextual information on the mobile terminal screen. The model is a refinement of a well-known visualization reference model; it takes into account the specific characteristics of mobile use and context information. We present the design of the model in detail, and discuss its applicability for a variety of contexts and tasks by providing a full-fledged use case.
---
paper_title: A Conceptual Framework and a Toolkit for Supporting the Rapid Prototyping of Context-Aware Applications

paper_content:

Computing devices and applications are now used beyond the desktop, in diverse environments, and this trend toward ubiquitous computing is accelerating. One challenge that remains in this emerging research field is the ability to enhance the behavior of any application by informing it of the context of its use. By context, we refer to any information that characterizes a situation related to the interaction between humans, applications, and the surrounding environment. Context-aware applications promise richer and easier interaction, but the current state of research in this field is still far removed from that vision. This is due to 3 main problems: (a) the notion of context is still ill defined, (b) there is a lack of conceptual models and methods to help drive the design of context-aware applications, and (c) no tools are available to jump-start the development of context-aware applications. In this anchor article, we address these 3 problems in turn. We first define context, identify categories of contextual information, and characterize context-aware application behavior. Though the full impact of context-aware computing requires understanding very subtle and high-level notions of context, we are focusing our efforts on the pieces of context that can be inferred automatically from sensors in a physical environment. We then present a conceptual framework that separates the acquisition and representation of context from the delivery and reaction to context by a context-aware application. We have built a toolkit, the Context Toolkit, that instantiates this conceptual framework and supports the rapid development of a rich space of context-aware applications. We illustrate the usefulness of the conceptual framework by describing a number of context-aware applications that have been prototyped using the Context Toolkit. We also demonstrate how such a framework can support the investigation of important research challenges in the area of context-aware computing.
---
paper_title: Topiary: a tool for prototyping location-enhanced applications

paper_content:

Location-enhanced applications use the location of people, places, and things to augment or streamline interaction. Location-enhanced applications are just starting to emerge in several different domains, and many people believe that this type of application will experience tremendous growth in the near future. However, it currently requires a high level of technical expertise to build location-enhanced applications, making it hard to iterate on designs. To address this problem we introduce Topiary, a tool for rapidly prototyping location-enhanced applications. Topiary lets designers create a map that models the location of people, places, and things; use this active map to demonstrate scenarios depicting location contexts; use these scenarios in creating storyboards that describe interaction sequences; and then run these storyboards on mobile devices, with a wizard updating the location of people and things on a separate device. We performed an informal evaluation with seven researchers and interface designers and found that they reacted positively to the concept.
---
paper_title: "Playing with the Bits" User-Configuration of Ubiquitous Domestic Environments

paper_content:

This paper presents the development of a user-oriented framework to support the user reconfiguration of ubiquitous domestic environments. We present a lightweight component model that allows a range of devices to be readily interconnected and an editor to support users in doing this. The editor discovers available ubiquitous components and presents these to users as jigsaw pieces that can be dynamically recombined. The developed editor allows users to assemble lightweight sensors, devices such as displays and larger applications in order to meet their particular needs.
---
paper_title: a CAPpella: programming by demonstration of context-aware applications

paper_content:

Context-aware applications are applications that implicitly take their context of use into account by adapting to changes in a user's activities and environments. No one has more intimate knowledge about these activities and environments than end-users themselves. Currently there is no support for end-users to build context-aware applications for these dynamic settings. To address this issue, we present a CAPpella, a programming by demonstration Context-Aware Prototyping environment intended for end-users. Users "program" their desired context-aware behavior (situation and associated action) in situ, without writing any code, by demonstrating it to a CAPpella and by annotating the relevant portions of the demonstration. Using a meeting and medicine-taking scenario, we illustrate how a user can demonstrate different behaviors to a CAPpella. We describe a CAPpella's underlying system to explain how it supports users in building behaviors and present a study of 14 end-users to illustrate its feasibility and usability.
---
paper_title: Developing Context-Aware Pervasive Computing Applications: Models and Approach

paper_content:

There is growing interest in the use of context-awareness as a technique for developing pervasive computing applications that are flexible, adaptable, and capable of acting autonomously on behalf of users. However, context-awareness introduces a variety of software engineering challenges. In this paper, we address these challenges by proposing a set of conceptual models designed to support the software engineering process, including context modelling techniques, a preference model for representing context-dependent requirements, and two programming models. We also present a software infrastructure and software engineering process that can be used in conjunction with our models. Finally, we discuss a case study that demonstrates the strengths of our models and software engineering approach with respect to a set of software quality metrics.
---
paper_title: A Conceptual Framework and a Toolkit for Supporting the Rapid Prototyping of Context-Aware Applications

paper_content:

Computing devices and applications are now used beyond the desktop, in diverse environments, and this trend toward ubiquitous computing is accelerating. One challenge that remains in this emerging research field is the ability to enhance the behavior of any application by informing it of the context of its use. By context, we refer to any information that characterizes a situation related to the interaction between humans, applications, and the surrounding environment. Context-aware applications promise richer and easier interaction, but the current state of research in this field is still far removed from that vision. This is due to 3 main problems: (a) the notion of context is still ill defined, (b) there is a lack of conceptual models and methods to help drive the design of context-aware applications, and (c) no tools are available to jump-start the development of context-aware applications. In this anchor article, we address these 3 problems in turn. We first define context, identify categories of contextual information, and characterize context-aware application behavior. Though the full impact of context-aware computing requires understanding very subtle and high-level notions of context, we are focusing our efforts on the pieces of context that can be inferred automatically from sensors in a physical environment. We then present a conceptual framework that separates the acquisition and representation of context from the delivery and reaction to context by a context-aware application. We have built a toolkit, the Context Toolkit, that instantiates this conceptual framework and supports the rapid development of a rich space of context-aware applications. We illustrate the usefulness of the conceptual framework by describing a number of context-aware applications that have been prototyped using the Context Toolkit. We also demonstrate how such a framework can support the investigation of important research challenges in the area of context-aware computing.
---

Title: Balancing Autonomy and User Control in Context-Aware Systems - A Survey

Section 1: Introduction
Description 1: Write about the motivation and objectives of the study, explaining the importance of balancing autonomy and user control in context-aware systems.

Section 2: Balance of control
Description 2: Discuss the design space for user control in context-aware systems and the need for dynamic adjustment of control and autonomy.

Section 3: Studies on user control
Description 3: Explain the concept of user control in context-aware systems and the challenges associated with transferring control from users to the system.

Section 4: Context modelling and reasoning
Description 4: Outline different approaches to context modelling and reasoning, and their implications for user understanding and control over context-aware systems.

Section 5: Programming models and tools
Description 5: Review various programming models and tools available for developing context-aware applications that provide appropriate levels of user feedback and control.

Section 6: End-user programming
Description 6: Describe end-user programming techniques that enable users to define the behavior of context-aware systems directly, along with their benefits and limitations.

Section 7: Preference-based decision support
Description 7: Discuss the incorporation of preference mechanisms in context-aware systems to provide user control and its associated complexities.

Section 8: Context Toolkit extension
Description 8: Detail a specific solution for user control based on the Context Toolkit, including its components and potential applications.

Section 9: Conclusions and future work
Description 9: Summarize the key findings of the survey and outline future research directions to enhance user control and feedback in context-aware systems.