Plate-forme Systèmes et Logiciels Critiques

Action " Testablilité de logiciels critiques "

Plan

gorigh.gifPrésentation

gorigh.gifButs et moyens

gorigh.gifJSLC 2000

gorigh.gifJSLC 2001

gorigh.gifProjets-pilote

gorigh.gifClub des Partenaires

gorigh.gifNous contacter

gorigh.gifLiens


Le coût de test du logiciel dépasse souvent les 40 % du coût total de développement. Il est donc nécessaire de proposer des méthodes permettant de réduire ce coût, tout en assurant une validation efficace et complète du logiciel. C'est dans cette optique que s'insère l'action " Testabilité de logiciels critiques " dont le but est d'étudier la validation de logiciels critiques temps réel dès l'étape de spécification. Cette action repose sur une analyse de testabilité a priori qui permet d'orienter les opérations de test, d'en réduire le coût et la durée et d'en assurer l'efficacité.

L'équipe ValSys a conçu un outil, appelé satan, pour évaluer la testabilité de systèmes flot de données et assurer la planification des tests. Cette analyse de testabilité comporte deux volets : 

  • Le premier volet définit des mesures d'effort de génération des jeux d'essai et d'interprétation des résultats (contrôlabilité et observabilité) ; ces mesures permettent de comparer plusieurs architectures logicielles, de déterminer les parties les moins testables pour lesquelles de plus importantes ressources de test devront être allouées, et de guider le concepteur dans la modification de sa spécification pour améliorer la testabilité.

  • Le second volet consiste à proposer une méthode de planification des tests. Cette étape de planification se fonde sur la notion de stratégie de test. Plusieurs critères sont pris en compte : aide au diagnostic, criticité des sorties et des composants internes, test hiérarchique.

    Par ailleurs, la Société Sextant a développé un outil de génération de code, appelé gala, qui permet de convertir une spécification graphique de type flot de données dans un langage de haut niveau (ada ou c), au moyen d'une bibliothèque. gala couvre trois aspects : graphique, fonctionnel et langage. La bibliothèque se décompose en trois parties correspondant à ces trois volets :

  • La bibliothèque graphique contient les symboles utilisés pour l'édition des planches, les catégories de symboles, ?

  • La bibliothèque fonctionnelle concerne la vérification des schémas et la génération du code symbolique.

  • La bibliothèque langage rassemble les informations nécessaires au traducteur pour la conversion code symbolique / code source.

    L'action " Testabilité de logiciels critiques " vise à rendre l'outil d'aide à l'analyse de testabilité satan apte à une utilisation dans un environnement industriel. Cette action est organisée autour de trois étapes majeures :

  • La première étape consiste à développer les interfaces nécessaires entre l'outil satan et l'atelier gala. Elle nécessite la mise en place d'une " mini-bibliothèque " de types-satan qui seront nécessaires pour la phase d'expérimentation sur les planches gala. Cette étape comportera également la réalisation du diagnostic, sur la base de deux stratégies de test.

  • La seconde étape s'attachera à l'implémentation des mesures de testabilité et de diagnosabilité, qui permettront une évaluation a priori d'un logiciel par rapport à la difficulté de le tester ou de localiser une faute (en termes de coût et d'effort). Cette étape comportera également le développement d'une interface graphique permettant la visualisation des différents résultats : écoulements, modules difficilement testables, ensemble de localisation. On définira également les règles de construction des types-satan de manière à compléter la description fonctionnelle des composants de l'atelier gala.

  • La troisième étape consistera à étudier la génération des jeux d'essai proprement dits, nécessaires et suffisants pour activer/tester les écoulements induits par une stratégie donnée. Cette génération pourra se faire soit au niveau de la spécification gala soit au niveau du programme C résultant.