Document Type

Technical Report

Publication Date






Technical Report Number



The increasing ubiquity of mobile devices has led to an explosion in the development of applications tailored to the particular needs of individual users. As the research community gains experience in the development of these applications, the need for middleware to simplify such software development is rapidly expanding. Vastly different needs of these various applications, however, have led to the emergence of many different middleware models, each of which approaches the dissemination of contextual information in a distinct way. The EgoSpaces model consists of logically mobile agents that operate over physically mobile hosts. EgoSpaces addresses the specific needs of individual agents, allowing them to define what data is to be included in their operating context by means of declarative specifications constraining properties of the data items, the agents that own the data, the hosts on which those agents are running, and attributes of the ad hoc network. In the resulting coordination model, agents interact with a dynamically changing environment through a set of views, custom defined projections of the set of data objects present in the surrounding ad hoc network. This paper builds on EgoSpaces by allowing agents to assign automatic behaviors to the agent-defined views. Behaviors consist of actions which are automatically performed in response to specified changes in the view. Behaviors discussed in this paper encompass reactive programming, transparent data migration, automatic data duplication, and event capture. Formal semantic definitions and programming examples are given for each behavior.