23.11.2014 Views

Méthodes pour la validation de modèles formels pour la ... - ISAE

Méthodes pour la validation de modèles formels pour la ... - ISAE

Méthodes pour la validation de modèles formels pour la ... - ISAE

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.7 Modélisation d’un sous-système logiciel 91<br />

3.7.2 Caractérisation <strong>de</strong>s comportements<br />

L’i<strong>de</strong>ntification <strong>de</strong>s évènements à propager utilise également <strong>la</strong> spécification fonctionnelle<br />

du composant ainsi que son analyse <strong>de</strong> panne.<br />

– Dans <strong>la</strong> spécification fonctionnelle, nous i<strong>de</strong>ntifions les mo<strong>de</strong>s d’utilisation <strong>de</strong> <strong>la</strong> fonction (si<br />

celle-ci peut être utilisée dans plusieurs configurations par exemple) et les transitions entre<br />

ces mo<strong>de</strong>s.<br />

– Dans les analyses <strong>de</strong> pannes, nous i<strong>de</strong>ntifions les mo<strong>de</strong>s <strong>de</strong> défail<strong>la</strong>nce et les mo<strong>de</strong>s <strong>de</strong><br />

dysfonctionnement <strong>de</strong> <strong>la</strong> fonction.<br />

Concernant ces analyses <strong>de</strong> pannes et dans l’optique d’obtenir un certain niveau d’abstraction<br />

dans notre modèle, différents mo<strong>de</strong>s <strong>de</strong> défail<strong>la</strong>nce génériques peuvent être définis. De [20], nous<br />

tirons <strong>la</strong> liste non exhaustive présentée dans le tableau 3.6.<br />

Défail<strong>la</strong>nces<br />

Effets <strong>de</strong>s défail<strong>la</strong>nces<br />

Défail<strong>la</strong>nces externes traduites par <strong>la</strong> qualité <strong>de</strong>s entrées<br />

• Une entrée est absente, le logiciel n’est pas • Les résultats <strong>de</strong>s calculs dépendant <strong>de</strong><br />

protégé<br />

cette entrée peuvent être incorrects<br />

• Une entrée est incorrecte, le logiciel n’est • Les résultats <strong>de</strong>s calculs dépendant <strong>de</strong><br />

pas protégé<br />

cette entrée peuvent être incorrects<br />

Défail<strong>la</strong>nces induites par une erreur <strong>de</strong> mo<strong>de</strong><br />

• Le mo<strong>de</strong> d’utilisation <strong>de</strong> <strong>la</strong> fonction n’est Les résultats <strong>de</strong>s calculs dépendant du mo<strong>de</strong><br />

pas cohérent avec <strong>la</strong> phase opérationnelle peuvent être incorrects<br />

effective<br />

Défail<strong>la</strong>nce <strong>de</strong> <strong>la</strong> fonction<br />

• La fonction est perdue, aucun calcul n’est • Aucune sortie n’est produite<br />

effectué<br />

• La partie « calcul <strong>de</strong> données » est erronée<br />

Défail<strong>la</strong>nce <strong>de</strong> <strong>la</strong> détection<br />

• La détection est intempestive<br />

• La détection est inefficace ou perdue<br />

• Les sorties sont produites mais sont<br />

incorrectes quelle que soit <strong>la</strong> qualité <strong>de</strong>s<br />

valeurs en entrée<br />

• Quelle que soit <strong>la</strong> situation, une erreur est<br />

signalée<br />

• Quelle que soit <strong>la</strong> situation, aucune erreur<br />

n’est signalée<br />

Tableau 3.6 – Défail<strong>la</strong>nces d’une architecture logicielle et leurs effets [20]<br />

Ensuite, l’utilisation conjointe <strong>de</strong> <strong>la</strong> spécification fonctionnelle (celle-ci nous fournit <strong>la</strong> qualité<br />

<strong>de</strong>s données observées par les dispositifs <strong>de</strong> détection <strong>de</strong> défail<strong>la</strong>nce) et <strong>de</strong> l’analyse <strong>de</strong> panne<br />

(celle-ci nous fournit <strong>la</strong> qualité <strong>de</strong>s données après défail<strong>la</strong>nce), il nous est possible d’i<strong>de</strong>ntifier une<br />

abstraction nous permettant <strong>de</strong> modéliser les propagations <strong>de</strong> panne au sein d’un système logiciel.<br />

En se référant au tableau 3.6, les valeurs abstraites d’une données sont par exemple {correcte,<br />

incorrecte, absente}.<br />

Une fois cette abstraction déterminée, [20] construit <strong>de</strong>s tables <strong>de</strong> décisions <strong>pour</strong> décrire les<br />

calculs en tenant compte <strong>de</strong>s mo<strong>de</strong>s <strong>de</strong> fonctionnement et <strong>de</strong> dysfonctionnement. Ces tables sont<br />

construites <strong>pour</strong> chaque flux <strong>de</strong> sortie du nœud AltaRica et sont <strong>de</strong> <strong>la</strong> forme « si le composant est<br />

dans le mo<strong>de</strong> <strong>de</strong> (dys)fonctionnement X et si les valeurs <strong>de</strong>s flux d’entrées satisfont <strong>la</strong> contraintes<br />

C, alors <strong>la</strong> valeur du flux <strong>de</strong> sortie est Y ». De telles règles peuvent facilement être implémentées<br />

sous <strong>la</strong> forme d’assertions AltaRica.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!