Visualiser l’impact des erreurs logicielles

Le 12/04/2010 à 13:06  

Coverity, éditeur américain spécialisé dans les outils de test logiciel, lance sa nouvelle suite Coverity 5. Elle regroupe tous les outils déjà existants (analyse statique et dynamique, notamment) et y ajoute une fonction inédite de “cartographie des bugs”. Il s’agit d’évaluer l’impact de la correction d’un bug sur tous les autres programmes qui utilisent le morceau de code corrigé.

Coverity annonce le lancement de Coverity 5, une suite logicielle qui regroupe tous les outils de tests de l’éditeur américain. Principal intérêt : les utilisateurs ont à leur disposition une interface unique, sous forme de portail web, capable de remplir toutes les fonctions de test logiciel proposés jusqu’alors : analyse statique, analyse dynamique, classement et tri des erreurs, le tout pour des programmes écrits en langage C/C++, en Java ou en C#.
L’éditeur a profité de ce lancement pour ajouter à son produit une fonction encore inédite sur le marché. En effet, les équipes de développeurs pourront désormais évaluer l’influence des corrections de bugs, pas uniquement sur le programme testé, mais sur tous les programmes qui utilisent le morceau de code en question. Avec des équipes de développement toujours plus distribuées, il devient courant que plusieurs programmeurs travaillent en même temps sur le même code. Grâce à cette nouvelle interface, les responsables d’équipes pourront mesurer l’impact d’un changement sur toute la gamme de produits qui exploitent ce code corrigé. Ainsi, ils peuvent s’assurer que ce changement ne va pas entraîner, sur d’autres produits, des dysfonctionnements encore plus graves que l’erreur de départ.
Une fonctionnalité qui était très attendue, comme le souligne Cris Rommel, analyste chez VDC Research Group : « sur le marché des systèmes embarqués, l’analyse statique est apparue comme une pratique de référence pour l’identification des erreurs logicielles. D’autant plus que l’on assiste à une extension des offres de produits et des codes sources associés, quel que soit le secteur. Or aujourd’hui, pour maîtriser l’impact  des erreurs de programmation, il est essentiel de pouvoir limiter les risques induits par les corrections. »
Adapté au développement “agile”
L’interface Coverity 5 se révèlera particulièrement efficace dans le cadre des méthodes de développement “agiles”. En effet, les équipes qui utilisent ces méthodes mettent en place des boucles de modifications très courtes, de l’ordre de la journée. Elles font ce que l’on appelle de l’“intégra-tion continue”, ce qui implique que le code source est constamment reconstruit au fur et à mesure que les modifications sont apportées. Ces équipes ont donc pris l’habitude d’automatiser leurs tests qualité (absence d’erreurs) et leurs tests d’intégration (compatibilité du morceau de code avec le reste du programme). « Grâce à l’interface unique, les responsables auront sous les yeux des rapports d’analyses statiques et dynamiques quotidiens, explique Dave Peterson, directeur marketing de Coverity. Mais surtout, en utilisant le nouvel outil “Defect Impact Mapping” (cartographie de l’impact des défauts), ils visualisent l’influence d’une modification sur les autres projets. Ils peuvent ainsi décider si la correction d’un bug est vraiment indispensable ou non. »
Évaluer l’impact des modifications
Parmi les autres fonctionnalités apportées à Coverity 5, citons la possibilité de faire travailler simultanément un plus grand nombre d’utilisateurs. La navigation a elle aussi été améliorée, avec la possibilité de placer des marqueurs d’erreurs dans le code, de partager des écrans de débogage et surtout de faire de l’“expansion en ligne” (zoomer sur les détails des erreurs et pointer sur les morceaux de code impactés par ces erreurs). Pour finir, le portail servira aussi à suivre les réparations d’erreurs et à établir des graphiques de tendances (types d’erreurs les plus fréquentes, taux de correction d’erreurs, etc.).