publicité
 
publicité
 
publicité
 
publicité
 
publicité
 
publicité
 
publicité
 
publicité

Les défis de la validation des logiciels des applications embarquées

Imprimer l'information

Américain, impliqué depuis 25 ans dans les logiciels pour applications embarquées dans tous les univers (avionique, industrie, télécoms), Bill St Clair a suivi les évolutions importantes qu'ont connues les logiciels pour systèmes embarqués. Dans une interview accordée à notre confrère Test & Measurement World, il rappelle que dans les applications sécuritaires (automobile, militaire, espace, télécoms), il fallait relever le défi de la validation du code (celui-ci doit être sûr et sans défaut) tout en se conformant aux nombreux référentiels adoptés dans les différents secteurs, tels que CMMI, DO-178B pour l'avionique, EN-50128 pour le ferroviaire ou IEC 61508 dans l'automobile.

Certaines pratiques mises en œuvre dans certains secteurs migrent vers d'autres. C'est le cas par exemple de la validation basée sur les règles (qui décrivent le comportement du système dans toutes les situations, tel qu'on peut le prévoir d'après le cahier des charges) qui est depuis longtemps mise en pratique dans l'aéronautique et le ferroviaire et qui arrive maintenant dans l'automobile. Autre aspect, il faut mettre en œuvre une traçabilité complète de l'ensemble du processus de développement de l'applicatif (conception, codage, test), ce qui suppose de brasser des documents présentés en plusieurs formats et provenant d'éditeurs différents. Par le passé, ceci était réalisé manuellement et pouvait représenter de 50 à 70 % du coût global d'un projet. Aujourd'hui, des outils de management de projet permettent de gagner beaucoup de temps.

Une autre évolution importante concerne l'arrivée des langages de haut niveau, beaucoup moins fastidieux que les langages machine utilisés pendant longtemps. Mais l'expérience montre que les programmes obtenus ne fonctionnent pas toujours comme prévu : s'il faut faire moins d'effort pour aligner les lignes de code, il faut en faire davantage pour détecter où sont les défauts. De nombreux spécialistes se sont penchés sur la question et ont constaté que d'un programme à l'autre, certains revenaient régulièrement. Ce constat a favorisé l'émergence de guides de bonnes pratiques afin d'éviter, ou à défaut de pouvoir détecter, tout ce qui peut conduire à l'introduction de défauts. C'est le cas par exemple du MISRA adopté par les professionnels de l'automobile.

Pour Bill St Clair, les bonnes pratiques doivent se pencher sur la cause des défauts plutôt qu'à leurs effets (le niveau 5 du référentiel CMMI met l'accent là-dessus) et qu'il est très important de se pencher sur la fonction que doit exécuter le logiciel. En effet, on observe qu'au moins 70 % des défauts proviennent de ce non respect des exigences du logiciel.

Télécharger l'article complet