Computer Science Department
School of Computer Science, Carnegie Mellon University


The Aura Software Architecture:
An Infrastructure for Ubiquitous Computing

João Pedro Sousa, David Garlan

August 2003

Keywords: Ubiquitous computing, software architecture, task-oriented computing, everyday computing, self-configurable systems, adaptive systems, model-based adaptation, modeling user preferences, utility-based adaptation, resource-adaptive applications.

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 un-derlying 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 con-tents and format of the exchanged messages is extensively discussed, as well as the details per-taining service interconnection and decomposition. This report proposes a utility-based ap-proach 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.

47 pages

Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by