• Aucun résultat trouvé

4. Méthodologie d’évaluation des systèmes instrumentés de sécurité à intelligence

4.1. Modélisation fonctionnelle et dysfonctionnelle

La modélisation de systèmes en vue d’une analyse de sûreté de fonctionnement doit comprendre tant la modélisation fonctionnelle que la modélisation dysfonctionnelle. La modélisation fonctionnelle est subordonnée à une analyse fonctionnelle du système qui utilise ces fonctions ainsi que leur organisation hiérarchique tandis que la modélisation dysfonctionnelle se rapporte généralement aux aspects de la sûreté de fonctionnement des systèmes, celle-ci (Annexe 1) étant souvent définie comme étant la science des défaillances. La modélisation fonctionnelle et dysfonctionnelle a pour objectif l’évaluation des performances en fonctionnement normal et en fonctionnement anormal.

A l'issue des travaux précédents [MKH 06a] [MKH 06b], la modélisation et l’analyse de la sûreté de fonctionnement d’instruments intelligents ont été élaborées avec un objectif d’améliorer les compréhensions du modèle de SAID. Les techniques de modélisation statiques permettent une validation du modèle sans tenir compte des aspects temporels. Les performances globales pour l’évaluation de ce type de systèmes pour des applications relatives à la sécurité doivent être déterminées avec une approche dynamique de modélisation tenant compte entre autres du caractère hybride de ce type de systèmes. En effet, les systèmes automatisés à intelligence distribuée (SAID) sont des systèmes hybrides disposant d’une dynamique continue et d’une dynamique discrète liée à la commande numérique et à l’existence d’événements discrets (défaillances, dépassements de seuils). Un système hybride est un système qui nécessite dans sa description la prise en compte de sa dynamique continue et de sa dynamique discrète. La dynamique continue est représentée par des variables continues, la dynamique discrète représente les changements d’états dus à l’occurrence d’événements. Ces deux aspects rendent la modélisation hybride indispensable [MED 06]. Les méthodes les plus adaptées à la modélisation et à l’analyse des systèmes dynamiques hybrides sont les modèles états transitions tels que les graphes d’états (les graphes de Markov et les automates) et les approches basées sur les réseaux de Petri [GRI 03] [SCH 04] [VIL 06]. Les méthodes de modélisation peuvent être classées selon deux aspects : l’aspect dysfonctionnel qui permet de décrire les défaillances et les réparations ainsi que le comportement du système en présence de dysfonctionnements, l’aspect fonctionnel qui s’intéresse au comportement des systèmes.

La séparation entre ces deux aspects est la plus grande cause de l’inefficacité des méthodes classiques de sûreté de fonctionnement concernant la fiabilité dynamique. Ces deux aspects doivent être intégrés dans un même modèle de fiabilité en respectant leur interaction [MKH 08b] [MED 06] [SCH 04].

4.1.1. Modélisation de l’aspect fonctionnel

Les automates font partie des moyens de modélisation des systèmes à événements discrets et sont l’un des formalismes états-transitions utilisés pour la description de ces systèmes.

Le point faible de ce formalisme est l’explosion combinatoire du nombre d’états du graphe. Pour éviter ce problème, dans le cas de la modélisation des systèmes complexes pouvant être découpés en sous-systèmes, il est possible de construire un modèle d’automate pour chacun d’eux et de les composer ensuite pour élaborer l’automate correspondant au système global.

Un autre formalisme très utilisé dans la modélisation fonctionnelle des systèmes à événements discrets et dans les études de sûreté de fonctionnement des systèmes dynamiques est celui des réseaux de Petri (Annexe 2). Ils sont caractérisés par une évolution asynchrone dans laquelle les transitions des composantes parallèles sont franchies les unes après les autres, et par une représentation explicite des synchronisations. Plusieurs extensions des réseaux de Petri ont été élaborées pour répondre à la modélisation des problèmes spécifiques. L’un des points forts des réseaux de Petri par rapport aux autres formalismes repose sur des fondements théoriques qui leur permettent de vérifier les propriétés générales d’un modèle (vivant, sans blocage ou borné, etc.,) ainsi que l’accessibilité de certains marquages.

4.1.2. Modélisation de l’aspect dysfonctionnel

