Master 2013 2014
psar
Manipulation de modèles comportementaux pour les lignes de produits


Site :Trac-Manipulation de modèles comportementaux pour les lignes de produits
Encadrant : Ziadi Tewfik


Description

Contexte et Objectif

L’ingénierie des lignes de produits logiciels (LdP) est une approche récente du génie logiciel qui est une transposition des chaînes de production au monde du logiciel. Le principe est de minimiser les coûts de construction de logiciels dans un domaine d’application particulier en ne développant plus chaque logiciel séparément, mais plutôt en le concevant à partir d’éléments réutilisables. Le principe de l’approche LdP réside dans la conception d’une architecture permettant de définir plusieurs logiciels à la fois. Les membres d’une ligne de produits sont caractérisés par leurs points communs, mais aussi par leurs déférences (variabilité). La gestion de cette variabilité est l’une des activités clé des lignes de produits. Une autre activité dans l’ingénierie des LdP concerne la construction d’un produit logiciel (on parle aussi de dérivation de produit) qui consiste en partie à figer certains choix vis-à-vis de la variabilité définie dans la ligne de produits pour générer un produit spécifique.

Plusieurs outils et environnements (comme le plugin Eclipse FeatureIDE[http://wwwiti.cs.uni-magdeburg.de/i...]) ont été proposés ces dernières années pour la manipulation des LdPs. L’idée de base de ces travaux consiste à : 1) proposer des mécanismes pour la spécification de la variabilité. 2) automatiser la dérivation de produits en utilisant les transformations de programmes.

Dans ce projet nous nous intéressons aux modèles de lignes de produits logiciels ou la variabilité est spécifiée dans des modèles comportementaux (automates, diagrammes de séquence)

Travail demandé

  • Implémentation en utilisant les technologies autours de Xtext d’un mini DSL (domain specific language) pour spécifier textuellement les modèles comportementaux (MC).
  • Implémentation des outils pour parser et visualiser les MC.
  • Implémentation d’un algorithme de dérivation pour els MC.
  • Intégration dans l’environnement FeatureIDE.