CAMPUS: A middleware for automated context-aware adaptation decision making at run time

At present, in most context-aware systems, decisions on when and how to adapt an application are made a priori by developers during the compile time. While such approaches empower developers with sufficient flexibility to specify what they want in terms of adaptation rules, they inevitably place an immense load on developers, especially in an extremely dynamic environment, to anticipate and formulate all potential run-time situations during development time. These challenges motivated us to explore an approach to automating context-aware adaptation decisions by a middleware layer at run time. The resulting middleware, CAMPUS, exploits technologies from semantic computing to dynamically derive adaptation decisions according to run-time contextual information. The CAMPUS implementation has been evaluated with a number of case applications to validate the operation of the system in a realistic environment and to provide us with an opportunity to obtain experimental results for further analysis. The results are significant in that they show that CAMPUS can effectively free developers from the need to predict, formulate, and maintain adaptation rules, thereby greatly reducing the efforts required to develop context-aware applications.

[1]  David Garlan,et al.  Exploiting style in architectural design environments , 1994, SIGSOFT '94.

[2]  Gregory D. Abowd,et al.  Towards a Better Understanding of Context and Context-Awareness , 1999, HUC.

[3]  Sandeep S. Kulkarni,et al.  Building component families to support adaptation , 2005, ACM SIGSOFT Softw. Eng. Notes.

[4]  Edwin J. Y. Wei,et al.  Towards Context-Awareness in Ubiquitous Computing , 2007, EUC.

[5]  Peyman Oreizy,et al.  Runtime software adaptation: framework, approaches, and styles , 2008, ICSE Companion '08.

[6]  Alvin T. S. Chan,et al.  MobiPADS: A Reflective Middleware for Context-Aware Mobile Computing , 2003, IEEE Trans. Software Eng..

[7]  Frank Eliassen,et al.  Using architecture models for runtime adaptability , 2006, IEEE Software.

[8]  Alvin T. S. Chan,et al.  MobiGATE: a mobile computing middleware for the active deployment of transport services , 2006, IEEE Transactions on Software Engineering.

[9]  Claudia Linnhoff-Popien,et al.  CoOL: A Context Ontology Language to Enable Contextual Interoperability , 2003, DAIS.

[10]  Pierre Verbaeten,et al.  CCDL: the composable components description language , 2006, International Journal on Software Tools for Technology Transfer.

[11]  Anneke Kleppe,et al.  The object constraint language: precise modeling with UML , 1998 .

[12]  Bedir Tekinerdogan,et al.  Adaptability in Object-Oriented Software Development: Workshop Report , 1996 .

[13]  Sandeep K. S. Gupta,et al.  Reconfigurable Context-Sensitive Middleware for Pervasive Computing , 2002, IEEE Pervasive Comput..

[14]  Maria da Graça Campos Pimentel,et al.  Toward a Domain-Independent Semantic Model for Context-Aware Computing , 2005, LA-WEB.

[15]  Gordon S. Blair,et al.  Developing Adaptive Applications: The MOST Experience , 1999, Integr. Comput. Aided Eng..

[16]  Thomas R. Gruber,et al.  A Translation Approach to Portable Ontologies , 1993 .

[17]  Robert Grimm,et al.  System support for pervasive applications , 2004, TOCS.

[18]  Richard N. Taylor,et al.  A language and environment for architecture-based software development and evolution , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[19]  Seyed Masoud Sadjadi,et al.  Composing adaptive software , 2004, Computer.

[20]  Tao Gu,et al.  Ontology based context modeling and reasoning using OWL , 2004, IEEE Annual Conference on Pervasive Computing and Communications Workshops, 2004. Proceedings of the Second.

[21]  Frank Eliassen,et al.  A Utility-Based Adaptivity Model for Mobile Applications , 2007, 21st International Conference on Advanced Information Networking and Applications Workshops (AINAW'07).

[22]  Frank Eliassen,et al.  MUSIC: an autonomous platform supporting self-adaptive mobile applications , 2008, MobMid '08.

[23]  Cecilia Mascolo,et al.  CARISMA: Context-Aware Reflective mIddleware System for Mobile Applications , 2003, IEEE Trans. Software Eng..

[24]  Rajarshi Das,et al.  Utility functions in autonomic systems , 2004 .

[25]  Thomas R. Gruber,et al.  A translation approach to portable ontology specifications , 1993, Knowl. Acquis..

[26]  Harry Chen,et al.  SOUPA: standard ontology for ubiquitous and pervasive applications , 2004, The First Annual International Conference on Mobile and Ubiquitous Systems: Networking and Services, 2004. MOBIQUITOUS 2004..

[27]  Stephen S. Yau,et al.  Development and runtime support for situation-aware application software in ubiquitous computing environments , 2004, Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004..

[28]  Earnest J. Friedman-hill Jess in Action: Java Rule-Based Systems , 2003 .

[29]  Mahadev Satyanarayanan,et al.  Agile application-aware adaptation for mobility , 1997, SOSP.

[30]  Barton P. Miller,et al.  Reliable network connections , 2002, MobiCom '02.

[31]  Bill N. Schilit,et al.  Context-aware computing applications , 1994, Workshop on Mobile Computing Systems and Applications.