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.

4.4 Sélection <strong>de</strong> cas <strong>de</strong> test <strong>pour</strong> un modèle AltaRica 115<br />

AltaRica. Cette mesure <strong>de</strong> <strong>la</strong> couverture nous permettra d’i<strong>de</strong>ntifier les parties du modèle non<br />

couvertes. Il sera alors possible si souhaité <strong>de</strong> générer <strong>de</strong>s tests supplémentaires <strong>pour</strong> atteindre<br />

une couverture satisfaisante du modèle.<br />

Ainsi, en simu<strong>la</strong>nt <strong>de</strong>s tests issus <strong>de</strong> <strong>la</strong> spécification sur le modèle AltaRica, une erreur<br />

rencontrée permettra <strong>de</strong> réfléchir à <strong>la</strong> fois sur le modèle et sur <strong>la</strong> spécification. En assurant une<br />

certaine couverture <strong>de</strong> ces <strong>de</strong>ux documents (spécification et implémentation), il sera alors possible<br />

<strong>de</strong> traquer les informations manquantes dans le modèle et celles en surplus.<br />

4.4 Sélection <strong>de</strong> cas <strong>de</strong> test <strong>pour</strong> un modèle AltaRica<br />

Le premier objectif <strong>de</strong> <strong>la</strong> démarche est donc <strong>de</strong> se doter d’un jeu <strong>de</strong> tests. Pour ce<strong>la</strong>, nous<br />

avons évoqué que, <strong>pour</strong> <strong>la</strong> <strong>validation</strong> unitaire, l’utilisation d’une spécification formelle ou semiformelle<br />

<strong>pour</strong>rait nous permettre cette génération... Le principe étant, nous le rappelons, d’obtenir<br />

un jeu <strong>de</strong> tests dont on étudiera par <strong>la</strong> suite <strong>la</strong> couverture du modèle AltaRica (quelle portion du<br />

modèle couvre ce jeu <strong>de</strong> tests ?).<br />

Pour commencer, nous présenterons dans <strong>la</strong> section 4.4.1 <strong>la</strong> génération d’un jeu <strong>de</strong> tests <strong>pour</strong><br />

vali<strong>de</strong>r un composant AltaRica élémentaire (<strong>validation</strong> unitaire). Pour ce<strong>la</strong>, nous nous appuierons<br />

principalement sur <strong>la</strong> section 3.8. Cependant, <strong>la</strong> <strong>validation</strong> unitaire n’est pas en mesure (et il<br />

serait injuste <strong>de</strong> le lui reprocher) d’assurer une complète absence d’erreurs dans le modèle. En<br />

particulier, elle ne permet pas d’exhiber <strong>de</strong>s erreurs liées à <strong>la</strong> présence <strong>de</strong> plusieurs composants<br />

dans le modèle (par exemple, <strong>de</strong>s erreurs dans <strong>la</strong> modélisation d’un processus <strong>de</strong> reconfiguration<br />

ou dans une synchronisation). Pour ces raisons, nous introduirons dans les sections 4.4.2 et 4.4.3<br />

<strong>la</strong> génération <strong>de</strong> cas <strong>de</strong> test <strong>pour</strong> <strong>la</strong> <strong>validation</strong> <strong>de</strong> l’intégration et <strong>la</strong> <strong>validation</strong> système.<br />

4.4.1 Validation unitaire : Génération d’un jeu <strong>de</strong> tests <strong>pour</strong> le modèle<br />

AltaRica<br />

4.4.1.1 Génération <strong>de</strong> tests à partir d’une spécification par AMDE formelle<br />

Nous avons vu section 3.8 que <strong>la</strong> spécification du modèle AltaRica pouvait potentiellement<br />

être écrite en formalisant les informations <strong>de</strong> l’AMDE (<strong>pour</strong> rappel : Analyse <strong>de</strong>s Mo<strong>de</strong>s <strong>de</strong> Défail<strong>la</strong>nce<br />

et <strong>de</strong> leurs Effets). On rappelle ici le principe du tableau 3.7.<br />

Mo<strong>de</strong> <strong>de</strong><br />

défail<strong>la</strong>nce sur<br />

<strong>la</strong> sortie<br />

OUT = Nul<br />

Description<br />

Déviation<br />

entrée<br />

Mo<strong>de</strong> <strong>de</strong><br />

défail<strong>la</strong>nce<br />

composant<br />

Taux<br />

... IN = Nulle - -<br />

... - E 1 1.5e −6<br />

... ... ... ... ...<br />

Chaque ligne <strong>de</strong> cette AMDE nous donne donc un scénario <strong>de</strong> test à appliquer sur le modèle.<br />

Les composantes <strong>de</strong> ce scénario sont soit <strong>de</strong>s mo<strong>de</strong>s <strong>de</strong> défail<strong>la</strong>nce, soit <strong>de</strong>s déviations <strong>de</strong>s entrées<br />

du composant, soit éventuellement une combinaison <strong>de</strong>s <strong>de</strong>ux. Pour chacun <strong>de</strong> ces scénarios, <strong>la</strong><br />

valeur attendue <strong>de</strong> <strong>la</strong> sortie est indiquée dans <strong>la</strong> première colonne du tableau. Par contre et à<br />

cause du formalisme choisi, un tel tableau ne nous fournit aucune indication sur l’état attendu du<br />

modèle.<br />

4.4.1.2 Génération <strong>de</strong> tests à partir d’une machine à état finis<br />

Ici, nous faisons référence à différents types <strong>de</strong> spécifications présentés en section 3.8 :

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

Saved successfully!

Ooh no, something went wrong!