Thèse soutenue

Spécification formelle à objets en UML/OCL et B : une approche transformationnelle

FR  |  
EN
Auteur / Autrice : Rafael-José Marcano Kamenoff
Direction : Nicole Levy
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 2002
Etablissement(s) : Versailles-St Quentin en Yvelines

Résumé

FR  |  
EN

Le développement à objets est aujourd'hui amplement utilisé en conception de systèmes. Il est basé principalement sur l'utilisation de notations semi-formelles. En particulier la notation UML fournit un cadre normalisé pour la modélisation objet à l'aide de divers diagrammes (de classes, d'états-transitions, etc. ) et du langage de contraintes OCL. Les notations à objets présentent des avantages confirmés : richesse sémantique, réutilisation de composants, vue graphique et synthétique, pouvoir d'abstraction. Cependant, ces notations manquent de formalisation des différents concepts, ainsi que de bases solides pour la vérification et la validation des applications. Pour pallier à ce problème nous proposons d'utiliser les méthodes formelles, en particulier la méthode B. L'objectif de cette thèse est d'étudier et de mettre en œuvre des techniques qui facilitent l'utilisation conjointe de la notation à objets UML/OCL et de la méthode formelle B, afin de définir une sémantique précise, solide et rigoureuse pour les modèles objet, ainsi que de fournir des outils de preuve des spécifications. Dans une première étape, nous définissons des schémas de dérivation des diagrammes de classes et d'états-transitions UML en une spécification B. Ensuite nous proposons des règles de transformation d'expressions OCL en expressions formelles B : nous définissons un morphisme de transformation entre les méta-modèles des deux langages. Un outil prototype permettant l'application automatisée de nos règles est implémenté. L'utilisation d'UML est une démarche qui facilite la construction d'une spécification B. La vue UML/OCL décrit le futur système et son invariant (les données et leurs propriétés) de manière synthétique et intuitive permettant une bonne compréhension et documentation du modèle construit. La spécification formelle B permet l'analyse et la preuve d'un modèle UML/OCL à l'aide d'outils automatisés. Par le biais des preuves, elle garantit la consistance de la spécification et facilite la détection et correction des erreurs. Cependant, concevoir un modèle objet réutilisable demeure un problème difficile : à chaque étape du processus de développement, il faut déterminer les classes appropriées, les décomposer, établir les relations entre elles, spécifier correctement leurs états et leurs méthodes. Afin de faciliter cette tâche, nous proposons d'utiliser les patterns pour spécifier des systèmes en UML et en B. Pour valider cette approche, nous construisons la spécification formelle à objets d'un système de contrôle d'accès par application des schémas de dérivation et par utilisation de patterns.