A web platform and a methodology to promote a collaborative development of context-aware systems

The development of services that use context data to personalize their behaviour is complex. Data coming from distributed and heterogeneous sources have to be acquired, processed and managed. One of the main tasks in the development process is the definition of user situations, which are best defined by people with expertise in the application domain that usually do not have technical skills. The existing context-aware development toolkits are for programmers, so nontechnical domain experts cannot participate in the development process. In order to solve this gap, this article presents a web-based platform to ease the development of context-aware services. The web front-end provides several dialogs in order to manage context data, involving the creation of the context model, the access to the defined context data sources and the definition of situations based on rules. A situation-driven methodology is also proposed in order to guide the development process based in the collaboration among programmers and domain experts. The paper describes the main functionalities of the platform, the development methodology and presents the results of the user evaluation tests that have been carried out.

[1]  Stephen S. Yau,et al.  Mobile Middleware for Situation-Aware Service Discovery and Coordination , 2006, The Handbook of Mobile Middleware.

[2]  Eleftheria Katsiri,et al.  An ECA Rule-Matching Service for Simpler Development of Reactive Applications , 2001 .

[3]  Siobhán Clarke,et al.  CASS - Middleware for Mobile Context-Aware Applications , 1990 .

[4]  Jani Mäntyjärvi,et al.  Managing Context Information in Mobile Devices , 2003, IEEE Pervasive Comput..

[5]  Erik Wilde,et al.  From the Internet of Things to the Web of Things: Resource-oriented Architecture and Best Practices , 2011, Architecting the Internet of Things.

[6]  Matthias Baldauf,et al.  A survey on context-aware systems , 2007, Int. J. Ad Hoc Ubiquitous Comput..

[7]  Jin Song Dong,et al.  Semantic Space: an infrastructure for smart spaces , 2004, IEEE Pervasive Computing.

[8]  Jadwiga Indulska,et al.  Developing context-aware pervasive computing applications: Models and approach , 2006, Pervasive Mob. Comput..

[9]  E. James Whitehead,et al.  Collaboration in Software Engineering: A Roadmap , 2007, Future of Software Engineering (FOSE '07).

[10]  Jakob E. Bardram The Java Context Awareness Framework (JCAF) - A Service Infrastructure and Programming Framework for Context-Aware Applications , 2005, Pervasive.

[11]  Simon A. Dobson,et al.  Situation identification techniques in pervasive computing: A review , 2012, Pervasive Mob. Comput..

[12]  Daqing Zhang,et al.  Toward a cooperative programming framework for context-aware applications , 2011, Personal and Ubiquitous Computing.

[13]  Fred D. Davis Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology , 1989, MIS Q..

[14]  Harry Chen,et al.  Intelligent Agents Meet the Semantic Web in Smart Spaces , 2004, IEEE Internet Comput..

[15]  Guanling Chen,et al.  A Survey of Context-Aware Mobile Computing Research , 2000 .

[16]  Karen Henricksen,et al.  A framework for context-aware pervasive computing applications , 2003 .

[17]  Oscar Nierstrasz,et al.  Context-oriented Programming , 2008, J. Object Technol..

[18]  Gregory D. Abowd,et al.  A Conceptual Framework and a Toolkit for Supporting the Rapid Prototyping of Context-Aware Applications , 2001, Hum. Comput. Interact..

[19]  Tao Gu,et al.  A service-oriented middleware for building context-aware services , 2005, J. Netw. Comput. Appl..

[20]  Damien Cassou,et al.  A tool suite to prototype pervasive computing applications , 2010, 2010 8th IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops).

[21]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[22]  HENRY LIEBERMAN,et al.  End-User Development: An Emerging Paradigm , 2006, End User Development.