Date : 2010
Editeur / Publisher : [S.l.] : [s.n.] , 2010
Type : Livre / Book
Type : Thèse / ThesisLangue / Language : anglais / English
Ingénierie dirigée par les modèles
Systèmes adaptatifs (technologie)
Résumé / Abstract : This thesis presents a Model-Driven and Aspect-Oriented approach to tame the complexity of Dynamically Adaptive Systems (DAS). At design-time, we capture the different facets of a DAS (variability, environment/context, reasoning and architecture) using dedicated metamodels. Each feature of the variability model describing a DAS is refined into an aspect model. We leverage these design models at runtime to drive the dynamic adaptation process. Both the running system and its execution context are abstracted as models. Depending on the current context (model) a reasoner interprets the reasoning model to determine a well fitted selection of features. We then use Aspect-Oriented Modeling techniques to compose the aspect models (associated to the selected features) to derive the corresponding architecture. This way, there is no need to specify the whole set of possible configurations at design-time: each configuration is automatically built when needed. We finally rely on model comparison to fully automate the reconfiguration process in order to adapt the running system, with no need to write low-level reconfiguration scripts.
Résumé / Abstract : Cette thèse présente une approche dirigée par les modèles et basée sur la modélisation par aspects pour maitriser la complexité de systèmes logiciels adaptatifs (SA). Lors de la conception, les différentes facettes d’un SA (variabilité, environnement/contexte, raisonnement et architecture) sont capturées à l’aide de différents méta-modèles dédiés. En particuliers, les variantes de chaque point de variation sont raffinées à l’aide d’aspect (niveau model). Ces modèles sont embarqués à l’exécution pour contrôler et automatiser le mécanisme de reconfiguration. Selon le contexte courant un composant de raisonnement détermine un ensemble de variantes bien adaptées au contexte. Nous utilisons ensuite un tisseur d’aspects pour dériver automatiquement l’architecture correspondante à cette sélection de variantes. Ainsi, les concepteurs du SA n’ont pas besoin de spécifier toutes les configurations : au contraire, chaque configuration est dérivée lorsqu’il y en a besoin. Nous utilisons finalement une comparaison de modèle pour automatiser entièrement le processus de reconfiguration, sans devoir écrire des scripts de reconfiguration de bas niveau.