previous up next contents
Précédent : HIPPCO : Un Remonter : Architecture flexible de Suivant : Actions industrielles

Vérification

Participants : François Gagnon, Christophe Diot Le compilateur ALFred accepte en entrée une spécification d'une application de type client/serveur écrite dans le langage de spécification formel ESTEREL. Dans une première phase, le compilateur ALFred intègre à l'application des modules de communication ESTEREL correspondant à des annotations contenues dans la spécification. Dans une deuxième phase, ALFred produit une implantation efficace en C de la spécification intégrée.

En ce moment, le client et le serveur d'une application sont spécifiés séparément. Cette approche permet de vérifier des propriétés locales avec les outils de vérification du langage ESTEREL, mais ne permet pas de vérifier des propriétés globales telles que les blocages dus à la communication entre le client et le serveur.

Etant donné que la vérification des propriétés locales n'est pas suffisante, nous avons étudié un nouveau modèle qui permet la vérification de propriétés réliées au comportement global du système. Le nouveau modèle est basé sur une spécification unique du client/serveur en ESTEREL. Cette spécification unique ne contient pas les modules de communication ESTEREL, mais plutôt un sous-module modélisant le protocole de communication.

Avec ce nouveau modèle, nous pouvons séparer le processus de vérification en deux étapes indépendantes :

Dans ce contexte, l'utilisateur du compilateur n'aura qu'à se soucier de la vérification de son application. Les modules de communications sont vérifiés une seule fois par les concepteur d'un nouveau protocole.

Nous avons expérimenté avec ce nouveau modèle pour la vérification de trois applications simples. Dans le futur, il faudra étudier la viabilité de cette approche sur des exemples de plus grande envergure.


previous up next contents
Précédent : HIPPCO : Un Remonter : Architecture flexible de Suivant : Actions industrielles