Abstract
Context-aware computing refers to a computing paradigm in which the behavior of individual components is determined by the circumstances in which they find themselves to an extent that greatly exceeds the typical system/environment interaction pattern common to most modern computing. The environment has an exceedingly powerful impact on a particular application component either because the latter needs to adapt in response to changing external conditions or because it relies on resources whose availability is subject to continuous change. In this paper we seek to develop a systematic understanding of the quintessential nature of context-aware computing by constructing a formal model and notation for expressing context-aware computations. We start with the basic premise that, in its most extreme form, context should be made manifest in a manner that is highly local in appearance and decoupled in fact. Furthermore, we assume a notion of context that is relative to the needs of each individual component, and we expect context-awareness to be maintained in a totally transparent manner with minimal programming effort. We construct the model from first principles, seek to root our decisions in these formative assumptions, and make every effort to preserve minimality of concepts and elegance of notation.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Salber, D., Dey, A., Abowd, G.: The Context Toolkit: Aiding the development of context-enabled applications. In: Proceedings of CHI 1999, pp. 434–441 (1999)
Hong, J., Landay, J.: An infrastructure approach to context-aware computing. Human Computer Interaction 16 (2001)
Julien, C., Roman, G.C.: Egocentric context-aware programming in ad hoc mobile environments. In: Proceedings of the 10th International Symposium on the Foundations of Software Engineering, pp. 21–30 (2002)
Schilit, B., Adams, N., Want, R.: Context-aware computing applications. In: IEEE Workshop on Mobile Computing Systems and Applications (1994)
Julien, C., Payton, J., Roman, G.C.: Reasoning about context-awareness in the presence of mobility. In: Proceedings of the 2nd International Workshop on Foundations of Coolrdinations Languages and Software Architectures (2003)
Roman, G.C., McCann, P.J.: A notation and logic for mobile computing. Formal Methods in System Design 20, 47–68 (2002)
McCann, P.J., Roman, G.C.: Compositional programming abstractions for mobile computing. IEEE Transactions on Software Engineering 24, 97–110 (1998)
Fok, C.L., Roman, G.C., Hackmann, G.: A lightweight coordination middleware for mobile computing. In: Proceedings of the 6th International Conference on Coordination Models and Languages (2004) (to appear)
Back, R.J.R., Sere, K.: Stepwise refinement of parallel algorithms. Science of Computer Programming 13, 133–180 (1990)
Chandy, K.M., Misra, J.: Parallel Program Design: A Foundation. Addison-Wesley, NY (1988)
Hoare, C.A.R.: An axiomatic basis for computer programming. Communications of the ACM 12, 576–580, 583 (1969)
Harter, A., Hopper, A.: A distributed location system for the active office. IEEE Networks 8, 62–70 (1994)
Want, R., et al.: An overview of the PARCTab ubiquitous computing environment. IEEE Personal Communications 2, 28–33 (1995)
Abowd, G., Atkeson, C., Hong, J., Long, S., Kooper, R., Pinkerton, M.: Cyberguide: A mobile context-aware tour guide. ACM Wireless Networks 3, 421–433 (1997)
Cheverst, K., Davies, N., Mitchell, K., Friday, A., Efstratiou, C.: Experiences of developing and deploying a context-aware tourist guide: The GUIDE project. In: Proceedings of MobiCom, pp. 20–31. ACM Press, New York (2000)
Roman, M., Hess, C., Cerqueira, R., Ranganathan, A., Campbell, R.: Gaia: A middleware infrastructure to enable active spaces. IEEE Pervasive Computing, 74–83 (2002)
Wickramasuriya, J., Venkatasubramanian, N.: A middleware approach to access control for mobile concurrent objects. In: Proceedings of the International Symposium on Distributed Objects and Applications (2002)
IBM: T Spaces (2001), http://www.almaden.ibm.com/cs/TSpaces/
Sun: Javaspaces (2001), http://www.sun.com/jini/specs/jini1.1html/js-title.html
Cabri, G., Leonardi, L., Zambonelli, F.: MARS: A programmable coordination architecture for mobile agents. Internet Computing 4, 26–35 (2000)
Murphy, A.L., Picco, G.P., Roman, G.C.: Lime: A middleware for physical and logical mobility. In: Proceedings of the 21st International Conference on Distributed Computing Systems, pp. 524–533 (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Roman, GC., Julien, C., Payton, J. (2004). A Formal Treatment of Context-Awareness. In: Wermelinger, M., Margaria-Steffen, T. (eds) Fundamental Approaches to Software Engineering. FASE 2004. Lecture Notes in Computer Science, vol 2984. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24721-0_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-24721-0_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21305-5
Online ISBN: 978-3-540-24721-0
eBook Packages: Springer Book Archive