Télécharger le fichier original (Mémoire de fin d’études)
Contexte et état de l’art
Ingénierie des modèles
Les approches de développement basées sur les modèles
Table des matières
Remerciements
Table des matières
1 Introduction
2 Contexte et état de l’art
2.1 Ingénierie des modèles
2.1.1 Les approches de développement basées sur les modèles .
2.1.2 Modèles, méta-modèles et méta-méta-modèle
2.1.3 Méta-modélisation orientée-objets
2.1.4 Expression de contraintes et utilisation d’OCL
2.1.5 Transformation de modèles
2.2 Le test de logiciel
2.2.1 Principes et problématiques du test
2.2.2 Le critère d’arrêt
2.2.3 Le problème de l’oracle
2.2.4 La réduction/minimisation de suite de tests
2.2.5 La localisation d’erreurs
2.2.6 Génération de données de test
2.3 Validation et ingénierie des modèles
2.3.1 Validation des modèles
2.3.2 Validation des transformations de modèles
2.4 Conclusion
3 Noyau pour la méta-modélisation
3.1 Contexte et motivations
3.1.1 Exemple de la pratique actuelle
3.1.2 Analyse et proposition
3.2 Un méta-méta-modèle exécutable
3.2.1 Choix du langage de méta-données
3.2.2 Choix du langage d’actions
3.2.3 Processus de construction de Kermeta
3.3 Le langage Kermeta
3.3.1 Structures issues de EMOF
3.3.2 Héritage et redéfinition
3.3.3 Classes et opérations génériques
3.3.4 Expressions Kermeta
3.3.5 Clôtures lexicales
3.3.6 Contraintes
3.4 Système de types de Kermeta
3.4.1 Les types Kermeta
3.4.2 Relations et règles de sous-typage
3.4.3 Environnement de typage
3.4.4 Typage de la structure
3.4.5 Typage des expressions
3.5 Conclusion
4 Utilisation de Kermeta : études de cas
4.1 Exemple des automates
4.1.1 Définition de contraintes
4.1.2 Définition d’une sémantique opérationnelle et simulation .
4.1.3 Validation de la sémantique
4.1.4 Interopérabilité et sérialisation
4.1.5 Manipulation de modèles et transformations
4.1.6 Conclusion
4.2 Transformation de modèles
4.2.1 Méta-modèles d’entrée et de sortie
4.2.2 Spécification de la transformation
4.2.3 Conception et implantation en Kermeta
4.2.4 Conclusion
4.3 Modélisation orientée-aspect
4.3.1 Contexte et motivations
4.3.2 Composition de diagrammes de classes
4.3.3 Tissage de diagrammes de séquences
4.3.4 Conclusion
4.4 Langages spécifiques à l’ingénierie des exigences
4.4.1 Processus de traitement des exigences
4.4.2 Modèle sémantique et simulation
4.4.3 Analyse sémantique d’exigences textuelles
4.4.4 Conclusion
4.5 Conclusion
5 Test de transformations de modèles
5.1 Validation de transformations de modèles
5.1.1 Définitions
5.1.2 Motivations
5.1.3 Test de transformations de modèles
5.2 Un framework pour la sélection de modèles de test
5.2.1 Exemple et intuition
5.2.2 Valeurs et multiplicité des propriétés
5.2.3 Combinaisons de valeurs : fragments d’objets et de modèles
5.2.4 Sélection des modèles de tests
5.3 Exemple de critères de test
5.3.1 Critères simples
5.3.2 Combinaisons classe par classe
5.3.3 Utilisation de l’héritage
5.3.4 Comparaison des critères et discussion
5.4 Génération de modèles
5.4.1 Problématique et motivations
5.4.2 Algorithme de génération itératif
5.4.3 Algorithme pseudo-aléatoire
5.4.4 Conclusion
5.5 Conclusion et perspectives
6 Conclusion et perspectives
6.1 Contribution
6.2 Perspectives
A Sémantique du langage Kermeta
Sémantique du langage Kermeta
A.1 Structure de données et notations
A.2 Sémantique des expressions
A.2.1 Structures de contrôles
A.2.2 Variables
A.2.3 Affectation et cast
A.2.4 Appel de propriétés et d’opérations
A.2.5 Fonctions
Glossaire
Bibliographie
Table des figures
Publications