A Context-Aware System Architecture for Mobile Distributed Computing, by Bill N. Schilit. PhD Thesis, Columbia University, May 1995.
DISSERTATION ABSTRACT: Although the world is populated by smart devices, for the most part they are ``islands'' of independent information and computation. This thesis explores how to build a cooperating ``society'' that provides people with ubiquitous access to information, communication, and computation. More specifically, the thesis advances the following goals: (1) enabling seamless interaction across devices; (2) creating physical spaces that are responsive to users; and (3) and building applications that are aware of the context of their use. Examples of these goals are: continuing in your office a program started at home; using a PDA to control someone else's windowing UI; automatically cancelling phone forwarding upon return to your office; having an airport overhead-display highlight the flight information viewers are likely to be interested in; easily locating and using the nearest printer or fax machine; and automatically turning off PDA alerts when in a meeting.
The contribution of this thesis is an architecture to support context-aware applications; that is, application adaptation triggered by such things as the location of use, the collection of nearby people, the presence of accessible devices and other kinds of objects, as well as changes to all these things over time. Three key issues are addressed: (1) the information needs of applications, (2) where applications get various pieces of information and (3) how information can be efficiently distributed. A dynamic environment communication model is introduced as a general mechanism for quickly and efficiently learning about changes occuring in the environment in a fault tolerant manner. For purposes of scalability, multiple dynamic environment servers store user, device, and context information for each geographic region. In order to efficiently disseminate information from these components to applications, a dynamic collection of multicast groups is employed. The thesis also describes a demonstration system based on the Xerox PARCTAB, a wireless palmtop computer.