In this paper, we present a forward recovery model for programming robust context-aware applications. The mechanisms devised as part of this model fall into two categories: asynchronous event handling and synchronous exception handling. These mechanisms enable designing recovery actions to handle different kinds of failure conditions arising in context-aware applications. These include service discovery failures, service binding failures, exceptions raised by a service, and context invalidations. This model is integrated in the high-level programming framework that we have designed for building context-aware collaborative (CSCW) applications. In this paper, we demonstrate the capabilities of this model for programming various kinds of recovery patterns in context-aware applications.
Bibliographical noteFunding Information:
The authors would like to thank the anonymous reviewers for their detailed and insightful comments that helped them in improving the presentation of this work. This work was supported by the US National Science Foundation grants 0411961 and 0708604.
- Context-aware applications
- Design methodology
- Exception handling
- Fault tolerance