Titre : | Une approche de spécification des changements des besoins basée transformation de graphes |
Auteurs : | Khaled Khalfaoui, Auteur ; Foudil Cherif, Directeur de thèse |
Type de document : | Thése doctorat |
Editeur : | Biskra [Algérie] : Faculté des Sciences Exactes et des Sciences de la Nature et de la Vie, Université Mohamed Khider, 2014 |
ISBN/ISSN/EAN : | TINF/67 |
Format : | 1 vol. (113 p.) / ill. / 29 cm |
Langues: | Français |
Résumé : |
L’ingénierie des lignes de produits logiciels est une discipline récente en génie logiciel. C’est une adaptation du principe des chaînes de production au développement d’applications informatiques. Elle vise principalement à rationaliser le processus de développement des systèmes fortement similaires par une réutilisation logicielle stratégique et planifiée au préalable. L’apport majeur de ce paradigme est l’introduction d’une architecture de référence permettant la gestion de la variabilité. Elle fournit un cadre de développement des composants réutilisables et garantit leur incorporation appropriée. Pour chaque produit,elle est utilisée comme guide d’assemblage et de personnalisation des artéfacts nécessaires selon ses besoins spécifiques. Cette discipline a connu un grand succès en terme de productivité, mais des efforts conséquents liés à la gestion de la variabilité doivent être envisagés.Dans le cadre de cette thèse, nous nous intéressons particulièrement à l’analyse automatique des modèles FD et FTS. Le diagramme FD est un formalisme largement utilisé pour la spécification structurelle des produits. Il s’agit d’un arbre spécifiant les caractéristiques et leurs dépendances. Le formalisme FTS est utilisé pour la spécification comportementale. C’est un système de transitions paramétré dans lequel ces transitions sont étiquetées avec les caractéristiques d’un diagramme FD en plus d'être marquées avec des actions. Il est instancié différemment pour chaque produit selon les caractéristiques requises.Nous présentons trois contributions. Les deux premières permettent la génération de tous les produits structurellement valides à partir du diagramme FD. L’une est basée sur l’intégration du Backtracking dans le processus de recherche, alors que l’autre procède par une construction progressive de configurations partielles. La troisième contribution permet une analyse comportementale des produits modélisés par un FTS. La vérification des propriétés est réalisée en se basant sur la logique de réécriture et plus précisément le langage Maude.Les techniques proposées sont mises en oeuvre en s’appuyant sur l’approche transformation de graphes et les grammaires développées sont implémentées en utilisant l’environnement AToM3. |
Sommaire : |
Introduction Générale………………………….…………………………………………….……………………1 Chapitre 01 : Lignes de Produits Logiciels 1.1. Introduction………………………….………………………………….…………….....…………………...4 1.2. Réutilisation logicielle …….…………………………..………………………....……..………………...4 1.2.1. Réutilisation ad-hoc …………………….……………………………….....…..………………..4 1.2.2. Approche orientée objet …………………….……………………………...….…………….....4 1.2.3. Approches orientées composants…………………….……………………..…………………5 1.2.4. Approches orientées services …………………….………………………..……………….….5 1.2.5. Réutilisation de modèles …………………….……………………………...….……………....5 1.2.6. Approche lignes de produits …………………….……………………………..……………....6 1.3. Concepts fondamentaux………….…………………………………….…...………………………...…6 1.4. Ingénierie des lignes de produits logiciels………………….………………………..…………….8 1.4.1. Ingénierie du domaine……….………………………… .………………………………………9 1.4.2. Ingénierie d’applications…….……………………………..…………..…………………..….10 1.5. Modélisation de la variabilité…….…………..…………………..…….…………..……………...…11 1.5.1. Feature-Oriented Domain Analysis (FODA)…..………….……………………………...11 1.5.2. Techniques basées sur les diagrammes UML………………..……………..……………..12 1.5.3. Techniques basées sur des spécification algébriques…..……..……………..………..…13 1.5.4. Techniques à base des systèmes de transitions …….…..……..……………..…………...13 1.6. Techniques d’analyse et de vérification ………………………………….…………………...…15 1.6.1. Analyse structurelle…….……..……….……………………………….………………………15 1.5.5. Vérification comportementale………………………………...…………..……………….…16 1.7. Discussion autour de l’approche lignes de produits………………….…………………..…18 1.8. Conclusion…………………………….…………………………………………………………….………20 Chapitre 02 : Transformation de Modèles 2.1. Introduction………………………….………………………………….……………............................….21 2.2. Ingénierie dirigée par les modèles …………………..………………………....……………….….21 2.2.1. Langages de modélisation ..……..……….……………………………….....…………….….21 2.2.2. Transformation de modèles ……..………….……………………………...……………..….23 2.2.3. Approches de transformation ..…………………….……………………..………………….24 2.2.4. Model-Driven Architecture (MDA) …………….………………………..……………...…25 2.3. Transformation de graphes…….…………………….………………………...…………………..…27 2.3.1. Systèmes de réécriture de graphes……….………………………………....................…….27 2.3.2. Domaines d’application …….…..………….……………………………...…..……………...28 2.3.3. Outils d’implémentation …….…………………….……………………..………………..….29 2.4. AToM3 ………………………………………………………………………………………….….31 2.4.1. La méta-modélisation……….…………………….……………………………………………31 2.4.2. Les grammaires de graphes.……………………………..……………..………………..……33 2.4.3. Exemple illustratif ……….……………………………..……………..……………………..…36 2.5. Conclusion…………………………….…………………………………………………………………..…37 Chapitre 03 : Génération Automatique des Produits Structurellement Valides: Approche Basée sur la Recherche des Configurations Correctes 3.1. Introduction…………………….…………………………………………………………………………..38 3.2. Diagramme de caractéristiques……………………………………………………………………..38 3.3. Principe de la recherche des configurations valides……………….…………………….....40 3.4. Automatisation de l’algorithme de recherche ………….……………………………………..41 3.4.1. Méta-modélisation……………………………………………………………………………...42 3.4.1.1. FD Méta-Modèle……………………………………………………………..….42 3.4.1.2. D-Tree Méta-Modèle……………………………………………………...……42 3.4.2. Grammaires de graphes………………………………………………………………………..42 3.4.2.1. Génération du modèle D-Tree: 1ère GG ..……………………..……………….42 3.4.2.2. Génération des produits valides : 2ème GG ..………………………..……...44 3.5. Version optimisée …………………………………………………………...………………………...….52 3.5.1. Le backTracking …………………………………………………………………………….….52 3.5.2. Adaptation de l’algorithme de recherche……………………………………………….….53 3.5.3. Grammaire de graphe basée sur le BackTracking: 3ème GG ..…..……………………..55 3.6. Exemple d’application ………………………………………………………………………………....62 3.7. Conclusion……………………………………………..………………..…………………………………..64 Chapitre 04 : Génération Automatique des Produits Structurellement Valides: Approche Basée sur la composition de configurations partielles 4.1. Introduction…………………….…………………………………………………………………………..65 4.2. Principe de calcul des produits valides……………….………………..........................................65 4.3. Composition des configurations partielles ………….………….……………………………....66 4.3.1. Traitement des relations de type ‘’XOR’’………………………….……………………...67 4.3.2. Traitement des relations de type ‘’OR’’………………………......………….….................67 4.3.3. Traitement des relations de type ‘’Mandatory’’………………………………………….69 4.3.4. Traitement des relations de type ‘’Optional’’…………………………………………….70 4.4. Grammaires de graphe proposée: 4ème GG……………………………….…………………….70 4.4.1. Construction des produits vérifiant les relations parentales .……………….…..……...71 4.4.2. Suppression des produits qui violent les contraintes d’implication et d’exclusion………………………….74 4.4.3. Génération du fichier texte …………………………….……………….………..…………..75 4.5. Exemple illustratif …………………………………………………………..…………………………...75 4.6. Conclusion……………………………………………..…………………………………………………….81 Chapitre 05 : Analyse et vérification des produits, Approche Basée sur la logique de réécriture 5.1. Introduction…………………….…………………………………………………………………………..82 5.2. Featured Transition System ……………….……………………………...........................................82 5.3. Langage Maude ………….……………………………………………………………………………….84 5.3.1. Les modules fonctionnels………………………………….………………………………….85 5.3.2. Le module système………………………...………………...…….…………….......................85 5.3.3. Simulation et vérification des propriétés……………………………….……….................85 5.4. Spécification des modèles FTS en langage Maude ………………………………………….86 5.5. Génération automatique des modules fonctionnels et système ………………………...88 5.5.1. Méta-Modélisation ……………………………………………………………………………..88 5.5.1.1. FD Méta-Modèle……………………………………………….………………..88 5.5.1.2. TS Méta-Modèle………………………………………………………..……….88 5.5.2. Grammaires de graphes proposées ………………………………………………………….88 5.5.2.1. Génération du module fonctionnel Feature-FunctMod et du modèle FD-Décoré: 5ème GG ………………………….90 5.5.2.2. Génération du module fonctionnel FTSFunctMod et du modèle FTSDécoré:6ème GG ……..…………………………….92 5.5.2.3. Génération du module système SystemMod: 7ème GG :..…………..…...94 5.6. Exemple illustratif ………………………………………………………………..…….........................97 5.6.1. Création des modèles sources ………………………………………………………………97 5.6.2. Génération de la spécification Maude …………………………………………………….98 5.6.3. Simulation ………………………………………………………….…………........................101 5.6.4. Vérification des propriétés ………………………….…………………………...................101 5.7. Conclusion………………………………..…………..…………………………………............................104 Conclusion Générale………………………….…………………………….………………...…………………105 Bibliographie………………………………………………………………………………..….…………………...107 |
En ligne : | http://thesis.univ-biskra.dz/id/eprint/141 |
Disponibilité (1)
Cote | Support | Localisation | Statut |
---|---|---|---|
TINF/67 | Théses de doctorat | bibliothèque sciences exactes | Consultable |