The Aura Software Architecture: an Infrastructure for Ubiquitous Computing

Abstract

Computing environments of the future should enable mobile users to take full advantage of the computing capabilities available at each location, while allowing them to focus on their real tasks, rather than being distracted by dealing with the configuration and reconfiguration of computer systems to support those tasks. The Aura infrastructure performs automatic configuration and reconfiguration of Ubicomp environments, according to the user's task and intent. This report describes the software architecture of the Aura infrastructure, and discusses the underlying rational. It describes the architecture from a layered perspective, detailing the partition of responsibility and shared assumptions, as well as from a component-connector perspective, detailing the protocols of interaction between the components (APIs and sequencing). The contents and format of the exchanged messages is extensively discussed, as well as the details pertaining service interconnection and decomposition. This report proposes a utility-based approach for modeling user preferences, and details how such models can be exploited for both coarse-grain automatic (re)configuration, and fine-grain adaptation to resource change.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Aug 01, 2003
Accession Number
ADA461186

Entities

People

  • David Garlan
  • Joao P. Sousa

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Autonomy
  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Abstracts
  • Accuracy
  • Artificial Intelligence
  • Automated Speech Recognition
  • Composite Materials
  • Computer Programming
  • Computer Science
  • Computers
  • Infrastructure
  • Language
  • Materials
  • Operating Systems
  • Reliability
  • Software Design
  • Software Development
  • Specifications
  • Translations

Fields of Study

  • Computer science

Readers

  • Agent-Based Social Robotics and Mobile-Assisted Learning in Virtual Environments.
  • Parallel and Distributed Computing.