Les défauts logiciels coûtent en moyenne 3,61 $ par ligne de code

Dans son rapport annuel sur la qualité structurelle des développements logiciels, Cast fait état de coûts de plus en plus élevés pour réparer les bugs et autres failles de sécurité dûs à une mauvaise écriture ou architecture du code. Une «dette technique» que l’étude estime plus élevée chez Java.

La qualité et la sureté du code seraient-elles les deux bêtes noires des développeurs ? C’est la question que l’on peut se poser à la lecture de la dernière étude (The Crash Report 2011 - 2012) de l’éditeur Cast, qui prend le pouls de la qualité structurelle (qualité de l’écriture du code) des développements de quelques 745 applications (365 millions de lignes de codes).
Et une donnée en particulier a de quoi étonner : le coût des défauts cachés - et donc non budgétisés - que l’entreprise doit corriger - ce que globalement Cast baptise dans son étude la «dette technique». Celle-ci s’élèverait ainsi à 3,61 dollars en moyenne par ligne de code. Un chiffre qui a de quoi effrayer, semble dire Cast qui rappelle que presque 15% des applications analysées comportaient plus d’un million de lignes de code, portant ainsi cette dette technique à ...3,6 millions de dollars pour une unique application. Le poids moyen de cette dette technique était de 2,82 dollars par ligne de code dans l’édition 2010 de cette même étude.


Dans cette édition 2011, les budgets des départements IT sont les premiers impactés par les défauts cachés - mais laissés en production : ainsi en moyenne 70% de la dette technique réside dans les processus de développement, à savoir la maintenabilité et la notion de transfert de code vers une autre équipe de développement. Deux phases très couteuses lorsqu’il s’agit de corriger les bugs ou autres failles de sécurité. Suivent ensuite les coûts liés aux conséquences et aux risques qui pèsent sur les activités et les métiers. 18% des coûts sont à imputer aux résolutions liées à la robustesse de l’application, 5% aux performances et 7% à la sécurité.

« La dette technique a une double conséquence : elle détourne l'argent de l'innovation pour financer la réparation de l’application. Il reste donc moins d'argent pour développer de nouvelles applications qui apporteraient un avantage concurrentiel, et le risque embarqué dans les nouvelles applications est plus grand. Cela fait certainement de la dette technique un enjeu capital à la fois pour les DSI et les directeurs généraux », affirme Bill Curtis, directeur scientifique, vice-président du centre de recherche de CAST et directeur du consortium pour la qualité logicielle (CISQ).

5,42 $ par ligne de code Java

Etonnement, Java demeure la technologie qui porte la dette technique la plus élevée selon l’analyse de Cast, avec un coût moyen de 5,42 $ par ligne de code. ABAP, le langage de SAP, et Cobol en revanche semblent offrir une qualité plus soutenue avec les coûts de réparation les moins élevés de l’étude. Cast indique que Cobol est la technologie qui affiche les scores les plus élevés en matière de sécurité. Un conséquence logique, selon l’éditeur, de l’utilisation du langage dans des milieux où la sécurité est un critère n°1, comme les applications bancaires et liées aux services financiers notamment. Toutefois, l’étude montre que cette qualité supposée de Cobol est mise à défaut lorsque le nombre de lignes de code de l’application augmente. Un manque de flexibilité du langage qui, à l’origine, n’a pas été conçu dans un esprit de modularité, comme c’est la cas avec les langages modernes, souligne Cast.

cap1jpg

La dette technique induite par les lignes de code Java-EE pourrait certainement résider dans la performance, note en substance Cast. Les principaux défauts trouvés dans le code Java ont ainsi un impact plus prononcé sur les performances de l’application.

Pour approfondir sur Langages