Fondation Supélec Sujet de Th`ese

Transcription

Fondation Supélec Sujet de Th`ese
Fondation Supélec
Sujet de Thèse
Titre de la thèse :
Environnement de Preuve pour Propriétés Dynamiques
Encadrement :
— Pr. Burkhart Wolff (équipe VALS, LRI)
— Dr. Safouan Taha (dép INFO, E3S)
— Dr. Idir Aı̈t-Sadoune (dép INFO, E3S)
[directeur de thèse]
[encadrant]
[encadrant]
Sujet de thèse :
Le développement de systèmes complexes nécessite la spécification détaillée
de leur structure et de leur dynamique. Un modèle objet décrit la structure
d’un système ainsi que les services que peuvent rendre les différents objets qui le
composent. OCL (Object Constraint Language) [1] est un standard informatique
pour la spécification des propriétés statiques de modèles objet.
Au département Info de Supélec, nous avons développé TemporalOCL [2, 3]
une extension d’OCL à base de patrons temporels pour spécifier les propriétés
dynamiques du système. Nous avons équipé TemporalOCL d’une sémantique
compositionnelle [4] et d’un environnement de test qui vérifie la conformité du
système considéré aux propriétés de sécurité [5, 6].
Parallèlement, des travaux au sein de l’équipe VALS du LRI ont doté OCL
avec :
1. une formalisation en HOL (Higher Order Logic) [7], donnant ainsi à OCL
une sémantique formelle dépourvue de toute ambiguı̈té.
2. un outil de preuve (en Isabelle) pour la vérification de la consistance des
contraintes OCL [8].
3. un environnement de test (HOL-TestGen) pour la génération automatique de cas de tests guidée par la preuve [9].
Dans le cadre d’une collaboration LRI/Supélec, le sujet de thèse portera dans
un premier temps sur la formalisation de TemporalOCL en étendant les trois
contributions du LRI à OCL. Il sera dès lors légitime de chercher à vérifier les
propriétés dynamiques du modèle en combinant les techniques de preuve et de
test. Les techniques classiques de model-checking permettent de vérifier automatiquement les propriétés temporelles, mais au prix de l’exploration de l’espace
d’états du modèle global, ce qui mène à une explosion combinatoire pour des
1
modèles de grande taille. Les travaux de cette thèse auront pour objectif de proposer une activité de vérification par la preuve lorsque le model-checking n’est
pas applicable. Concrètement, il est question de définir une axiomatique et des
obligations de preuve qui permettront à des assistants de preuve de vérifier des
propriétés temporelles. Des implémentations devront être réalisées en Isabelle
et/ou Atelier B [10].
Références
[1] Object Management Group, Inc., editor. OCL 2.2 (Final Adopted specification). http ://www.omg.org/spec/OCL/2.2/PDF, february 2010.
[2] Bilal Kanso and Safouan Taha. Specification of temporal properties with
{OCL}. Science of Computer Programming, 2014.
[3] TemporalOCL. http ://wwwdi.supelec.fr/software/TemporalOCL/, 2012.
[4] Kalou Cabrera Castillos, Frédéric Dadeau, Jacques Julliand, Bilal Kanso,
and Safouan Taha. A compositional automata-based semantics for property
patterns. In E.B. Johnsen and L. Petre, editors, iFM 2013, 10th International Conference on integrated Formal Methods, volume 7940 of LNCS,
pages 316–330, Turku, Finland, June 2013. Springer.
[5] Frédéric Dadeau, Kalou Cabrera Castillos, Yves Ledru, Taha Triki, Germán
Vega, Julien Botella, and Safouan Taha. Test generation and evaluation
from high-level properties for common criteria evaluations - the tasccc testing tool. In ICST, pages 431–438. IEEE, 2013.
[6] Projet TASCCC, Test Automatique basé sur des SCénarios et évaluation
Critères Communs. http ://lifc.univ-fcomte.fr/TASCCC/.
[7] Achim D. Brucker and Burkhart Wolff. The HOL-OCL Book. Technical
Report 525, ETH Zürich, 2006.
[8] Achim D. Brucker and Burkhart Wolff. A Formal Proof Environment for
UML/OCL. In Proceedings of Formal Aspects of Software Engineering
(FASE 2008), volume 4961 of Lecture Notes in Computer Science, pages
97–101. Springer Berlin / Heidelberg, 2008.
[9] Achim D. Brucker, Matthias P. Krieger, Delphine Longuet, and Burkhart
Wolff. A Specification-based Test Case Generation Method for UML/OCL.
In Proceedings of the Workshop on OCL and Textual Modelling (OCL
2010), 2010. LNCS 6627.
[10] Jean-Raymond Abrial, Michael Butler, Stefan Hallerstede, Thai Son Hoang,
Farhad Mehta, and Laurent Voisin. Rodin : an open toolset for modelling
and reasoning in Event-B. STTT, 12(6) :447–466, 2010.
2