Context-awareness

Pervasive computing environments are fast becoming a reality. These days it is not extraordinary for a person to carry around a computing device in the form of a PDA, laptop, or, of course, the ubiquitous mobile phone. These devices are becoming more powerful as they get lighter in weight. Furthermore, advances in sensor technology means that a vast amount of real-time information could potentially be made available to the applications that execute on the mobile devices that people carry around with them every day.

A key component of any pervasive computing application is context. With respect to pervasive computing, Dey (2001) defined context as:

any information that can be used to characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves.

Context information is generally used by pervasive computing applications for one of two purposes: to provide situational awareness to the user such that they can make informed decisions about the task at hand; or to drive adaptation within the application itself (for instance, a communications application might switch to a more reliable communication channel if the current channel is faltering). 

Our overarching goal is to bring ubiquitous computing to the Australian emergency services and policing sector, in the form of intuitive and helpful applications for emergency response and recovery. Before this goal can be realised, several main challenges need to be overcome in the area of context management.

Challenges

A typical emergency response scenario involves numerous agencies and tens if not hundreds of emergency response personnel. Some of these emergency response workers are located in the field at the site (or sites) of the emergency, while others watch events unfold and issue directions from a command centre. In the state of Queensland, there's a primary command point called the State Operations Coordination Centre, or simply SOCC (pronounced "sock"). The applications we envisage as being useful in such an environment would provide situational awareness to the personnel operating the SOCC and robust methods of communication between the SOCC and emergency workers in the field, as well as amongst field workers. Relevant context information for these applications could be gathered from sensors deployed in the field, information about the kinds of devices carried by emergency workers and many other sources. The kind of environment described above is highly distributed. Thus, one of the challenges is to provide distributed management of context information. Another challenge is to ensure the availability of context information even in the face of mobility and sensor failures. Dynamic reconfiguration of context sources is therefore a priority.


The NICTA Context Engine

Approach

Our approach is to develop a distributed middleware for context-aware systems, building on our extensive experience in this research area. We are investigating methods of distributing context information between the nodes of context-aware systems. The middleware will take into account aspects of context information such as its update frequency, access frequency, source and so forth, to provide an efficient distribution of context information.

We are also developing an approach for managing the reconfiguration of context sources which will combat the problems of node disconnection, sensor failure and mobility. This is a standards-based approach, utilising the recent SensorML and IEEE 1451.4 (TEDS) standards for sensors.