Composer FeatureIDE for Sequence diagrams

556 vues

Publié le

Une ligne de produit est une famille de logiciels partageant des propriétés
communes mais qui sont différentiés aussi par d'autres caractéristiques.
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 diffé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.
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).
Plusieurs outils et environnements (comme le plugin Eclipse FeatureIDE) ont été
proposés ces dernières années pour la manipulation des LdPs.
Dans ce qui suit, on présent les outils utilisé dans notre projet.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
556
Sur SlideShare
0
Issues des intégrations
0
Intégrations
11
Actions
Partages
0
Téléchargements
9
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Composer FeatureIDE for Sequence diagrams

  1. 1. Encadrant : Mr. ZiadiTewfik Présenté par: Racha Ahmad Oussama El Abed Manipulation de modèles comportementaux pour les lignes de produits
  2. 2. Plan  1ére Partie : Présentation du projet I. Introduction II. Approche LDP III. Objectif du Projet  2ème PARTIE : Etude environnemental du projet I. choix des outils II. Analyse et réalisation III. Les composants du plugin  Conclusion  Démonstration
  3. 3. Introduction  Logiciel efficace  Extensible, Changeable  configurable pour une utilisation dans un contexte particulier  Variabilité logicielle  Plusieurs versions de la même application  une solution industrielle  Transposition du développement industriel au logiciel
  4. 4. Introduction  Logiciel efficace  Extensible, Changeable  configurable pour une utilisation dans un contexte particulier  Variabilité logicielle  Plusieurs versions de la même application  une solution industrielle  Transposition du développement industriel au logiciel
  5. 5. Introduction
  6. 6. Introduction  Logiciel efficace  Extensible, Changeable  configurable pour une utilisation dans un contexte particulier  Variabilité logicielle  Plusieurs versions de la même application  une solution industrielle  Transposition du développement industriel au logiciel
  7. 7. Approche LDP  Ligne de produits Logiciel (LdP)  Ensemble de systèmes partageant un ensemble de propriétés communes et satisfaisant des besoins spécifiques pour un domaine particulier
  8. 8. Approche LDP  Dimension 1 : Modélisation de la variabilité des Ldp.  Dimension 2 : Dérivation automatique des produits.
  9. 9. Objectif du Projet  Appliquer l’approche LDP dans des modèle comportementaux où la variabilité spécifié est des diagrammes des séquences.  Dérivation d’un diagramme de séquence final à partir des diagrammes de séquences des composants.  Définir la combinaison relationnel entre ces composants
  10. 10. Objectif du Projet  Appliquer l’approche LDP dans des modèle comportementaux où la variabilité spécifié est des diagrammes des séquences.  Dérivation d’un diagramme de séquence final à partir des diagrammes de séquences des composants.
  11. 11. Objectif du Projet  Appliquer l’approche LDP dans des modèle comportementaux où la variabilité spécifié est des diagrammes des séquences.  Dérivation d’un diagramme de séquence final à partir des diagrammes de séquences des composants.  Définir la combinaison relationnel entre ces composants
  12. 12. Objectif du Projet  Appliquer l’approche LDP dans des modèle comportementaux où la variabilité spécifié est des diagrammes des séquences.  Dérivation d’un diagramme de séquence final à partir des diagrammes de séquences des composants.  Définir la combinaison relationnel entre ces composants  Exemple : la relation entre F1,F2,F3,F4 F1 après F2 Si condition1 alors F3 sinon F4
  13. 13. Choix des outils  FeatureIDE  Xtext  Sdedit
  14. 14. Choix des outils : FeatureIDE  FeatureIDE  IDE basé sur Eclipse  « feature-oriented »  développement des LDP: analyse de domaine, la mise en œuvre de domaine,  « Feature » est une caractéristique d’un logiciel définie par les experts de domaine importante pour distinguer les différents produits.
  15. 15. Choix des outils : FeatureIDE Editeur de Feature Modèle
  16. 16. Choix des outils : FeatureIDE Le fichier de configuration
  17. 17. Choix des outils : FeatureIDE L’arborescence du projet
  18. 18. Choix des outils : FeatureIDE Menu du choix du composer du FeatureIDE
  19. 19. Choix des outils : FeatureIDE Menu du choix du composer du FeatureIDE
  20. 20. Choix des outils : FeatureIDE Editeur de Feature Modèle Le fichier de configuration L’arborescence du projet choix du composer du FeatureIDE
  21. 21. Choix des outils  FeatureIDE  Xtext  Sdedit
  22. 22. Choix des outils : Xtext  une composante deTMF  intégré dans Eclipse Modeling Framework : EMF
  23. 23. Choix des outils : Xtext  une composante deTMF  intégré dans Eclipse Modeling Framework : EMF
  24. 24. Choix des outils  FeatureIDE  Xtext  Sdedit
  25. 25. Choix des outils : Sdedit  création de diagrammes de séquence UML  Syntaxe simple, très utile
  26. 26. Choix des outils : Sdedit  création de diagrammes de séquence UML  Syntaxe simple, très utile
  27. 27. Analyse et Réalisation  Étendre l'environnement FeatureIDE par un plugin  se spécialise dans la dérivation des diagrammes de séquence  le composer FeatureSeqDiag  Éditer les fichier de combinaison  Le language Sdcombin  Éditer les fichier de l’application Sdedit  Le language Sdedit  Visualiser les diagramme de séquence dérivé  L’application sdedit-4.01
  28. 28. Analyse et Réalisation
  29. 29. Analyse et Réalisation
  30. 30. Analyse et Réalisation
  31. 31. Analyse et Réalisation
  32. 32. Analyse et Réalisation
  33. 33. Analyse et Réalisation
  34. 34. Analyse et Réalisation
  35. 35. Analyse et Réalisation: SysCombin.sdc  Le fichier sdcombin « SysCombin.sdc » contient  La déclaration des features intéragit  la combinaison entre les features pére et/ou feature feuille  Feature pére : qui a des fils ou des autres pére de fils  Feature feuille : les feuille de l’arbre Feature Model(FM)  Après la dérivation, le nouveau fichier sdcombin doit contenir la combinaison entre que les feature fils
  36. 36. Analyse et Réalisation: SysCombin.sdc SysCombin.sdc Implémentation :
  37. 37. Analyse et Réalisation: SysCombin.sdc SysCombin.sdc Implémentation :
  38. 38. Analyse et Réalisation: SysCombin.sdc SysCombin.sdc Implémentation :
  39. 39. Analyse et Réalisation: SysCombin.sdc SysCombin.sdc Implémentation :
  40. 40. Analyse et Réalisation: Dérivation de la combinaison
  41. 41. Analyse et Réalisation: Config_NewSysCombin.sdc Après la dérivation :
  42. 42. Analyse et Réalisation: Config_NewSysCombin.sdc Après la dérivation :
  43. 43. Analyse et Réalisation: les fichiers Sdedit  Le fichier sdedit « feature.sd » contient  le diagramme des séquence spécifié propre au feature  Une partie pour la déclaration des objets  Une autre partie pour définir les événements entre les objets  Il faut le crée pour chaque feature son fichier  Mettre le fichier dans le répertoire qui le même nom de feature dans le projet  si le feature abstract, il n’interagit pas dans les dérivations  Il n’a pas de dossier
  44. 44. Analyse et Réalisation: les fichiers Sdedit  Le fichier sdedit « feature.sd » contient  le diagramme des séquence spécifié propre au feature  Une partie pour la déclaration des objets  Une autre partie pour définir les événements entre les objets  Il faut le crée pour chaque feature son fichier  Mettre le fichier dans le répertoire qui le même nom de feature dans le projet  si le feature abstract, il n’interagit pas dans les dérivations  Il n’a pas de dossier
  45. 45. Analyse et Réalisation: Les fichiers Sdedit  Le fichier sdedit « feature.sd » contient  le diagramme des séquence spécifié propre au feature  Une partie pour la déclaration des objets  Une autre partie pour définir les événements entre les objets  Il faut le crée pour chaque feature son fichier  Mettre le fichier dans le répertoire qui le même nom de feature dans le projet  si le feature abstract, il n’interagit pas dans les dérivations  Il n’a pas de dossier
  46. 46. Analyse et Réalisation: Feature.sd
  47. 47. Analyse et Réalisation: Feature.sd
  48. 48. Analyse et Réalisation: Dérivation de la DS
  49. 49. Analyse et Réalisation: config_FinalSD.sd  La partie déclaration des objets  rassemble toutes les objets déclarés dans toutes les fichier feature.sd  éviter la redondance des objets  La partie définition des messages entre les objets  suivre la squelette fichier SysCombin.sdc  pour chaque feature interagit dans le fichier SysCombin.sdc on copie la 2éme partie du son fichier sdedit
  50. 50. Analyse et Réalisation: config_FinalSD.sd
  51. 51. Analyse et Réalisation: config_FinalSD.sd
  52. 52. Analyse et Réalisation: config_FinalSD.sd
  53. 53. Analyse et Réalisation: config_FinalSD.sd
  54. 54. Analyse et Réalisation: config_FinalSD.sd
  55. 55. Analyse et Réalisation: config_FinalSD.sd
  56. 56. Analyse et Réalisation: config_FinalSD.sd
  57. 57. Analyse et Réalisation: config_FinalSD.sd
  58. 58. Les composants du plugin  Le plugin qui se spécialise dans la dérivation des diagrammes de séquence  FeatureSeqDiag  Éditeur des fichier de combinaison  featureSeqDiag.sdcombin.sdc_language  featureSeqDiag.sdcombin.sdc_language.ui  Éditeur des fichier de l’application Sdedit  featureSeqDiag.sdedit.sd_language  featureSeqDiag.sdedit.sd_language.ui  Visualiser les diagramme de séquence dérivé  L’application sdedit-4.01
  59. 59. Les composants du plugin
  60. 60. Les composants du plugin
  61. 61. Conclusion  la modélisation et la gestion de la variabilité dans les systèmes à logiciel prépondérant , par exemple les lignes de produits logiciels est une tâche critique  traiter les modèles de lignes de produits logiciels où la variabilité est spécifiée dans des modèles comportementaux (diagrammes de séquence).  implémenter deux mini DSL (Domain Specific Language)  proposer un algorithme de dérivation pour les MC qu'on a intégré dans l'environnement FeatureIDE.
  62. 62. Conclusion  la modélisation et la gestion de la variabilité dans les systèmes à logiciel prépondérant , par exemple les lignes de produits logiciels est une tâche critique  traiter les modèles de lignes de produits logiciels où la variabilité est spécifiée dans des modèles comportementaux (diagrammes de séquence).  implémenter deux mini DSL (Domain Specific Language)  proposer un algorithme de dérivation pour les MC qu'on a intégré dans l'environnement FeatureIDE.
  63. 63. Conclusion  la modélisation et la gestion de la variabilité dans les systèmes à logiciel prépondérant , par exemple les lignes de produits logiciels est une tâche critique  traiter les modèles de lignes de produits logiciels où la variabilité est spécifiée dans des modèles comportementaux (diagrammes de séquence).  implémenter deux mini DSL (Domain Specific Language)  proposer un algorithme de dérivation pour les MC qu'on a intégré dans l'environnement FeatureIDE.
  64. 64. Conclusion  la modélisation et la gestion de la variabilité dans les systèmes à logiciel prépondérant , par exemple les lignes de produits logiciels est une tâche critique  traiter les modèles de lignes de produits logiciels où la variabilité est spécifiée dans des modèles comportementaux (diagrammes de séquence).  implémenter deux mini DSL (Domain Specific Language)  proposer un algorithme de dérivation pour les MC qu'on a intégré dans l'environnement FeatureIDE.
  65. 65. Démonstration

×