Context-Sensitive Data Structures Supporting Software Development in Mobile Ad Hoc Networks

Context-aware computing, an emerging paradigm in which applications sense and adapt their behavior to changes in their operational environment, is key to developing dependable agent-based software systems for use in the often unpredictable settings of ad hoc networks. However, designing an application agent which gathers, maintains, and adapts to context can be a difficult undertaking in an open and continuously changing environment, even for a seasoned programmer. Our goal is to simplify the programming task by hiding such issues from the programmer, allowing one to quickly and reliably produce a context-aware application agent for use in large-scale ad hoc networks. With this goal in mind, we introduce a novel abstraction called contextsensitive data structures (CSDS). The programmer interacts with the CSDS through a familiar programming interface, without direct knowledge of the context gathering and maintenance tasks that occur behind the scenes. In this paper, we begin by defining a model of context-sensitive data structures, and we identify key requirements and issues associated with building an infrastructure to support the development of contextsensitive data structures.