Nouvelles techniques de ModelChecking pour la vrification de Systmes Complexes PowerPoint PPT Presentation

presentation player overlay
1 / 20
About This Presentation
Transcript and Presenter's Notes

Title: Nouvelles techniques de ModelChecking pour la vrification de Systmes Complexes


1
Nouvelles techniques de Model-Checkingpour la
vérification de Systèmes Complexes
  • Y. Thierry-Mieg, S.Baarir, A. Duret-Lutz, F.
    Kordon,
  • Laboratoire d'Informatique de Paris 6
  • prénom.nom_at_lip6.fr

2
Introduction les besoins émergents
  • Contexte les systèmes répartis
  • Indéterminisme difficile/impossible à appréhender
  • Une démarche de test classique est inopérante
  • Même les modèles de répartition simples
    engendrent des systèmes complexes
  • Client/serveur
  • Limite à terme de ces modèles de répartition dans
    les systèmes industriels
  • MBD Model Based Development
  • Avatar du MDA?
  • Besoins
  • Ordre 1 développer plus vite à qualité
    constante
  • Aspects purement économiques
  • Ordre 2 développer des systèmes plus fiables
  • Fiable déterministes dans les systèmes répartis
  • Intérêt des méthodes formelles

3
Familles d'approches formelles
  • Démarches orientées preuves
  • Le modèle axiomes
  • La propriété un théorème
  • La preuve démonstration du théorème à partir
    desaxiomes
  • Usage de theorem prover
  • Ça marche PVS, B, Z, spec. algébriques, etc.
  • Model checking
  • Le modèle une spécification dans un langage
    formel
  • La propriété une formule LTL/CTL -gt automate
  • La preuve synchronisation d'automates
  • L'espace d'états du système
  • L'automate de la propriété
  • Ça marche SPIN, PROD, SPOT, etc.

paramétrable systèmes infinis -
besoin d'expertise - outils complexes -
systèmes statiques
automatisable plus accessibles
systèmes dynamiques - non paramétrable -
systèmes finis
4
Model Checking
  • Contrôler l'explosion combinatoire
  • Besoin d'optimiser systématiquement à différents
    niveaux
  • Modélisation
  • Génération de l'espace d'états
  • Problème crucial occupation mémoire
  • Codage des états
  • Factorisation des états
  • Recherche de chemins dans l'espace d'états ou
    synchronisation d'automates
  • Ce qui sera présenté aujourd'hui
  • Factorisation des états
  • Identification des symétries (globales et/ou
    partielles)
  • Exploitation des symétries pour la génération
    despaces détats
  • Exploitation des symétries pour la vérification
    LTL
  • Exploitation des symétries admises par une
    propriété

5
Un système client/serveur simple
  • Modèle RPC simple
  • Deux instances de clients appellent des méthodes
    du serveur et se bloquent en attente dune
    réponse
  • Le serveur traite les requêtes localement et
    renvoie un acquittement.
  • Fonctionnement en boucle
  • Points darrêt au moment des synchronisations de
    processus (envois et réceptions)

6
Espace d'états concrets(C2, S1, M2)
  • Noeud une configuration
  • Processus
  • État des communications
  • Arc instanciation d'une transition
  • Dimensions
  • 24 Noeuds
  • 54 Arcs
  • Cycleappel avec mlt2 sans entrelacement

7
Graphe Quotient(1)Les Clients sont Permutables
8
Graphe Quotient (2)Les Messages Sont Permutables
Un client envoie un message au serveur Deux
chemins (M1 ? M2)
Même configuration, un seul chemin (identité des
messages permutables)
9
Model-Checking LApproche Automate
  • Vérification dune propriété sur un modèle
  • Comportements du modèle L(AM)
  • Comportements reconnus comme invalides par la
    propriété L(A?)
  • Intersection des langages gt contre-exemple si
    propriété fausse

10
LTL et Automates reconnaissant un langage
  • LTL Linear Time Logic
  • Expression de propriétés temporelles sur les
    éxécutions du système
  • Propriété G(capteur?F alarme).
  • Automate de sa négation

11
Approche Automate et Graphe Quotient
C1C2
C1?C2
  • Compatibilité nécessaire entre les alphabets
    pour faire le produit synchronisé
  • Les permutations utilisées pour construire le
    graphe quotient ne doivent pas modifier la valeur
    de vérité des propositions atomiques de la
    propriété à vérifier

12
Analyse Des PermutationsAdmises Par Une Formule
  • Propriété à vérifier ? G(a ? b)
  • a le réseau R contient un message du client C1
    de type M1
  • b C1 attend un acquittement
  • Permutations admises
  • a gt C1?C2 et M1?M2
  • b gt C1?C2
  • Compatibilité graphe quotient / propriété
  • C1?C2 et M1?M2 ? Pas de permutations admises
  • PAS DE GAIN AVEC LAPPROCHE
  • PAR GRAPHE QUOTIENT

13
Permutations admises et Automate de la Propriété
true
C1C2 et M1M2
  • Propriété à vérifier ? G(a ? b)
  • a le réseau R contient un message du client C1
    de type M1
  • b C1 attend un acquittement
  • Permutations admises
  • True gt C1C2 et M1M2
  • a gt C1?C2 et M1?M2
  • b gt C1?C2 et M1M2
  • a? b gt C1?C2 et M1?M2

q0
C1?C2 et M1?M2
a? b
A? Automate de la négation de la propriété
q1
true
C1C2 et M1M2
Localité des distinctions interdisant les
permutations
14
SSP Symbolic Synchronized Product
C1C2
C1?C2
  • Idée
  • Etudier directement le produit synchronisé
  • Compatibilité évaluée à la volée (Localement)
  • PLUSIEURS GROUPES DE PERMUTATIONS
  • COEXISTENT DANS LE SSP

15
Construction du SSP
true
C1C2 M1M2
ltq0,s0gt
True C1C2 M1M2
q0
C1?C2 M1?M2
ltq0,s1gt
a? b
True C1C2 M1M2
q1
true
  • Aucun état ne vérifie a? b gt
  • Le SSP est produit en permettant les permutations
  • C1C2 M1M2

C1C2 M1M2
16
Étude de cas réellel'intergiciel PolyORB
  • Intergiciel schizophrène
  • Réflexion sur l'architecture d'un intergiciel
  • Un intergiciel extrêmement générique et
    vérifiable
  • http//www.polyorb.eu.org

API (applicative)

Coeur neutre réutilisable
API (protocole)

17
Étude de cas réellele modèle
  • Construction à partir des composants du système
  • Vision hierarchique
  • Assemblage de patterns simples
  • Configuration de l'exemple présenté
  • Multithreadé
  • Politique Leader-Follower (TAO)
  • Le modèle
  • 89 places
  • 72 transitions
  • 289 arcs

Thread(s) en modefollower
Gestion des sources et des événements reçus
Thread en mode leader
FIFO
18
Étude de cas réelleEspaces détats concrets et
quotient
19
PerformancesGraphe Quotient et SSP
20
Conclusion perspectives
  • Maturité de ces techniques
  • Ces techniques deviennent mûres et utilisables
    par des peu spécialistes
  • Support par des outils
  • La convivialité arrive-)
  • Travaux sur des études de cas réelles
  • Travaux en cours des extensions aux techniques
    actuelles
  • Evaluation de performances stochastiques
  • Prise en compte de symétries locales
  • Techniques de représentation en mémoire
  • Codage des état pour partager des sections
  • Utilisation d'arbres de décisions (classique
    pourl'espace d'états concrets)

10620
Write a Comment
User Comments (0)
About PowerShow.com