Context-awareness covers the idea of computers reacting upon, and adapting to the user’s context, e.g. location, time of day, the specific task the user is engaged in, etc. Context is sensed by tracking location of persons and objects, through sensors in the environment, and by trying to understand what the user is doing, by e.g. looking in his or her calendar.
As a basic infrastructure for enabling context-awareness, I have designed and implemented the Java Context-Awareness Framework (JCAF) [1].
JCAF is a java-based programming API and distributed runtime environment for the development and deployment of context-aware applications. JCAF is also distinctive in at least three ways: (i) JCAFs service-oriented infrastructure is a distributed system based on the idea of dividing context acquisition, management, and distribution in a network of cooperating context services; (ii) JCAF embodies a general-purpose, robust, modifiable, event-based, secure architecture; and (iii) JCAF has a generic, extensible, and expressive Java programming model for the deployment and development of context-aware applications and context models.
Documentation & Download
- JCAF is documented in the PERVASIVE 2005 paper [1].
- Technical Report [2]
- Tutorial [3].
- Java API documentation
- JCAF is released as open source at SourceForge.
Applications
AWARE Architecture
Maintaining social awareness of the working context of fellow co-workers is crucial to successful cooperation. For mobile, non co-located workers, however, this social awareness is hard to maintain. The AWARE architecture [4] is a generic platform for supporting context-mediated social awareness. The concept of Context-Mediated Social Awareness denotes how context-aware computing can be used to facilitate social awareness.
Based on the AWARE architecture we have developed the AwarePhone, which is a smartphone system designed to support context-mediated social awareness among hospital clinicians.
Proximity-Based User Authentication
The concept of Proximity-Based User Authentication denotes that users can simply walk up to a computer and their mere presence will log them in. We see proximity-based user authentication as a usability-wise ideal for UbiComp systems. Proximity-based user authentication is based on a context-aware user authentication protocol, which (1) uses a JavaCard for identification and cryptographic calculations, (2) uses a context-awareness system for verifying the user’s location, and (3) implements a security fall-back strategy. In the UbiComp 2003 paper [5] we analyze the security of this protocol and discuss the tradeoff between usability and security. We also present our current implementation of the protocol and discuss future work.
Context-Aware Hospital Applications
We have built a number of applications of context-aware computing for medical work in hospitals, which has shown to be a strong case for applying context-aware computing. JCAF is used as a general context-awareness infrastructure in place in a hospital that all clinical applications can access and use to adapt to the context in which they currently are running. To illustrate these ideas, we have been designing and implementing examples of context-aware clinical applications, including a context-aware Electronic Patient Record (EPR), a context-aware pill container, and a context-aware hospital bed – all of which reacts and adapts according to what is happening in their context [6].
References
[Bibtex]
@inproceedings{pervasive2005:bardram,
Address = {Munich, Germany},
Author = {Jakob E. Bardram},
Booktitle = {Proceedings of the 3rd International Conference on Pervasive Computing (Pervasive 2005)},
Editor = {Hans Gellersen and Roy Want and Albrecht Schmidt},
Month = May,
Pages = {98--115},
Pdf = {jcaf.pervasive.2005.printed.pdf},
Publisher = {Springer Verlag},
Series = {Lecture Notes in Computer Science},
Tag = {aware,jcaf,conference},
Title = {{The Java Context Awareness Framework (JCAF) - A Service Infrastructure and Programming Framework for Context-Aware Applications}},
Volume = 3468,
Year = 2005}
[Bibtex]
@techreport{bardram:jcaf,
Address = {Aarhus, Denmark},
Author = {Jakob E. Bardram},
Institution = {Centre for Pervasive Healthcare},
Note = {Available from http://www.daimi.au.dk/~bardram/jcaf/},
Pdf = {jcaf.v15.pdf},
Tag = {jcaf,tech},
Title = {{Design, Implementation, and Evaluation of the Java Context Awareness Framework (JCAF)}},
Year = 2005}
[Bibtex]
@techreport{bardram:jcaf_tutorial,
Address = {Aarhus, Denmark},
Author = {Jakob E. Bardram},
Institution = {Centre for Pervasive Healthcare},
Note = {Available from http://www.daimi.au.dk/~bardram/jcaf/},
Pdf = {jcaf.tutorial.v15.pdf},
Tag = {jcaf,tech},
Title = {{Tutorial for the Java Context Awareness Framework (JCAF), version 1.5}},
Year = 2005}
[Bibtex]
@inproceedings{cscw2004:bardram,
Author = {Jakob E. Bardram and Thomas R. Hansen},
Booktitle = {Proceedings of the 2004 ACM conference on Computer supported cooperative work},
Isbn = {1-58113-810-5},
Location = {Chicago, Illinois, USA},
Pages = {192--201},
Publisher = {ACM Press},
Tag = {aware,jcaf,conference},
Title = {{The AWARE architecture: supporting context-mediated social awareness in mobile cooperation}},
Url = {http://doi.acm.org/10.1145/1031607.1031639},
Year = {2004},
Bdsk-Url-1 = {http://doi.acm.org/10.1145/1031607.1031639}}
[Bibtex]
@inproceedings{ubicomp2003:bardram,
Address = {Seattle, Washington, USA},
Author = {Jakob E. Bardram and Rasmus E. Kj{\ae}r and Michael Pedersen},
Booktitle = {Proceedings of UbiComp 2003},
Editor = {Anind Dey and Joe McCarthy and Albrecht Schmidt},
Month = oct,
Pages = {107--123},
Pdf = {prox.user.auth.pdf},
Publisher = {Springer Verlag},
Series = {Lecture Notes in Computer Science},
Tag = {jcaf,conference,login},
Title = {{Context-Aware User Authentication - Supporting Proximity-Based Login in Pervasive Computing}},
Url = {http://www.springerlink.com/index/Q1MCV12D4N0B5X4L},
Volume = 2864,
Year = 2003,
Bdsk-Url-1 = {http://www.springerlink.com/index/Q1MCV12D4N0B5X4L}}
[Bibtex]
@inproceedings{sac2004:bardram,
Author = {Jakob E. Bardram},
Booktitle = {Proceedings of the 2004 ACM Symposium on Applied Computing},
Isbn = {1-58113-812-1},
Location = {Nicosia, Cyprus},
Pages = {1574--1579},
Publisher = {ACM Press},
Tag = {jcaf,conference,phc},
Title = {{Applications of Context-Aware Computing in Hospital Work - Examples and Design Principles}},
Url = {http://doi.acm.org/10.1145/967900.968215},
pdf = {p1574-bardram.pdf},
Year = {2004},
Bdsk-Url-1 = {http://doi.acm.org/10.1145/967900.968215}}