The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.02 - March/April (2010 vol.36)
pp: 184-197
Devdatta Kulkarni , University of Minnesota, Minneapolis
Anand Tripathi , University of Minnesota, Minneapolis
ABSTRACT
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.
INDEX TERMS
Exception handling, context-aware applications, robustness, fault tolerance, design methodology.
CITATION
Devdatta Kulkarni, Anand Tripathi, "A Framework for Programming Robust Context-Aware Applications", IEEE Transactions on Software Engineering, vol.36, no. 2, pp. 184-197, March/April 2010, doi:10.1109/TSE.2010.11
REFERENCES
[1] F. Casati, S. Ceri, S. Paraboschi, and G. Pozzi, "Specification and Implementation of Exceptions in Workflow Management Systems," ACM Trans. Database Systems, vol. 24, no. 3, pp. 405-451, 1999.
[2] S. Ceri and J. Widom, "Deriving Production Rules for Constraint Maintenance," Proc. 16th Int'l Conf. Very Large Databases, pp. 566-577, 1990.
[3] S. Chetan, "Policy-Based Pervasive Systems Management Using Specification-Enhanced Rules," PhD dissertation, Univ. of Illinois at Urbana-Champaign, Sept. 2006.
[4] S. Chetan, A. Ranganathan, and R. Campbell, "Towards Fault Tolerant Pervasive Computing," IEEE Technology and Soc., vol. 24, no. 1, pp. 38-44, Spring 2005.
[5] S. Consolvo, P. Roessler, B.E. Shelton, A. LaMarca, B. Schilit, and S. Bly, "Technology for Care Networks of Elders," IEEE Pervasive Computing, vol. 3, no. 2, pp. 22-29, Apr.-June 2004.
[6] K. Czarnecki and U.W. Eisenecker, Generative Programming Methods, Tools, and Applications. Addison-Wesley, 2000.
[7] K. Damasceno, N. Cacho, A. Garcia, A. Romanovsky, and C. Lucena, Exception Handling in Context-Aware Agent Systems: A Case Study, pp. 57-76. Springer, 2007.
[8] N. Davies, K. Cheverst, K. Mitchell, and A. Efrat, "Using and Determining Location in a Context-Sensitive Tour Guide," Computer, vol. 34, no. 8, pp. 35-41, Aug. 2001.
[9] M. Evered and S. Bögeholz, "A Case Study in Access Control Requirements for a Health Information System," Proc. Second Workshop Australasian Information Security, Data Mining and Web Intelligence, and Software Internationalisation, pp. 53-61, 2004.
[10] C. Fetzer and K. Hogstedt, "Self∗: A Data-Flow Oriented Component Framework for Pervasive Dependability," Proc. Eighth IEEE Int'l Workshop Object-Oriented Real-Time Dependable Systems, Jan. 2003.
[11] M. Fleck, M. Frid, T. Kindberg, E. O'Brien-Strain, R. Rajani, and M. Spasojevic, "From Informing to Remembering: Ubiquitous Systems in Interactive Museums," IEEE Pervasive Computing, vol. 1, no. 2, pp. 13-21, Apr. 2002.
[12] M. Fredj, N. Georgantas, and V. Issarny, "Adaptation to Connectivity Loss in Pervasive Computing Environments," Proc. Fourth MiNEMA Workshop, 2006.
[13] D. Garlan, D. Siewiorek, A. Smailagic, and P. Steenkiste, "Project Aura: Toward Distraction-Free Pervasive Computing," IEEE Pervasive Computing, vol. 1, no. 2, pp. 22-31, Apr.-June 2002.
[14] R. Grimm, J. Davis, E. Lemar, A. Macbeth, S. Swanson, T. Anderson, B. Bershad, G. Borriello, S. Gribble, and D. Wetherall, "System Support for Pervasive Applications," ACM Trans. Computer Systems, vol. 22, no. 4, pp. 421-486, 2004.
[15] C. Hagen and G. Alonso, "Exception Handling in Workflow Management Systems," IEEE Trans. Software Eng., vol. 26, no. 10, pp. 943-958, Oct. 2000.
[16] B. Johanson, A. Fox, and T. Winograd, "The Interactive Workspaces Project: Experiences with Ubiquitous Computing Rooms," IEEE Pervasive Computing Magazine, vol. 1, no. 2, pp. 67-74, Apr.-June 2002.
[17] J. Keeney and V. Cahill, "Chisel: A Policy-Driven, Context-Aware, Dynamic Adaptation Framework," Proc. Fourth IEEE Int'l Workshop Policies for Distributed Systems and Networks, pp. 3-14, 2003.
[18] D. Kulkarni and A. Tripathi, "Application-Level Recovery Mechanisms for Context-Aware Pervasive Computing," Proc. IEEE Symp. Reliable Distributed Systems, pp. 13-22, 2008.
[19] D. Kulkarni and A. Tripathi, "Context-Aware Role-Based Access Control in Pervasive Computing Systems," Proc. 13th ACM Symp. Access Control Models and Technologies, pp. 113-122, 2008.
[20] A. Ranganathan, S. Chetan, J. Al Muhtadi, R.H. Campbell, and M.D. Mickunas, "Olympus: A High-Level Programming Model for Pervasive Computing Environments," Proc. Third IEEE Int'l Conf. Pervasive Computing and Comm., pp. 7-16, 2005.
[21] M. Román, C.K. Hess, R. Cerqueira, A. Ranganathan, R.H. Campbell, and K. Nahrstedt, "Gaia: A Middleware Platform for Active Spaces," Mobile Computing and Comm. Rev., vol. 6, no. 4, pp. 65-67, 2002.
[22] A. Romanovsky, "Exception Handling in Component-Based System Development," Proc. 25th Int'l Computer Software and Application Conf., pp. 580-586, 2001.
[23] D. Salber, A.K. Dey, and G.D. Abowd, "The Context Toolkit: Aiding the Development of Context-Enabled Applications," Proc. 1999 Conf. Human Factors in Computing Systems, pp. 434-441, May 1999.
[24] B. Schilit, N. Adams, and R. Want, "Context-Aware Computing Applications," Proc. IEEE Workshop Mobile Computing Systems and Applications, pp. 85-90, 1994.
[25] SUN, "Java Transaction API," http://java.sun.com/javaee/ technologies/ jtaindex.jsp, Nov. 2001.
[26] A. Tripathi, D. Kulkarni, and T. Ahmed, "A Specification Model for Context-Based Collaborative Applications," Elsevier J. Pervasive and Mobile Computing, vol. 1, no. 1, pp. 21-42, May/June 2005.
[27] A. Tripathi, D. Kulkarni, and T. Ahmed, "Exception Handling in CSCW Applications in Pervasive Computing Environments," Advanced Topics in Exception Handling Techniques, pp. 161-180, Springer, 2006.
[28] A. Tripathi and R. Miller, "Exception Handling in Agent-Oriented Systems," Advances in Exception Handling Techniques, pp. 128-146, Springer-Verlag, Jan. 2001.
[29] A.R. Tripathi, D. Kulkarni, H. Talkad, M. Koka, S. Karanth, T. Ahmed, and I. Osipkov, "Autonomic Configuration and Recovery in a Mobile Agent-Based Distributed Event Monitoring System," Software—Practice and Experience, vol. 37, no. 5, pp. 493-522, 2007.
[30] S.S. Yau, F. Karim, Y. Wang, B. Wang, and S.K.S. Gupta, "Reconfigurable Context-Sensitive Middleware for Pervasive Computing," IEEE Pervasive Computing, vol. 1, no. 3, pp. 33-40, July 2002.
5 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool