Abstract
Ubiquitous computing represents the concept of computing everywhere, making computing and communication essentially transparent to the users. Applications in this type of environments are context-sensitive. They use various contexts to adaptively communicate with each other across multiple network environments, such as mobile ad hoc networks, Internet, and mobile phone networks. The property of context-sensitivity often becomes inadequate in these applications, where combinations of multiple contexts and users? actions need to be analyzed over a period of time. Situation-awareness in application software is considered as a desirable property to overcome this limitation. In addition to being context-sensitive, situation-aware applications can respond to both current and historical relationships of specific contexts and device-actions. Currently, no well-defined concept of situation and no general method exist to facilitate the development of situation-aware application software for ubiquitous computing environments. In this paper, the concept of situation is formalized, and an approach to developing situation-aware application software is presented. The approach utilizes our Reconfigurable Context-Sensitive Middleware, and is illustrated by an example on Smart Classroom.