La valeur business de la qualité logicielle d une application

Documents pareils
La société CAST a conçu une série de rapports visant à dégager les tendances actuelles relatives à la qualité structurelle

L Application Performance Management pourquoi et pour quoi faire?

Garantir une meilleure prestation de services et une expérience utilisateur optimale

WHITEPAPER. Quatre indices pour identifier une intégration ERP inefficace

Tirez plus vite profit du cloud computing avec IBM

Prise en charge des cinq plus gros défis du service Cloud

Les plates-formes informatiques intégrées, des builds d infrastructure pour les datacenters de demain

Stratégie nationale en matière de cyber sécurité

LIVRE BLANC. Mise en œuvre d un programme efficace de gestion des vulnérabilités

Pour les entreprises de taille moyenne. Descriptif Produit Oracle Real Application Clusters (RAC)

Application Portfolio Management (APM) : Redonner de la valeur à l entreprise

Risques liés aux systèmes informatiques et de télécommunications

Comment mettre en oeuvre une gestion de portefeuille de projets efficace et rentable en 4 semaines?

Optimisez vos processus informatiques, maximisez le taux de rendement de vos actifs et améliorez les niveaux de service

Impartition réussie du soutien d entrepôts de données

Axe de valeur BMC Identity Management, la stratégie d optimisation de la gestion des identités de BMC Software TM

Accenture Software. IDMF Insurance Data Migration Factory. La migration en toute confiance de vos données d assurance

IBM Tivoli Monitoring, version 6.1

IFT3913 Qualité du logiciel et métriques. Chapitre 2 Modèles de processus du développement du logiciel. Plan du cours

Processus d Informatisation

DOSSIER SOLUTION Amélioration de la planification de la capacité à l aide de la gestion des performances applicatives

ITIL V3. Transition des services : Principes et politiques

Intelligence d affaires nouvelle génération

HySIO : l infogérance hybride avec le cloud sécurisé

Protéger et héberger vos donnés métiers : les tendances cloud et SaaS au service des entreprises

MANQUEMENT CONTRACTUEL DANS L INFORMATIQUE GESTION EXPERTE DES INFORMATIQUES

OPTIMISER SON PROCESSUS DE TEST AVEC UNE APPROCHE BOITE GRISE

Microsoft IT Operation Consulting

agility made possible

Modernisation et gestion de portefeuilles d applications bancaires

Suite NCR APTRA. La première plateforme logicielle libre-service financière au monde.

Mesurer le succès Service Desk Guide d évaluation pour les moyennes entreprises :

Critères de choix pour la

Est-il possible de réduire les coûts des logiciels pour mainframe en limitant les risques?

Livre blanc. La sécurité de nouvelle génération pour les datacenters virtualisés

s é c u r i t é Conférence animée par Christophe Blanchot

Trois méthodes éprouvées pour obtenir un meilleur retour sur investissement avec le data mining

Ne laissez pas le stockage cloud pénaliser votre retour sur investissement

Partie I Le Management des Systèmes d Information : un défi pour les PME

Comment choisir la solution de gestion des vulnérabilités qui vous convient?

IBM Tivoli Compliance Insight Manager

Tout sur le processus CPQ Configure Price Quote

Le ROI du marketing digital

L assurance et le risque Data. Clusir 25 avril 2012 Lyon François Brisson - Hiscox France

La gestion des données de référence ou comment exploiter toutes vos informations

Méthodes Agiles et gestion de projets

Valeur métier. Réduction des coûts opérationnels : Les coûts opérationnels ont été réduits de 37 %. Les systèmes intégrés comme IBM

ITIL Examen Fondation

Autoline Drive. Séduisez, convertissez et fidélisez un nombre accru de clients.

Découvrir les vulnérabilités au sein des applications Web

Groupe Eyrolles, 2006, ISBN :

Gestion de projets et de portefeuilles pour l entreprise innovante

RÉUSSIR L AUTOMATISATION DU PROCESSUS DE TEST FONCTIONNEL

1 Les différents types de maintenance

1. Logiciel ERP pour les PME d ici Technologies Microsoft Modules disponibles Finance Analyses & BI

L application doit être validée et l infrastructure informatique doit être qualifiée.

Protection pour site web Sucuri d HostPapa

Gé nié Logiciél Livré Blanc

Cisco Unified Computing Migration and Transition Service (Migration et transition)

AUGMENTER L EFFICACITÉ OPÉRATIONNELLE ET FIDELISER LA CLIENTÈLE

Protection des infrastructures critiques vitales contre les cyber-attaques. Vers une culture de sécurité

Business Intelligence et Data Visualisation

IBM Maximo Asset Management for IT

Identification, évaluation et gestion des incidents

Introduction Le phénomène que représentent les Services de Gestion des Documents Managed Document Services (MDS) Une définition du concept

CA Mainframe Chorus for Security and Compliance Management version 2.0

Une nouvelle enquête montre un lien entre l utilisation du Cloud Computing et une agilité accrue de l entreprise ainsi qu un avantage concurentiel.

Des données à la connaissance client. A la découverte de la plateforme de connaissance client knowlbox

CONDITIONS GÉNÉRALES D ACCÈS ET D UTILISATION (C.G.A.U.) DU SERVICE BIXI PAR LES ABONNÉS 1 AN OU 30 JOURS ARTICLE 1 OBJET DU SERVICE BIXI

Plan de cours Programme de leadership en entreprise pour les conseillers juridiques d entreprise

La Tierce Maintenance Applicative ERP De quoi s agit-il? Est-ce le bon choix pour vous?

Transformation IT de l entreprise BPM ET APPROCHE MÉTIER

Naturellement SaaS. trésorier du futur. Livre blanc. Le futur des trésoriers d entreprise peut-il se concevoir sans le SaaS?

CREATIVE WORK VALORISATION DE LA PI

LeaderSHIP BPM TIBCO iprocess Suite The Forrester Wave : Human-Centric Business Process Management Suites, Q TIBCO Software Inc

La Gouvernance Des Données : Une Approche De Valeur Conduite Par Les Métiers

Sécurité. Tendance technologique

Ligne directrice sur les simulations de crise à l intention des régimes de retraite assortis de dispositions à prestations déterminées

Mettre en place une infrastructure Web nouvelle génération avec Drupal et Acquia

3 - Sélection des fournisseurs Marche courante Conditionnement Transport Livraison... 5

Utilisation de l automatisation du marketing pour augmenter le retour sur investissement du CRM

Conception d une infrastructure «Cloud» pertinente

Livre blanc. Au cœur de Diskeeper 2010 avec IntelliWrite

Sécurité sur le web : protégez vos données dans le cloud

Management de la sécurité des technologies de l information

CLOUD PUBLIC, PRIVÉ OU HYBRIDE : LEQUEL EST LE PLUS ADAPTÉ À VOS APPLICATIONS?

étendre l authentification unique Web à des environnements Cloud et mobiles agility made possible

Interpréter correctement l évolution de la part salariale.

Conditions d usage du service. «MS Dynamics CRM On Demand» V1.4

Une représentation complète

NORME INTERNATIONALE D AUDIT 330 REPONSES DE L AUDITEUR AUX RISQUES EVALUES

Le nouvel espace de travail : Prise en charge du modèle BYOD («Bring your own device»)

ISO/CEI Technologies de l information Gestion des actifs logiciels. Partie 1: Procédés et évaluation progressive de la conformité

Améliorer la Performance des Fournisseurs

Gestion des services Informatiques ITIL Version 3, Les fondamentaux Conception des Services

La situation du Cloud Computing se clarifie.

Novembre Regard sur service desk

Yphise optimise en Coût Valeur Risque l informatique d entreprise

CA Mainframe Application Tuner r8.5

Transcription:

White Paper Octobre 2009 A C HIEVE I NSIGHT. D ELIVER E XCELLENCE. La valeur business de la qualité logicielle d une application Lorsqu une application critique subit une panne, la perte financière est importante et immédiate. Les applications de mauvaise qualité provoquent des dégâts majeurs très visibles ; elles causent également une baisse constante de la performance métier, certes moins visible, mais qui alimente la perte de revenu. Une amélioration mineure de la qualité peut se traduire par des gains significatifs. Pourtant les dirigeants peinent à élaborer un dossier pour justifier les investissements en qualité logicielle. Ce document présente une méthode de mesure de l impact économique induit par l amélioration de la qualité logicielle. Dr. Bill Curtis Vice-Président Sénior et Directeur Scientifique, CAST Co-auteur du CMM & Business Process Maturity Model, Sommité reconnue en qualité logicielle

Page 1 Résumé Dr. Bill Curtis, Vice-Président Senior et Directeur Scientifique de CAST, présente une approche quantitative permettant de mesurer en quoi l amélioration de la qualité des applications impacte les bénéfices et la réduction des coûts informatiques. Le constat 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, ils sont trop souvent dus à des défauts techniques (non-fonctionnels) qui résultent d une mauvaise conception et d un mauvais codage et qui ne deviennent visibles qu après la mise en production. 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és avec la réglementation, etc. Ces problèmes échappent généralement à la détection lors de la phase de tests. Résultat : les problèmes de performance métier dus à une qualité logicielle insuffisante réduisent de façon conséquente la valeur économique et augmentent les dépenses informatiques durant toute la vie d une application. La solution Grâce à une recherche intensive et à son expérience pratique acquise auprès de ses 650 clients dans le monde entier, CAST a identifié les cinq domaines clé de qualité logicielle d une application les plus critiques en terme d impact sur le revenu, appelés facteurs de santé. L amélioration de ces facteurs de santé a un impact direct sur l augmentation de la productivité métier, sur l accélération de la mise sur le marché, sur l amélioration de l expérience client et la réduction des dépenses informatiques. C est une situation gagnant-gagnant : des bénéfices métier conséquents tout en réduisant les dépenses informatiques.

Page 2 Résumé (suite) En mesurant et en contrôlant les facteurs de santé dès le début du cycle de vie de l application, vous garantissez aux métiers une livraison de qualité. Les problèmes de qualité des applications sont découverts avant qu ils ne se transforment en incidents majeurs lors de la mise production; Les causes de ces défauts sont identifiées et peuvent être supprimées une bonne fois pour toutes, évitant ainsi toute interruption importante de l activité et la frustration des clients. Une baisse de 10% de la performance d une application peut rapidement se chiffrer en une perte de productivité d un demi-million d euros en un trimestre. Si des améliorations de la qualité logicielle 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. Clés à retenir Ce document propose des méthodes concrètes pour calculer les coûts métier et informatiques induits par 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 fortement améliorer 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 est invisible. Toutefois, lorsqu elles sont évaluées par rapport aux coûts et aux pertes d opportunités commerciales, investir dans la qualité des applications devient une évidence. Les organisations informatiques peuvent volontiers utiliser les exemples détaillés fournis dans ce livre blanc pour créer un dossier d investissement irréfutable afin d améliorer la qualité logicielle de leurs applications critiques.

Page 3 Sommaire I. Pourquoi la qualité logicielle d une application métier est-elle importante? II. Comment mesurez-vous la qualité logicielle d une application métier? III. Comment les facteurs de santé affectent-ils la valeur métier? IV. Réduire les risques métier V. Maximiser l expérience client VI. Augmenter l agilité métier VII. Améliorer la productivité métier VIII. Augmenter la contribution de l informatique IX. Un exemple de perte de valeur directement lié à une faible qualité logicielle X. La valeur correspondant à l amélioration de la qualité logicielle des applications I. Pourquoi la qualité logicielle d une application métier est-elle importante? Les activités en ligne prenant une part de plus en plus importante dans l activité des entreprises, les préoccupations concernant 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 défection de clients. Des données financières corrompues peuvent être mesurées en frais de retraitement. Ces trois incidents se mesurent également en détérioration de l image de l entreprise. Le type de 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 provoqués par les défauts non-fonctionnels résultant d une mauvaise conception et d 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 sous-jacents 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, «ne pas 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. Ce document présente 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é logicielle d une application nécessite une connaissance approfondie du métier que l application supporte. II. Comment mesurez-vous la qualité logicielle d une application métier? La qualité logicielle d une application correspond, entre autres, à la robustesse de son architecture et au fait que sa conception suive les bonnes pratiques de programmation. Elle ne peut être mesurée au moyen de tests conçus pour

Page 4 CAST a identifié les cinq domaines clé de qualité logicielle d une application les plus critiques en terme d impact sur le revenu. vérifier la justesse fonctionnelle d une application : l évaluation de la qualité logicielle concerne les caractéristiques non fonctionnelles d une application - la structure interne et l ingénierie du code. Grâce à une recherche intensive et à son expérience de l industrie, CAST a identifié les cinq domaines clé de qualité logicielle d une application les plus critiques en terme d impact sur le revenu. Ces cinq points, ou facteurs de santé sont comparables, mais pas identiques, aux mesures qualitatives d un logiciel définies dans la norme ISO 9126. Chacun de ces cinq facteurs peut être évalué en mesurant de nombreuses caractéristiques du logiciel et en agrégeant les résultats dans un facteur de santé récapitulatif (cf. tableau 1). Ces facteurs de santé résument la qualité interne d un logiciel à un niveau pouvant être lié aux résultats et à la valeur métier. Ces facteurs de santé et certains des bénéfices métier sur lesquels ils influent sont résumés dans le tableau 1. Tableau 1 - Les facteurs de santé et leurs avantages métier Health Factor Description Example business benefits Transférabilité Évolutivité Robustesse Performance Sécurité Caractéristiques permettant à de nouvelles équipes ou à de nouveaux entrants de comprendre et de travailler rapidement sur une application Caractéristiques qui rende une application plus simple et plus rapide à modifier Caractéristiques affectant la stabilité d une application et la probabilité d introduire des défauts en la modifiant Caractéristiques affectant la performance d une application Caractéristiques affectant la capacité d une application à prévenir toute intrusion non autorisée Réduit l inefficacité due au transfert entre les équipes Réduit les courbes d apprentissage Réduit la dépendance envers les prestataires Améliore l agilité métier en répondant au marché ou aux clients Réduit le coût de possession en réduisant l effort de modification Améliore la disponibilité des services métier Réduit le risque de pertes dû à un dysfonctionnement opérationnel Réduit le coût de possession d une application en réduisant le rework Réduit le risque de perdre des clients à cause d un service de faible qualité ou de temps de réponse dégradés Améliore la productivité des utilisateurs de l application Augmente la rapidité de prise de décisions et de transmission d informations Améliore la capacité d adapter une application à la croissance de l activité d une entreprise améliore la protection des informations sensibles réduit le risque de perte de confiance des clients ou de dommages financiers augmente la conformité réglementaire en matière de sécurité

Page 5 La qualité logicielle des applications métier est cruciale pour obtenir de bons résultats informatiques qui, à leur tour, affectent un grand nombre de résultats métier indispensables pour réaliser les objectifs business. III. Comment les facteurs de santé affectent-ils la valeur métier? Les coûts de la mauvaise qualité logicielle d une application peuvent être évalués par rapport à cinq objectifs business principaux : Réduire les risques Augmenter l agilité Améliorer la productivité Optimiser la contribution de l informatique au métier Améliorer l expérience client La qualité logicielle des applications métier est cruciale pour obtenir de bons résultats informatiques. Ces résultats, à leur tour, affectent un grand nombre de résultats métier indispensables pour réaliser les objectifs business. Cette chaîne de création de valeur entre les facteurs de santé et les objectifs business est représentée de droite à gauche sur la figure 1. Ces relations sont multiples puisque les facteurs de santé et les objectifs informatiques interagissent de plusieurs façons avec les résultats et les objectifs business. Objectifs business Minimiser les risques Augmenter l agilité Augmenter la productivité Optimiser la contribution de l informatique Résultats métier Maximiser la disponibilité métier Minimiser la dégradation du service Minimiser la perte de revenu Minimiser les pénalités Minimiser les coûts des clients Minimiser la reconstruction de données Minimiser les pannes involontaires Maximiser la protection des informations Maximiser la confiance des clients Maximiser la fidélité client Maximiser la conformité réglementaire Accélérer les mises sur le marché Améliorer le temps de réponse aux clients Permettre la personnalisation de masse Soutenir la croissance de l activité Accélérer la réactivité Accélérer la récupération des informations Augmenter les nouvelles fonctionnalités Augmenter la disponibilité des ressources Réduire le coût de possession Réduire les coûts opérationnels Réduire la dépendance au fournisseur Objectifs de l informatique Réduire les défauts existants Réduire les nouveaux défauts Améliorer la stabilité Garantir l intégrité architecturale Réduire les défauts de sécurité Garantir la conformité avec les règles de programmation Améliorer la performance Réduire la complexité du code Optimiser l évolutivité Réduire les efforts de modification Réduire le rework Améliorer la lisibilité du code Réduire les courbes d apprentissage Faciliter le transfert entre équipes Facteurs de santé Robustesse Sécurité Performance Évolutivité Transférabilité Figure 1. Relations entre les facteurs de santé et les objectifs business

Page 6 Nous n avons pas besoin de modèles sophistiqués pour démontrer le lien entre la qualité d une application et les objectifs business. Des équations simples suffisent. La qualité d une application peut être évaluée par rapport à un ensemble d objectifs plus spécifiques qui découlent de chaque objectif business. Par exemple, les risques peuvent être composés de : pannes des systèmes critiques, données corrompues, violations de la sécurité, et non-conformités avec la réglementation. Chacun de ces objectifs plus spécifiques peut avoir un ensemble unique de résultats qui l affecte. Les résultats informatiques varieront en fonction des résultats spécifiques qu ils impactent le plus. La figure 2 présente une analyse détaillée de la façon dont ces facteurs de santé affectent les quatre sous-objectifs qui composent l objectif de réduction des risques. Ce schéma montre bien que la qualité logicielle d une application a un impact direct sur les résultats business et sur la réalisation de ses objectifs. Même sans créer un modèle quantitatif des relations dans ce schéma, il est possible d utiliser des équations simples illustrant comment la qualité d une application peut affecter la valeur économique dérivée d une application. Objectifs business Résultats métier Objectifs de l IT Facteurs de santé Minimiser les risques Interruptions de service Données corrompues Violations de la sécurité Non-conformités réglementaires Maximiser la disponibilité métier Minimiser la dégradation du service Minimiser la perte de revenu Minimiser les pénalités Minimiser les coûts des clients Minimiser la reconstruction de données Minimiser les pannes involontaires Maximiser la protection des informations Maximiser la confiance des clients Maximiser la fidélité client Maximiser la conformité réglementaire Réduire les défauts existants Réduire les nouveaux défauts Améliorer la stabilité Garantir l intégrité architecturale Réduire les défauts de sécurité Garantir la conformité avec les règles de programmation Améliorer la performance Optimiser l évolutivité Robustesse Sécurité Performance Évolutivité Figure 2. Relation entre les facteurs de santé et les sous-objectifs de réduction du risque

Page 7 Le coût lié à une mauvaise qualité logicielle peut être exprimé en termes de perte de revenu connu, actuel ou futur, de coût de sousutilisation des employés, de pénalités et d autres coûts basés sur des données métier historiques. Les sections suivantes présentent des équations qui démontrent comment utiliser ces relations pour exprimer la valeur économique de la qualité logicielle des applications. Ces équations ne sont pas présentées sous forme de véritables analyses ROI puisque nous n incluons pas le coût de l argent, les périodes de recouvrement des investissements et d autres éléments des modèles ROI classiques. Elles représentent les pertes liées à chaque objectif business et illustrent comment la mauvaise qualité logicielle des applications se traduit en une perte de revenu et en une augmentation des coûts. IV. Réduire les risques métier Les risques sont souvent la façon la plus simple de quantifier les avantages qualitatifs. Le coût de la non-qualité peut être exprimé en termes de perte de revenu connu, actuel ou futur, de coût de sous-utilisation des employés, de pénalités et d autres coûts basés sur des données métier historiques. Différents types de risques entraînent différents types de pertes. Les pannes qui mettent fin aux transactions commerciales Considérons une évaluation simplifiée de la perte due à l interruption de service d une application commerciale telle qu un système de réservation ou de commande client. Les coûts engendrés impliquent une perte de revenu, un effort de l entreprise pour récupérer et réactiver les transactions, une saturation du service clients et les coûts associés pour gérer les relations clients, des pénalités et d autres coûts dépendant du secteur d activité. Bien que l ensemble de ces coûts ne surviennent pas à chaque panne, ils doivent être pris en considération pour s assurer qu ils ne restent pas dissimulés dans les activités courantes. Perte = ((revenu moyen par minute) x (nombre de minutes d indisponibilité)) + coûts pour réactiver l activité + ((minutes supplémentaires de service client) x ( par minute) + future perte de revenu due à la défection des clients + pénalités, le cas échéant + autres coûts liés)

Page 8 Bien que coûteux, les coûts identifiables des problèmes de sécurité sont souvent moins importants que la perte de revenu due à la défection de clients qui se tournent vers la concurrence qui offre, selon eux, une meilleure sécurité. Données corrompues Les coûts liés aux données corrompues comprennent la recréation de données exactes, le redéveloppement ou la correction de rapports incorrects et toutes les pénalités résultant de l utilisation ou du reporting de données inexactes. Le coût de la corruption de données est déterminé par le temps écoulé avant que les données incorrectes ne soient détectées puisque, dans de nombreux cas, cela augmente le travail de correction. Le business supporte la plupart des frais engendrés par la corruption de données, soit en ayant à corriger les données, soit en subissant des interruptions d activité pendant que l informatique restaure les données correctes. Perte = coût de la reconstruction des données + coût de la recréation de rapports corrects + pénalités dues à des données incorrectes + autres coûts Violation de la sécurité Les défauts dans l architecture d une application ou dans le code créent souvent des vulnérabilités que les hackers et les cybercriminels exploitent pour pénétrer dans le système. Ces coûts peuvent inclure ceux liés au vol d informations sur l entreprise ou sur les clients, à la réparation des dommages malveillants, à l information des clients sur d éventuelles données compromises, aux améliorations de la sécurité des systèmes et des processus métiers, aux pénalités et aux futures pertes de revenu dues à la défection des clients. Bien que lourds, les coûts identifiables des problèmes de sécurité sont souvent moins importants que la perte de revenu due aux clients qui n utilisent plus les applications ou qui se tournent vers la concurrence qui offre, selon eux, une meilleure sécurité. Perte = coût des ressources volées + coût de la correction des données, des rapports ou des comptes + coût de l information aux clients + coût de l amélioration de la sécurité + futures pertes de revenu dues à la défection des clients + pénalités, le cas échéant

Page 9 Plus l interface est confuse, plus le nombre d employés dédiés à l assistance à la vente doit être important. La facilité d utilisation et la réactivité contribuent à l augmentation du revenu et à la réduction des coûts du service clientèle Non-conformité avec la réglementation La faiblesse du code d une application peut placer l entreprise en non-conformité avec les normes de l industrie ou les réglementations légales. Alors que la non-conformité peut engendrer des pénalités financières, le non-respect des réglementations telles que Sarbanes-Oxley peut avoir des répercussions pénales. Perte = coût des pénalités pour non-conformité + coût de la mise en conformité du système V. Maximiser l expérience client Comme de plus en plus de transactions sont réalisées en ligne, les applications métier deviennent la vitrine de l entreprise. L expérience du client avec la société se transforme en expérience de la facilité d utilisation et de la performance des applications. Les interfaces utilisateurs confuses, les sites internet labyrinthiques et les temps de réponses incroyablement lents frustrent les clients. Au minimum ces problèmes réduisent le nombre de transactions des clients, dans le pire des cas, ces derniers se tournent vers la concurrence. En plus du problème de fidélisation, des clients non autonomes engendrent davantage de frais par transaction car ils appellent le support client pour réaliser des achats qui auraient pu l être en ligne. Plus l interface est confuse et plus le nombre d employés dédiés à l assistance à la vente doit être important. Par exemple, lorsque le temps de réponse du système est lent, les clients cliquent souvent sur des boutons qui peuvent être interprétés comme des commandes en attendant les pages à afficher. Ces entrées incorrectes nécessitent du personnel pour corriger et réinitialiser un compte client. La facilité d utilisation et la réactivité contribuent à l augmentation du revenu et à la réduction des coûts du service clientèle. Perte = future perte de revenu due à la défection des clients + future perte de revenu due à la diminution des transactions des clients fidèles + coût des transactions réalisées au niveau du service clientèle et non en ligne + coût des appels au service clientèle liés à des difficultés d utilisation en ligne.

Page 10 Plus l architecture ou le code d une application est complexe sans raison, plus il est long d ajouter ou de modifier une fonctionnalité, de vérifier sa conformité, et de la livrer. Améliorer l agilité et réduire le risque engendrent des bénéfices immédiats. VI. Augmenter l agilité métier Les technologies de communication modernes (réseaux cellulaires, Internet, etc.) ont accéléré le rythme de l économie. La concurrence a ainsi réduit le temps de réaction face aux demandes des clients et aux évolutions du marché. L agilité d une entreprise à répondre rapidement à ces besoins dépend strictement de la qualité technique de ses applications. Plus l architecture ou le code d une application est complexe sans raison, plus il est long d ajouter ou de modifier une fonctionnalité, de vérifier sa conformité, et de la livrer. Pire, une complexité inutile induit plus d erreurs et de rework qui allongent les temps de développement et de livraison des nouvelles fonctionnalités au métier. Perte = Perte de revenu liée à une offre tardive par rapport à l intention d achat du client + perte de revenu due à des concurrents plus rapides + future perte de revenu due à la défection de clients + Perte de profit due à l affaiblissement du bénéfice du premier entrant + diminution de l économie d échelle due à la perte de parts de marché L impact de la qualité logicielle d une application sur l agilité métier est exprimée en termes de coût d opportunités perdues. Cela représente la perte de revenu ou de parts de marché subie lorsque les concurrents sont en mesure de répondre plus rapidement ou lorsque la réponse arrive trop tard par rapport aux intentions d achat du client. Même si l agilité ne remet pas en cause la viabilité et la croissance à long terme d une entreprise - car améliorer l agilité et réduire le risque engendrent surtout des bénéfices immédiats -, des améliorations de l agilité métier affectent néanmoins l aptitude d une société à exécuter sa stratégie et à optimiser ses résultats à long terme.

Page 11 Les pannes ne se contentent pas d affecter le revenu. Elles ont des conséquences néfastes sur la productivité et sur le moral des équipes informatiques. VII. Améliorer la productivité métier L une des principales raisons d être des applications étant d améliorer la productivité métier, les défauts provoquant des pannes ou une dégradation de la performance privent l organisation des bénéfices de ses investissements, à la fois dans le développement de ces applications et dans la main d œuvre qui les utilisent. Les pertes entraînées par des pannes ont été couvertes dans la section «risques métier». On ne traitera ici que l impact de la productivité sur les employés et sur la génération de revenu. Les coûts d une perte de productivité sont généralement calculés en termes d heures supplémentaires pour terminer le travail ou de pertes d opportunités commerciales. Même si les heures supplémentaires n ont pas été rémunérées, l impact sur le moral du personnel est susceptible de réduire encore davantage la productivité ou de provoquer des départs volontaires. En outre, une réduction de la productivité engendre des retards dans la réalisation des tâches, qui implique d autres coûts tels que des pénalités de retard. Perte = [(1 ( production réduite en raison d une mauvaise performance production moyenne pour une performance normale)) x nombre d employés concernés x coût horaire moyen x nombre d heures de mauvaise performance] + [(1 ( baisse des revenus due à une diminution de la performance revenu moyen pour une performance normale)) x performance x revenu moyen de l heure] + coûts du travail retardé VIII. Augmenter la contribution de l informatique Pour les entreprises les plus grandes, l informatique représente un pourcentage fixe du budget global, généralement de 4 à 4,5 %. Les économies réalisées sont donc généralement transformées en ressources disponibles pour des investissements supplémentaires et non pas utilisées comme un retour de fonds. La proposition de valeur devient alors «comment obtenir davantage de fonctionnalités métier pour notre investissement fixe?»

Page 12 Des études ont prouvé que 50 % des travaux de maintenance sont consacrés à comprendre le code plutôt qu à ajouter des fonctionnalités. Réduire la complexité du code peut réduire le temps nécessaire pour le comprendre, et permettre de consacrer plus de temps au développement de fonctionnalités très utiles. Généralement, environ la moitié du budget informatique est consacré au développement et à la maintenance des applications. La qualité logicielle des applications métier contrôle étonnamment une grande partie de ces coûts et dicte le volume des ressources à affecter au développement des applications. Par exemple, chaque heure passée à régler des problèmes de qualité est une opportunité perdue de fournir de la valeur supplémentaire. De même, des études ont prouvé que 50 % des travaux de maintenance sont consacrés à comprendre le code plutôt qu à ajouter des fonctionnalités. Réduire la complexité du code peut réduire le temps nécessaire pour le comprendre, et permettre de consacrer plus de temps au développement de fonctionnalités très utiles. Perte = ((pourcentage annuel de temps passé sur le rework) x (coût moyen charges comprises d un développeur) x (nombre de développeurs)) + ((Pourcentage annuel de temps passé à modifier ou à améliorer le code existant) x (0,5 soit le temps passé à comprendre)) x (coût moyen charges comprises d un développeur) x (nombre de développeurs)) IX. Un exemple de perte de valeur directement lié à une faible qualité logicielle En utilisant la formule relative aux pannes des applications qui interrompent les transactions, considérons les coûts pour 1 heure de panne d une application qui rapporte 120 à la minute (7 200 de l heure). Outre la perte de revenu, l entreprise dépensera 1 000 en heures de travail pour vérifier, corriger ou régénérer des transactions partiellement réalisées et pour vérifier que le système fonctionnera correctement une fois remis en ligne. Le service clientèle a subi 250 minutes supplémentaires d appels à 2 la minute. Des analyses de Business Intelligence ont montré que 20 clients n ont plus pris contact avec la société après la panne, le revenu généré par ces clients étant de 150 par an. Heureusement, cette panne n a engendré aucune pénalité. Le coût total de cette panne est estimé à : Perte = ((60 minutes) x (120 la minute)) + 1000 de frais de réactivation + 500 de frais de service clientèle + 3000 de pertes de revenu clients cette année Perte = 11700

Page 13 Une baisse de 10 % de la performance d une application peut rapidement se chiffrer en un demi-million d euros de perte de productivité en un trimestre. Si la société subit une panne d 1 heure de cette application une fois par trimestre, la perte annuelle totale sera de 46800, les coûts informatiques pour réparer la cause de la panne et retester l application n étant pas inclus. Ces coûts informatiques seront considérés comme du rework dans un prochain calcul car ils réduisent l aptitude de l informatique à contribuer au business. Considérons ensuite qu outre des pannes, la performance de l application diminue de 10 % en raison de mauvaises procédures d accès à la base de données qui réduisent sa capacité à traiter un nombre croissant de transactions. Considérons également que cette application occupe 100 employés à 25 de l heure. Cette perte de productivité est calculée à la fois comme une perte de revenu et comme une perte de valeur salariale. Le coût par trimestre de ces problèmes de qualité logicielle de l application est estimé à : Perte = ((0,1 soit le pourcentage de baisse de productivité) x (100 employés) x (25 de l heure) x (500 heures par trimestre)) + ((0,1 soit le pourcentage de baisse de productivité) x (7200 de l heure) x (500 heures par trimestre)) Perte = 485000 par trimestre Ce chiffre peut être réduit par des heures supplémentaires non rémunérées pour terminer le travail. Néanmoins, une faible qualité logicielle prive l organisation d une partie conséquente du retour sur investissement attendu (logiciel et humain). Enfin, considérons le coût de l amélioration et de la maintenance de cette application. Si l on considère que 5 développeurs travaillent à plein temps sur cette application pour un coût annuel charges comprises de 100 000 chacun. Ils passent environ 35 % de leur temps à supprimer les défauts et 50 % de leur temps à maintenir et à améliorer le code existant. La non-contribution de l informatique à la valeur business est estimée à : Perte = ((0,35 soit le pourcentage de temps passé sur le rework) x (100000 de coûts salariaux) x (5 développeurs)) + (((0,5 soit le pourcentage de temps passé à modifier le code) x (0,5 soit le pourcentage de la maintenance passé à comprendre le code)) x (100000 de coûts salariaux)) x (5 développeurs)) Perte = 300000

Page 14 Lorsque des pertes dues à une faible qualité des applications ne sont évaluées que par rapport aux coûts de développement ou de maintenance, l impact des pertes est invisible. Toutefois, lorsqu elles sont évaluées par rapports aux dépenses et aux pertes d opportunités commerciales, un dossier d investissement irréfutable peut être élaboré pour la qualité logicielle. La perte due aux risques de pannes, la perte de productivité métier et la perte de contribution de l informatique attribuée à la mauvaise qualité structurelle des applications est ainsi très élevée. Proportionnellement à l importance de ces pertes, les améliorations de la qualité des applications offrent des avantages conséquents. Lorsque des pertes dues à une faible qualité des applications ne sont évaluées que par rapport aux coûts de développement ou de maintenance, l impact des pertes est invisible. Toutefois, lorsqu elles sont évaluées par rapport aux dépenses et aux pertes d opportunités commerciales, un dossier d investissement irréfutable peut être élaboré pour la qualité logicielle. X. La valeur correspondant à l amélioration de la qualité logicielle des applications Améliorer la qualité des applications comprend deux éléments ; la qualité externe fonctionnelle et la qualité interne non fonctionnelle. La plupart des détections de défauts et des initiatives qualité intégrées dans les processus standards de développement et de maintenance, sont axées sur la qualité externe ou fonctionnelle. Il s agit des défauts correspondant aux écarts par rapport au cahier des charges. Les avancées en termes de tests, d évaluation par les pairs, et des processus et technologies de gestion des exigences ont amélioré les capacités des équipes de développement à détecter et à supprimer la majorité de ces défauts avant de mettre l application en production. Puisque les défauts internes non fonctionnels sont plus difficiles à détecter car ils sont dissimulés dans l architecture et dans la structure de l application, ils sont souvent la cause de pannes, d une diminution de la performance, de failles de sécurité, de données corrompues Ces problèmes de qualité peuvent aller de mauvaises techniques de programmation aux architectures complexifiées sans raison, en passant par les violations des normes de codage. En détectant ces problèmes internes de qualité et en les corrigeant par ordre de priorité, les développeurs d application peuvent augmenter de façon conséquente la valeur d une application pour le métier. Si l on revient sur notre exemple décrit dans la partie précédente, corriger un défaut qui aurait provoqué une panne d 1 heure permettra à l entreprise d économiser 11 700 par panne, et davantage si la panne avait duré plus d une heure. Considérons maintenant l impact sur la productivité de la suppression des problèmes de qualité logicielle ; la dégradation de la performance de 10 % tombe à seulement 7 % de sa capacité d origine. Cet impact permettra à l entreprise d économiser 145 500 par trimestre, par rapport à la perte originelle de 485 000 (figure 3).

Page 15 Si des améliorations de la qualité logicielle génèrent une réduction du rework de 25 % par an et permettent aux équipes de maintenance de passer 60 % de temps en moins à déchiffrer le code, cela permet d affecter les 75000 économisés par application à la création de nouvelles fonctionnalités. Perte = ((0,07 soit le pourcentage de baisse de productivité) x (100 employés) x (25 de l heure) x (500 heures par trimestre)) + ((0,07 soit le pourcentage de baisse de productivité) x (7200 de revenu de l heure) x (500 heures par trimestre)) Perte = 339500 par trimestre 600 000 500 000 400 000 300 000 200 000 100 000 0 Avant remédiation Après remédiation Figure 3. Exemple de réduction de la perte de productivité trimestrielle grâce à une amélioration de la performance de l application Les améliorations de la qualité logicielle peuvent avoir deux types de conséquences sur la contribution de l informatique au métier. Si les améliorations de la qualité logicielle de cette application réduisaient le pourcentage de rework de 25 % par an, l équipe pourrait contribuer à hauteur de 50 000 supplémentaires à la production de nouvelles fonctionnalités métier. De même, si les améliorations de la qualité logicielle réduisaient sa complexité et si les développeurs pouvaient ne passer que 40 % de leur temps de développement à comprendre le code, ils pourraient contribuer à hauteur de 25 000 supplémentaires à la production de nouvelles fonctionnalités métier. Comme il est démontré ci-dessous, le montant de la non-contribution de l informatique au métier est passé à 22 5000 grâce aux améliorations de la qualité logicielle, dégageant ainsi 75 000 pour ajouter de la valeur au business. Perte = (0,25 soit le % de temps passé sur le rework) x (100000 de coûts salariaux) x (5 développeurs)) + (((0,5 soit le pourcentage de temps passé à modifier le code) x 0,4 soit le % de la maintenance passé à comprendre le code) x (100000 de coûts salariaux) x (5 développeurs)) Perte = 225000

Page 16 En détectant de façon proactive les problèmes de qualité logicielle et en les corrigeant, les équipes informatiques peuvent augmenter de façon conséquente la valeur d une application pour le métier. 350 000 300 000 250 000 200 000 150 000 100 000 50 000 0 Avant remédiation Après remédiation Figure 4. Exemple de réduction trimestrielle de la non-contribution informatique après une amélioration de la qualité logicielle d une application En comparaison avec les coûts de licence, d installation, de formation et d utilisation des outils automatisés permettant d identifier des problèmes de qualité logicielle, le ROI pour les améliorations de la qualité interne est conséquent. Les montants varieront en fonction de la taille et des caractéristiques de l application, mais pour les applications métier critiques, la valeur de ces améliorations pour le business est spectaculaire et s inscrit dans la durée. Les organisations informatiques se doivent de réaliser ce type d analyses pour défendre les investissements visant à améliorer la qualité de leurs applications.

Bill Curtis est un expert en ingénierie logicielle, chargé d influencer la direction scientifique et la stratégie de CAST et de l aider à sensibiliser les directions informatiques sur l importance de gérer et de mesurer la qualité interne de leurs logiciels. Il est connu pour avoir développé le CMM (Capability Maturity Model) qui est devenu le standard mondial d évaluation de la maturité des processus et de l organisation des entités de développement logiciel. Il a été nommé récemment Directeur du Consortium pour la Qualité Logicielle des Systèmes d Information (CISQ) par le SEI (Software Engineering Institute, université de Carnegie Mellon) et l OMG, l organisme mondial de définition de standards logiciels. Avant de rejoindre CAST, Bill Curtis avait co-fondé TeraQuest, leader mondial des services autour du CMM, racheté par Borland. Avant TeraQuest, il a dirigé le Software Process Program au SEI, après avoir conduit les recherches sur les technologies intelligentes d interface utilisateur et le processus de conception d un logiciel au MCC, la cinquième génération du consortium de recherche en informatique à Austin, Texas. Avant le MCC, il a développé un système de mesure de la qualité et de la productivité d un logiciel pour la TIT, a mené des recherches sur les métriques et les pratiques logicielles chez GE Space Division, et a enseigné les statistiques à l Université de Washington. www.castsoftware.com CAST Headquarters North America: +1 212-871-8330 Europe: +33 1 46 90 21 00 Dr. Bill Curtis Vice-Président Sénior et Directeur Scientifique A propos de CAST CAST, pionnier et leader mondial des logiciels d Application Intelligence, permet automatiquement de mesurer et surveiller la qualité logicielle des applications informatiques et la performance des équipes de développement. Fondée en 1990, CAST a aidé plus de 650 grandes entreprises de par le monde à améliorer l efficacité opérationnelle des processus métiers supportés par les applications critiques, tout en réduisant les risques et les coûts de développement IT. La plupart des grands intégrateurs ont également adopté CAST dans le cadre de l industrialisation des processus de développement et de l amélioration continue de la communication avec leurs clients, ainsi que dans la fondation d offres de services innovantes. CAST est cotée sur le compartiment C d Eurolist Paris (Euronext : CAS) et commercialise ses produits au travers d une force de vente directe solidement implantée dans les principaux pays Européen et aux Etats-Unis, ainsi qu au travers d un réseau de partenaires intégrateurs. Copyright 09/2009 CAST All Rights Reserved - Privacy Statement