Test logiciel : le parent pauvre du développement se structure en douceur
La 2e journée française des tests logiciels a montré que le segment commençait à se structurer, mais souffrait encore de manque d’efficacité et de rentabilité. Le test est encore le parent pauvre du développement, mais commence à relever progressivement la tête.
La prise de conscience autour des tests logiciels gagne du terrain chez les développeurs et éditeurs de logiciel. Mais ce n’est pas encore la panacée. Si, en effet, le nombre de participants à la deuxième journée française des tests logiciels, le 30 mars dernier, laisse présager un accroissement de l’intérêt pour les tests et une structuration du secteur, il apparaît toutefois que le profession n’a que très peu évolué en 15 ans, constate Bernard Homès, président du Comité français des tests logiciels (CFTL), organisateur de l’événement.
Pourtant le marché des tests logiciels se porte bien. Alors que l’industrie IT, sous les coups de boutoir de la crise, chutait de 2 % au cours des 12 derniers mois, le marché mondial des tests logiciels progressait de 9 %. En France, il s’établit aujourd’hui à 0,49 milliard d’euros, selon le cabinet Pierre Audoin Consultants, en hausse de 1,4 % sur un an. Ce qui fait dire à Bernard Homès que ce segment devrait de plus en plus intéresser les SSII qui y trouvent "de beaux leviers de croissance”. D’autant que la France concentre une véritable expertise en matière de méthode formelle (technique de test reposant sur une logique mathématique), souligne Bernard Holmès.
15 % des défauts livrés dans les logiciels
Reste qu’aujourd’hui, l’heure est à l’urgence économique, souligne-t-il. Car, à force d’être considéré comme le “parent pauvre” des procédures de développement, la qualité des logiciels, eux-même de plus en plus complexes - notamment avec l'émergence du Cloud Computing (voir encadré) -, ne s’est que très peu améliorée. Alors que les coûts de développement ont continué quant à eux à croître. Et, dans ce total, les tests représentent entre 30 et 50% des coûts. Une part considérable qui pourtant ne se traduit pas dans la qualité intrinsèque des logiciels disponibles sur le marché. “Trouver et corriger des défauts sont les activités les plus chères du cycle de développement”, commente Bernard Homès.
Selon Bernard Homès, 15 % des défauts seraient en fait livrés en production. En clair, les procédures de tests ne détentent que 85 % des défauts. Pourquoi ? Le président du CFTL explique que cela provient en partie des activités de tests elles-mêmes. “La plupart des procédures de test ont une efficacité inférieure à 30 %, la plupart des formes de test s'exercent sur moins de 50 % du code et, enfin, il y a plus de défauts dans les scénarios de tests que dans le logiciel lui-même”. Sans compter les problèmes de cahier des charges (on parle aussi d’exigences), “rarement complets à plus de 50 %”.
Bref, résume-t-il, “nous devons améliorer la rentabilité de nos activités de développement et de tests. Cela nécessite une amélioration urgente et continue de nos processus”. Et d'admettre qu’aujourd’hui “le test reste encore de l’artisanat, avec ses chapelles et ses habitudes”. Habitudes auxquelles viennent se greffer la multiplication des tests - généralement à réaliser dans l’urgence - provoquée par une complexification grandissante des logiciels, comme l’indique Bernard Homès dans la vidéo ci-dessous.
Les tests, “en bonne sixième roue du carrosse”, arrivent en aval des développements. Une mauvaise prise en compte et intégration du test dans les processus de production - due notamment à la traditionnelle méthode de développement dite en V (ou en cascade) - , qui sous-entend que “l’on teste à partir du moment où le logiciel est déjà développé, une phase alors plus courte que celle des développements”, comme le précise Bernard Homès dans la vidéo ci-dessous.
Mais alors, qu’est ce qui pourrait faire changer les mentalités ? Ne plus considérer les tests comme le parent pauvre du développement, surtout au niveau financier, martèle Bernard Homès. Et inclure les tests dans les lignes budgétaires sur le long terme [et non plus de façon trimestrielle, imputé à plusieurs budgets, NDLR] de façon à les rendre plus rentable. “Nous espérons dans les années suivantes avoir un peu plus d’impact sur les responsables de développement, les responsables de DSI et peut-être les dirigeants des entreprises, de manière à ce qu’ils puissent rendre compte de l’impact des tests sur toute la durée d’utilisation du produit.”
Bref, l’industrie des tests logiciels doit un peu se moderniser pour poursuivre sa courbe de progression. Parmi les leviers présents sur beaucoup de lèvres lors de cette journée du test logiciel, l’agilité où le découpage en courtes itérations du projet de développement faciliterait l’intégration des phases de tests.
Le Cloud implique des tests récurrents |
Le Cloud a quelque peu modifié la donne en matière de test. D'abord parce qu'il amène de nouveaux outils au service du test. Ensuite, parce qu'en lui-même, il porte de nouvelles contraintes afin de vérifier les applications placées sur le nuage. “Pour le test de performances, le nuage offre par exemple des possibilités d’injection qui permettent de simuler la montée en charge via l’ajout massif d’utilisateurs et ce, de façon distribué, sur plusieurs datacenters -”, explique Bruno Duval, directeur du pôle services chez Neotys, société spécialisée dans les tests de performances d'applications Web. Mais surtout le test va permettre de répondre à une vraie problématique inhérente au Cloud : le SLA. “Aujourd’hui, très peu d’acteurs s’engagent sur la qualité de services. C’est souvent la politique du “best effort”. Mais cela ne suffit pas. Les tests peuvent répondre à cette problématique”, souligne-t-il. Côté méthode de test, le Cloud a introduit une nouvelle dimension : la régularité. De nature évolutive, de par sa capacité à monter et démonter des instances vitualisées, le Cloud implique une surveillance opérée à intermèdes réguliers, comme l’explique Bruno Duval dans la vidéo ci-dessous. |