The era of ubiquitous computing is upon us. We are seeing a sustained explosion in the numbers and types of networked devices and services with which users can interact. This means that great new capabilities are available to end-users, but such capabilities may come at a cost in terms of the complexity of understanding and managing multiple heterogeneous devices and services. In this dissertation, I present work on the design, development, and evaluation of three systems that offer solutions to existing approaches' shortcomings with regard to developing networked devices and services for end-users.

The Obje Framework is a distributed middleware platform that overcomes the problem of piecemeal interoperability by providing a robust interoperability solution for distributed services by dictating minimal up-front agreements and allowing the details of interoperation to be supplied at runtime through the delivery of mobile code.

The Obje Display Mirror (ODM) is a service that allows users to connect their laptops to any shared display device within a collaborative work environment, enabling seamless access to and interaction with remote devices. A study of ODM usage across six months indicated that its adoption had impacted workplace information sharing practices in a positive way.

OSCAR is an application that allows users to discover, control, and connect devices and services in a home media network. It leverages Obje to provide solutions to both piecemeal interaction and sluggish adaptation by allowing integrated control of all devices on the home network and allowing end-users to compose their own functionality from disparate devices and services. A two-phase user study involving 18 participants with varying degrees of technical skill demonstrates that users could employ OSCAR to create and access a range of functionality and that users were able to identify a wide variety of needs for which OSCAR would provide assistance.

The experiences with these systems reported in this dissertation point towards principles for designing frameworks and end-user tools to support an integrated, yet flexible and customizable user experience of ubiquitous computing environments.





Download Full History