Dynamic Software Product Lines for Context-Aware Web Services

As any software, Web Services have to face various execution environments. We then talk of context-aware Web Services. Moreover, Web Services could also be used in mobile environments. For such environments, it is necessary to have several products (e.g. different implementations of the same service), which may be deployed on various terminals. Furthermore, mobility involves the ability to dynamically change the systems functions at runtime in accordance with the environment variations. A Software Product Line (SPL) paradigm may be helpful to deal with the production of such a family of products. In this chapter, we introduce CAPucine, a Context-Aware Dynamic Service-Oriented Product Line for the production and execution of context-aware web services. CAPucine proposes to express Web-Service variability through feature-diagrams and context-awareness models. CAPucine manages context-awareness (1) initially to derivate products using a Model Driven Engineering process, and (2) with an iterative process to dynamically modify the product structure and behavior due to context changes using the SCA platform and the COSMOS context management framework. CAPUcine presents the whole process which includes: context-aware web service specification, context-aware platform code generation, and context-aware adaptation loop. The whole process is demonstrated through a mobile-commerce scenario.

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

[2]  Jacques Klein,et al.  Reconciling Automation and Flexibility in Product Derivation , 2008, 2008 12th International Software Product Line Conference.

[3]  Sooyong Park,et al.  Dynamic Software Product Lines , 2008, Computer.

[4]  Jan Bosch,et al.  A taxonomy of variability realization techniques , 2005, Softw. Pract. Exp..

[5]  Thomas Ledoux,et al.  FPath and FScript: Language support for navigation and reliable reconfiguration of Fractal architectures , 2009, Ann. des Télécommunications.

[6]  David Garlan,et al.  Context is key , 2005, CACM.

[7]  Georg Herzwurm,et al.  Software Product Lines, Service-Oriented Architecture and Frameworks: Worlds Apart or Ideal Partners? , 2006, TEAA.

[8]  Frank Eliassen,et al.  A Pluggable and Reconfigurable Architecture for a Context-Aware Enabling Middleware System , 2008, OTM Conferences.

[9]  Laurence Duchien,et al.  Annotation Framework Validation Using Domain Models , 2008, ECMDA-FA.

[10]  Romain Rouvoy,et al.  Software Architecture Patterns for a Context-Processing Middleware Framework , 2008, IEEE Distributed Systems Online.

[11]  Sven Apel,et al.  Research challenges in the tension between features and services , 2008, SDSOA '08.

[12]  Quan Z. Sheng,et al.  ContextUML: a UML-based modeling language for model-driven development of context-aware Web services , 2005, International Conference on Mobile Business (ICMB'05).

[13]  Valerio Schiavoni,et al.  Reconfigurable SCA Applications with the FraSCAti Platform , 2009, 2009 IEEE International Conference on Services Computing.

[14]  Marco Sinnema,et al.  Experiences in Software Product Families: Problems and Issues During Product Derivation , 2004, SPLC.

[15]  Nicolai M. Josuttis,et al.  Soa In Practice The Art Of Distributed System Design , 2007 .

[16]  Paolo Traverso,et al.  Developing Self-Adaptive Mobile Applications and Services with Separation-of-Concerns , 2009 .

[17]  Jacqueline Floch,et al.  Using product line techniques to build adaptive systems , 2006 .

[18]  Bashar Nuseibeh,et al.  Towards Context-Aware Product-Family Architectures , 2006, 2006 International Workshop on Software Product Management (IWSPM'06 - RE'06 Workshop).

[19]  Pierre-Yves Schobbens,et al.  Feature Diagrams: A Survey and a Formal Semantics , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[20]  Gordon S. Blair,et al.  Dynamically Adaptive Systems are Product Lines too: Using Model-Driven Techniques to Capture Dynamic Variability of Adaptive Systems , 2008, SPLC.

[21]  Brice Morin,et al.  An Aspect-Oriented and Model-Driven Approach for Managing Dynamic Variability , 2008, MoDELS.

[22]  Leire Bastida,et al.  Context-aware service composition: a methodology and a case study , 2008, SDSOA '08.

[23]  Tim Trew,et al.  Using Feature Diagrams with Context Variability to Model Multiple Product Lines for Software Supply Chains , 2008, 2008 12th International Software Product Line Conference.