SmartAdapters

Contributors

The SmartAdapters approach is the result of a collaboration between three research teams :

  • LIFL (team COCOA) Univ. of Lille - France
  • IRISA (team TRISKELL) Univ. of Rennes - France
  • I3S (team MODALIS) Univ. of Nice Sophia Antipolis - France

Overview

The Aspect-Oriented Software Development (AOSD) paradigm off ers to tame the complexity of large software systems by providing advanced mechanisms for separating and composing concerns, formerly at the code level. It is now gaining attention in the earlier steps of the software life-cycle, inspired by the Model-Driven Engineering paradigm. This leads to the creation of numerous Aspect-Oriented Modeling approaches that aim to compose aspect models into various base models. These approaches generally suff er from a lack of flexibility, limiting the reuse of aspect models to very related contexts. A reusable aspect model should ideally off ers :

  • mechanisms to deal with the presence or absence of some model elements into the base model, and
  • propose various ways to integrate the aspect into the base model.

A base model may not provide all the elements required by the aspect but it still may be augmented with the aspect. We argue that the aspect should be able to adapt to di fferent contexts, by reusing existing elements or introducing some missing elements, provided that a set of mandatory elements is present in the base model. Inspired by the Software Product Line paradigm, the SmartAdapters approach integrates variability mechanisms in the diff erent parts that constitute an aspect so that, it allows designing aspect models as a family of composition protocols. As a result, designers are able to address a wider range of situations where an aspect model could be composed.

Examples

We propose to take the Health-Watcher AOSD Testbed as a case-study. We propose to weave on the corresponding model two aspects (one on authentication and another one on task allocation). The figures and the implementation proposed hereafter represents the current state of our work (paper submitted to the Sosym Journal).

The specification of the future composition of one aspect (e.g. Authentication aspect or Task Allocation aspect) is made thanks to i) an Adaptation model and ii) a Variability Model. The first one identifies the adaptations to perform and the second one describes (through a feature model) the possible combinations of adaptations. The conjunction of these two models allows to describe a composition protocol which aims to minimize the work to be done when the aspect will be composed with a given base model (e.g. the Health-Watcher).

Description of the two composition protocols (Variability and Adaption models) of :

Implementation

In order to give an overview of the current state of the implementation we propose two videos. They are dedicated to the weaving of the Authentication Aspect (resp. the Task Allocation Aspect) :

The implementation is made under eclipse using Kermeta software. The current state is not well packaged so that we provide to anyone who wants to have a first look to our approach to download here an archive containing a full Eclipse distribution and the corresponding workspace. If you have any question about it you may send an Email to — Philippe Lahire

References

  • Composing Aspect Models with Variability Mechanisms : the SmartAdapters Approach. Philippe Lahire, Gilles Vanwormhoudt, Brice Morin, Alban Gaignard, Olivier Barais, Jean-Marc Jézéquel, pages 36, submitted to Sosym Journal
  • Weaving Variability into Domain Metamodels. Brice Morin, Gilles Perrouin, Philippe Lahire, Olivier Barais, Gilles Vanwormhoudt, Jean-Marc Jézéquel, in Proceedings of MODELS'2009, Denver, Colorado, USA, 4-9 october 2009, vol. LNCS 5795, pages 690–705, springer-verlag.
  • Managing Variability Complexity in Aspect Oriented Modelling. Brice Morin, Gilles Vanwormhoudt, Philippe Lahire, Alban Gaignard, Olivier Barais, Jean-Marc Jézéquel, in Proceedings of Models 2008, Toulouse, France, 28 sept.-3 oct. 2008, vol. LNCS 5301, pages 782–796, springer-verlag.
  • Introducing Variability into Aspect-Oriented Modeling Approaches. Philippe Lahire, Brice Morin, Gilles Vanwormhoudt, Alban Gaignard, Olivier Barais, Jean-Marc Jézéquel, in Proceedings of Models 2007, Vanderbilt University, Nashville TN USA, 28 sep. - 2 oct. 2007, vol. LNCS 4735, pages 498–513, springer-verlag.