La méthode des graphes de Markov est utilisée pour analyser et évaluer la sûreté de fonctionnement des systèmes réparables. La construction d’un graphe de Markov consiste à identifier les différents états du système (défaillants ou non défaillants) et à chercher comment passer d’un état à un autre lors d'un dysfonctionnement ou d’une réparation.

Les graphes de Markov souffrent de l’explosion du nombre des états [MED 06], car le processus de modélisation implique l’énumération de tous les états possibles et de toutes les transitions entre ces états. L’utilisation des réseaux de Petri stochastiques s’avère une alternative pour surmonter ce problème.

Les réseaux de Petri stochastiques [DAV 97] sont obtenus par l’association de durées de franchissement aléatoires aux transitions. Une extension nommée "réseaux de Petri stochastiques généralisés" existe permettant ainsi de prendre en compte les transitions immédiates sans délai.

4.1.3. Modélisation fonctionnelle et dysfonctionnelle à travers le langage Altarica

Le langage Altarica [GRI 98] a été crée par le Laboratoire Bordelais de Recherche Informatique (LaBRI) ; il permet de décrire à la fois le comportement d’un système dans le cas nominal et en présence de défaillances. C’est un langage formel simple, à la fois hiérarchique et compositionnel. Sa sémantique et sa syntaxe clairement définies lui permettent d’être couplé à différents outils de fiabilité et de validation comme Aralia [VIN 04], MocaRP ou encore de model-checking.

Le développement de modèles Altarica est supporté par Cecilia OCAS (Outil de Conception et d’Analyse Système) workshop de Dassault Aviation qui fournit un éditeur graphique de modèles et un gestionnaire de composants. De plus, cet outil intègre des fonctions de simulation interactive et de génération d’arbre de défaillance.

AltaRica est fondé sur la notion d'automate à contraintes. Chaque composant du système est appelé nœud (node). Un nœud possède un nom, des variables de deux types, celles d'état, internes et non visibles de l'extérieur, et celles de flux qui représentent l'interface du composant avec son environnement. Les valeurs que prennent ces variables expriment leur état de fonctionnement. Des transitions de la forme [garde, événement, mise à jour] décrivent les changements d'états sous l'effet d'événements, suivant certaines conditions, et avec des conséquences sur la valeur des variables d'état.

Figure 3.6 : Représentation d’un composant sous forme d’un automate

Les flux de sortie sont évalués en fonction de l’état actuel, et éventuellement en fonction des flux d’entrée par des assertions.

Les transitions définissent le passage d’un état à un autre. Une transition est franchie sur occurrence d’un événement et éventuellement en fonction de conditions portant sur les valeurs des flux d’entrée.

Ces concepts sont illustrés par l’exemple suivant. Le composant mesure_p a une variable d’entrée nommée m_p qui indique la présence d’une grandeur à l’entrée du composant et une variable de sortie m1 qui indique la présence d’une mesure en sortie. La variable état indique l’état du composant, sa valeur est égale à nominal lorsqu’aucune défaillance ne s’est produite et à hs lorsque le composant ne peut plus transmettre de mesure. L’événement

panne décrit une défaillance qui fait passer le composant dans l’état hs. La transition associée à cet événement ne peut se déclencher que si le composant est dans l’état nominal. L’assertion signifie que la valeur de la mesure en sortie est égale à la valeur de la grandeur en entrée si le composant est dans l’état nominal et sinon il n’y a pas de mesure en sortie.

Transition : Evt_Rep/[con dition] Flux Sortie Flux Entrée Composant Etat= panne Etat= Nominal Assertion: Sortie = true Assertion: Sortie = false Transition : Evt_Def/[cond ition]

Figure 3.7 : Description de modélisation en code Altarica

Dans un modèle de système, les instances de nœud Altarica sont interconnectées par des assertions qui relient les flux d’entrée d’un composant avec les flux de sortie d’autres composants.

Le langage Altarica permet de décrire les comportements fonctionnel/dysfonctionnel de composants dans un formalisme à états/transitions. Il offre la possibilité de décrire formellement des comportements [MKH 07]. Sa faiblesse est qu’il n’intègre pas la notion de temps et la description de comportements dynamiques.

Documents relatifs