Document Type

Technical Report

Publication Date






Technical Report Number



Context-aware computing is a new paradigm whose emergence has been fostered by a growing reliance on light and mobile computing devices, which adapt their behavior to changing environmental conditions. The dynamic nature of the environment is a direct result of the mobility of people and devices. Because the development of applications that entail a significant level of dynamic adaptation is a difficult and error-prone task, new design methods and constructs are needed. Precise and flexible specification of the resources needed to operate in specific contexts combined with transparent context management can simplify the development process. In this paper we propose a particular embodiment of this general design strategy in the form of a novel programming construct called context-sensitive binding. The approach allows programmers to define and use in their programs objects whose behavior is supported by code discovered at runtime within the computing environment surrounding the de-vice. The binding between the object in the program and the support object that delivers its realization is maintained transparently and is altered as the environment changes, thus making the binding context sensitive. The criteria for choosing among viable support objects are prescribed at the time the object is first instantiated. The paper introduces the concept of context sensitive binding, describes a Java-based implementation, and explores the programming implications of the proposed construct.


Permanent URL: