Alors que la plupart des entreprises sont en mesure de quantifier les coûts des interruptions de service de leurs applications, elles peinent à élaborer des dossiers pour justifier les investissements en qualité logicielle à réaliser pour prévenir ces défaillances. Les bugs en production sont rarement imputables à une mauvaise définition des besoins fonctionnels et sont trop souvent dus à des défauts techniques (non-fonctionnels) qui résultent d’une mauvaise conception ou d’un mauvais codage n’apparaissant clairement qu’après la mise en production.
Un risque majeur insidieux et onéreux…
La mauvaise qualité des applications est la cause de nombreux problèmes critiques qui mettent en danger le revenu : pannes des systèmes stratégiques, données corrompues, failles de sécurité, non-conformité avec la réglementation, etc. Ces problèmes échappent généralement à la détection lors de la phase de tests. De ce fait, les problèmes de performance métier dus à une qualité interne des applications insuffisante réduisent de façon conséquente la valeur économique générée par l’entreprise et augmente les dépenses IT durant toute la vie d’une application.
… transformable en opportunité
Cinq domaines critiques en termes d’impact sur le revenu ont été identifiés pour évaluer la qualité interne d’une application. L’amélioration de ces « facteurs de santé » impacte directement l’augmentation de la productivité métier, l’accélération de mise sur le marché, l’amélioration de la satisfaction utilisateurs et la réduction des dépenses IT . C’est une situation gagnant-gagnant : des bénéfices métier conséquents tout en réduisant les dépenses IT.
En mesurant et en contrôlant les facteurs de santé dès le début du cycle de vie de l’application, l’entreprise garantit aux divisions métier une livraison de qualité. En outre, les problèmes de qualité des applications sont découverts avant qu’ils ne se transforment en incidents majeurs lors du déploiement.
Et les causes de ces défauts sont identifiées et peuvent être supprimées une bonne fois pour toutes, évitant toute interruption importante de l’activité et la frustration des clients. Une baisse de 10% de la performance des applications peut rapidement se transformer en une perte de productivité d’un demi million d’euros en un trimestre. Si des améliorations de la qualité interne génèrent une réduction du rework de 25 % par an et permettent aux équipes de maintenance de réduire de 60 % le temps passé à déchiffrer le code, cela permet d’affecter les 75 000 € économisés par application à la création de nouvelles fonctionnalités.
Des méthodes concrètes existent pour calculer les coûts métier et informatiques inhérents à une baisse de la qualité des applications. En mesurant et en améliorant de façon proactive les facteurs de santé, les équipes informatiques peuvent améliorer notablement la qualité et la valeur business d’une application, tout en réduisant les coûts. Lorsque des pertes dues à une faible qualité des applications ne sont évaluées qu’en regard des coûts de développement ou de maintenance, leur impact demeure invisible. Toutefois, lorsqu’elles sont évaluées par rapport aux coûts et aux pertes d’opportunités « business », investir dans la qualité des applications devient une évidence.
Les activités en ligne prenant une part de plus en plus importante dans l’activité des entreprises, les préoccupations sur la qualité des applications métier sont passées du service informatique au comité de direction. Les indisponibilités d’un site d’e-commerce se mesurent en ventes perdues. L’échec de l’enregistrement d’un client peut être mesuré en termes de défection de client. Des données financières corrompues représentent autant de frais de retraitement. Ces trois incidents se mesurent également en détérioration de l’image de l’entreprise.
Les problèmes le plus souvent à l’origine de ces catastrophes ne sont pas des défauts de logique fonctionnelle (« ce que l’application est supposée faire »). Ces problèmes sont généralement provoqués par les défauts non fonctionnels causés par une mauvaise conception ou une mauvaise programmation (« la façon dont l’application le fait »).
La plupart des défauts fonctionnels sont détectés pendant la phase de tests. Les défauts non fonctionnels sont souvent invisibles jusqu’à ce qu’ils soient révélés au cours d’opérations courantes et entraînent des incidents critiques. Comme Diomidis Spinellis le précise dans son ouvrage récent, Code Quality, « manquer de satisfaire à une exigence non fonctionnelle peut être critique, voire catastrophique… les exigences non fonctionnelles sont parfois difficiles à vérifier. Nous ne pouvons pas créer un test pour vérifier la fiabilité du système ».
Alors que la plupart des entreprises sont en mesure de quantifier les coûts des pannes de leurs applications, elles peinent à élaborer des dossiers pour justifier les investissements en qualité logicielle à réaliser pour empêcher ces défaillances.
Cet article expose une méthode permettant d’estimer et de mesurer les conséquences des améliorations de la qualité sur la valeur métier. Estimer les bénéfices qu’une organisation réalisera en améliorant la qualité interne d’une application nécessite une connaissance approfondie du métier que l’application supporte.
Partager |
|
![]() Dr. Bill Curtis, Directeur du nouveau Consortium international sur la Qualité Logicielle (CISQ) Co-auteur du CMM & Business Process Maturity Model. |



