Contribution à la spécification et à la vérification des logiciels à base de composants : enrichissement du langage de données de Kmelia et vérification de contrats
Auteur / Autrice : | Mohamed El-Habib Messabihi |
Direction : | Christian Attiogbé, Pascal André |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance en 2011 |
Etablissement(s) : | Nantes |
Partenaire(s) de recherche : | Autre partenaire : Université de Nantes. Faculté des sciences et des techniques |
Mots clés
Mots clés libres
Résumé
L'utilisation croissante des composants et des services logiciels dans les différents secteurs d'activité (télécommunications, transports, énergie, finance, santé, etc …) exige des moyens (modèles, méthodes, outils, etc. . . ) rigoureux afin de maîtriser leur production et d'évaluer leur qualité. En particulier, il est crucial de pouvoir garantir leur bon fonctionnement en amont de leur déploiement lors du développement modulaire de systèmes logiciels. Kmelia est un modèle à composants multi-services développé dans le but de construire des composants logiciels et des assemblages prouvés corrects. Trois objectifs principaux sont visés dans cette thèse. Le premier consiste à enrichir le pouvoir d'expression du modèle Kemlia avec un langage de données afin de satisfaire le double besoin de spécification et de vérification. Le deuxième vise l'élaboration d'un cadre de développement fondé sur la notion de contrats multi-niveaux. L'intérêt de tels contrats est de maîtriser la construction progressive des systèmes à base de composants et d'automatiser le processus de leur vérification. Nous nous focalisons dans cette thèse sur la vérification des contrats fonctionnels en utilisant la méthode B. Le troisième objectif est l'instrumentation de notre approche dans la plate-forme COSTO/Kmelia. Nous avons implanté un prototype permettant de connecter COSTO aux différents outils associés à la méthode B. Ce prototype permet de construire les machines B à partir de spécifications Kmelia en fonction des propriétés à vérifier. Nous montrons que la preuve des spécifications B générées garantit la cohérence des spécifications Kmelia de départ. Les illustrations basées sur l'exemple CoCoMe confortent nos propositions.