OUTIL D'EVALUATION DE LA SURETE DE FONCTIONNEMENT
PAR CHAINES DE MARKOV
ET RESEAUX DE PETRI STOCHASTIQUES
SURF-2 est un outil d'évaluation de la sûreté de fonctionnement des systèmes matériels et logiciels grâce à la construction rigoureuse, la validation et la résolution numérique de modèles markoviens.
Le comportement d'un système est modélisé soit par une chaîne de Markov, soit au moyen d'un réseau de Petri Stochastique Généralisé (RdPsG)
SURF-2 facilite l'études comparative de la sureté de fonctionnement pour diverses architectures d'un système.
La superposition d'une structure dite de récompense au modèle comportemental permet d'évaluer des mesures combinées de sureté de fonctionnement de performance ou de coût.
L'évaluation quantitative de la sûreté de fonctionnement d'un système peut être décomposée en deux grandes étapes:
SURF-2 autorise deux types de description du comportement du système :
Il est entièrement automatique.
Le traitement de la chaîne de Markov numérisée permet d'obtenir les mesures de sûreté de fonctionnement souhaitées.
Le passage d'un RdPsG à une chaine de Markov à temps continu se fait sur la base des marquages qui sensibilisent les transitions temporisées:
Les outils fournis par Surf-2 permettent la création et la mise à jour des objets suivants:
Un réseau de Petri Stochastique Généralisé ou une chaîne de Markov modélise le comportement du système tel qu'il est perçu par l'utilisateur sous la forme:
Ces deux classes d'état permettent de définir la plupart des mesures de sûreté de fonctionnement, la classe "catastrophic" étant utilisée pour l'évaluation de mesures de sécurité. Pour un même modèle, il est possible de définir plusieurs partitions afin d'étudier différents cas de fournitures de services inappropriés.
Les paramètres du modèle peuvent être des expressions numériques ou symboliques. Un paramètre symbolique est une variable locale au modèle dont la visibilité est limitée au modèle dans lequel elle a été définie. L'utilisation combinée de paramètres symboliques et la définition de plusieurs partitions pour un même modèle permet de construire des modèles génériques que l'on peut stocker dans la base de données de SURF-2 en vue de les réutiliser dans d'autres modélisations.
Une Etude correspond à l'assignation d'une valeur à chaque paramètre d'un modèle. La valeur qui est assignée à un paramètre donné peut être une valeur numérique ou une valeur globale; dans ce dernier cas, elle peut être alors commune à plusieurs paramètres de modèles différents. Cette notion de valeur globale est très similaire à la notion de variable externe, utilisée dans de nombreux langages de programmations. La généricité des modèles et la possibilité de définir plusieurs études pour un modèle donné offrent une grande souplesse de modèlisation et permet d'étudier la sensibilité d'une mesure à certains paramètres.
La modèlisation de plusieurs solutions d'architectures dans un but d'évaluation comparative, nécessite l'évaluation simultanée d'une mesure de sûreté de fonctionnement commune aux diverses solutions considérées ou aux différentes configurations d'un même système. C'est le rôle de l'Analyse.
Pour cela une Analyse spécifie :
L'assignation d'une valeur (ou d'un ensemble de valeurs numériques, dans le cas d'études de sensibilité) à chaque valeur globale est réalisée au niveau de l'analyse.
La figure ci-dessous montre deux exemples très simples d'utilisation de valeurs globales pour réaliser des études comparatives d'architectures.
Les autres principaux objets de la base de données gérés par le superviseur de l'application sont les Résultats intermédiaires et les Résultats de calcul d'une mesure. Les Résultats intermédiaires sont issus du traitement d'un réseau de Petri entièrement numérisé et dimensionné. Il s'agit:
Les Résultats de calcul, pour une mesure donnée, se présentent sous forme numérique ou graphique, imprimables au format Poscript.
Ainsi que l'explicite la figure ci-dessous SURF-2 fournit un ensemble d'outils permettant la création et la mise à jour des objets:
Lors du lancement de SURF-2 la fenêtre ci-dessous apparaît:
En plaçant le curseur sur la commande "MODEL" l'utilisateur fait monter le menu suivant:
L'utilisateur peut alors lancer l'éditeur pour créer une nouvelle chaine de Markov (CREATE) ou mettre à jour une chaine existante (OPEN).
Se reporter au manuel utilisateur pour plus de précision.
Les Editeurs de Réseau de Petri et de chaîne de Markov ne se différencient que par le type des objets édités. Lors du lancement d'un éditeur on peut ouvrir les fenêtres suivantes:
Des fonctions de sélection et de copies permettent les échanges entres les fenêtres. Les fenêtres de travail permettent par exemple:
A l'appel d'un Editeur de modèle une des fenêtres ci-dessous apparaît :
ou
L'utilisateur sélectionne la ou les fenêtres qu'il désire utiliser.
Il a pour fonction la création, la mise à jour et la validation du réseau de Petri, des Partitions et des Invariants constituant le modèle.
La fenêtre d'édition [MODEL EDITOR] à l'aspect suivant:
.
La commande PART provoque la montée d'une fenêtre permettant la saisie des partitions.
La commande INV provoque la montée d'une fenêtre permettant la saisie des invariants.
La commande VALIDATION & SAVE permet de sauvegarder et de valider le modèle en édition.
La validation permet d'assurer la cohérence:
Il a pour fonction la création, la mise à jour et la validation de la chaîne de Markov et des Partitions constituant le modèle.
.
La commande PART provoque la montée d'une fenêtre permettant la saisie des partitions.
La commande VALIDATION & SAVE permet de sauvegarder et de valider le modèle en édition.
La validation permet d'assurer la cohérence:
L'Editeur d'Etude a pour fonction de créer ou de mettre à jour l'ensemble des valeurs des paramètres du modèle qui lui est associé:
Cet outil fournit à l'utilisateur un moyen à la fois puissant et souple d'exploitation des résultats. L'utilisateur peut sélectionner un sous ensemble des résultats visualisables sous la forme d'un faisceau de courbes.