Your SlideShare is downloading. ×
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Quelle valeur ajoutée tirer de la qualité technique des applications?
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Quelle valeur ajoutée tirer de la qualité technique des applications?

389

Published on

Quand une application critique connait une défaillance, le manque à gagner est souvent énorme et immédiat. Des applications de qualité médiocre peuvent générer des interruptions de service …

Quand une application critique connait une défaillance, le manque à gagner est souvent énorme et immédiat. Des applications de qualité médiocre peuvent générer des interruptions de service majeures.Pourtant, les DSI peinent à justifier les investissements pour rendre proactive la gestion de la qualité des applications : lorsque les pertes imputables à la mauvaise qualité des logiciels sont calculées à partir des seuls coûts de maintenance et de développement, l'impact de la perte reste quasi invisible. Ce document présente un modèle quantitatif pour mesurer la manière dont la qualité des applications impacte positivement le revenu.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
389
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. White PaperOctobre 2009 A C H I E V E I N S I G H T. D E L I V E R E X C E L L E N C E . 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
  • 2. La valeur business de la qualité logicielle d’une applicationPage 1 Dr. Bill Curtis, Vice-Président Senior et Directeur Scientifique de CAST, Résumé 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.
  • 3. La valeur business de la qualité logicielle d’une applicationPage 2 • En mesurant et en contrôlant les facteurs de santé dès le début du cycle de Résumé (suite) 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.
  • 4. La valeur business de la qualité logicielle d’une applicationPage 3 I. Pourquoi la qualité logicielle d’une application métier est-elle importante ? Sommaire 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 I. Pourquoi la qualité logicielle sont passées du service informatique au comité de direction. d’une application métier Les indisponibilités d’un site d’e-commerce se mesurent en ventes perdues. est-elle importante ? L’échec de l’enregistrement d’un client peut être mesuré en défection de II. Comment mesurez-vous clients. Des données financières corrompues peuvent être mesurées en frais la qualité logicielle d’une de retraitement. Ces trois incidents se mesurent également en détérioration application métier ? de l’image de l’entreprise. III. Comment les facteurs de santé Le type de problèmes le plus souvent à l’origine de ces catastrophes ne sont affectent-ils la valeur métier ? pas des défauts de logique fonctionnelle («ce que l’application est supposée IV. Réduire les risques métier faire»). Ces problèmes sont provoqués par les défauts non-fonctionnels résultant V. Maximiser l’expérience client d’une mauvaise conception et d’une mauvaise programmation («la façon dont VI. Augmenter l’agilité métier l’application le fait»). La plupart des défauts fonctionnels sont détectés pendant VII. Améliorer la productivité métier la phase de tests. Les défauts non fonctionnels sont souvent sous-jacents VIII. Augmenter la contribution de jusqu’à ce qu’ils soient révélés au cours d’opérations courantes et entraînent l’informatique des incidents critiques. Comme Diomidis Spinellis le précise dans son ouvrage IX. Un exemple de perte de valeur récent, Code Quality, « ne pas satisfaire à une exigence non fonctionnelle peut directement lié à une faible être critique, voire catastrophique… les exigences non fonctionnelles sont qualité logicielle parfois difficiles à vérifier. Nous ne pouvons pas créer un test pour vérifier X. La valeur correspondant à la fiabilité du système. » l’amélioration de la qualité logicielle des applications 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
  • 5. La valeur business de la qualité logicielle d’une applicationPage 4 vérifier la justesse fonctionnelle d’une application : l’évaluation de la qualité A retenir logicielle concerne les caractéristiques non fonctionnelles d’une application - la structure interne et l’ingénierie du code. CAST a identifié les cinq domaines Grâce à une recherche intensive et à son expérience de l’industrie, CAST a clé de qualité logicielle d’une application les plus critiques en identifié les cinq domaines clé de qualité logicielle d’une application les plus terme d’impact sur le revenu. 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é Caractéristiques permettant à de nouvelles • éduit l’inefficacité due au transfert entre les équipes R équipes ou à de nouveaux entrants de • éduit les courbes d’apprentissage R comprendre et de travailler rapidement sur • éduit la dépendance envers les prestataires R une application Évolutivité Caractéristiques qui rende une application plus • méliore l’agilité métier en répondant au marché ou aux clients A simple et plus rapide à modifier • éduit le coût de possession en réduisant l’effort de modification R Robustesse Caractéristiques affectant la stabilité d’une • méliore la disponibilité des services métier A application et la probabilité d’introduire des • éduit le risque de pertes dû à un dysfonctionnement opérationnel R défauts en la modifiant • éduit le coût de possession d’une application en réduisant le rework R Performance Caractéristiques affectant la performance • éduit le risque de perdre des clients à cause d’un service de R d’une application faible qualité ou de temps de réponse dégradés • méliore la productivité des utilisateurs de l’application A • ugmente la rapidité de prise de décisions et de transmission A d’informations • méliore la capacité d’adapter une application à la croissance de A l’activité d’une entreprise Sécurité Caractéristiques affectant la capacité d’une • méliore la protection des informations sensibles a application à prévenir toute intrusion non • éduit le risque de perte de confiance des clients ou de r autorisée dommages financiers • ugmente la conformité réglementaire en matière de sécurité a
  • 6. La valeur business de la qualité logicielle d’une applicationPage 5 III. Comment les facteurs de santé affectent-ils la valeur métier ? A retenir Les coûts de la mauvaise qualité logicielle d’une application peuvent être évalués par rapport à cinq objectifs business principaux : La qualité logicielle des applications • Réduire les risques métier est cruciale pour obtenir • Augmenter l’agilité de bons résultats informatiques qui, à leur tour, affectent un • Améliorer la productivité grand nombre de résultats métier • Optimiser la contribution de l’informatique au métier indispensables pour réaliser les • Améliorer l’expérience client objectifs business. 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 Résultats Objectifs Facteurs business métier de l’informatique de santé Maximiser la disponibilité métier Minimiser la dégradation du service Réduire les défauts existants Minimiser la perte de revenu Robustesse Réduire les nouveaux défauts Minimiser Minimiser les pénalités Améliorer la stabilité les risques Minimiser les coûts des clients Minimiser la reconstruction de données Garantir l’intégrité architecturale Sécurité Minimiser les pannes involontaires Maximiser la protection des informations Réduire les défauts de sécurité Maximiser la confiance des clients Garantir la conformité avec les règles de programmation Maximiser la fidélité client Améliorer la performance Performance Augmenter Maximiser la conformité réglementaire l’agilité Accélérer les mises sur le marché Réduire la complexité du code Améliorer le temps de réponse aux clients Permettre la personnalisation de masse Optimiser l’évolutivité Évolutivité Augmenter Soutenir la croissance de l’activité Réduire les efforts de modification la productivité Accélérer la réactivité Accélérer la récupération des informations Réduire le rework Augmenter les nouvelles fonctionnalités Transférabilité Améliorer la lisibilité du code Optimiser Augmenter la disponibilité des ressources la contribution Réduire le coût de possession Réduire les courbes d’apprentissage de l’informatique Réduire les coûts opérationnels Faciliter le transfert entre équipes Réduire la dépendance au fournisseur Figure 1. Relations entre les facteurs de santé et les objectifs business
  • 7. La valeur business de la qualité logicielle d’une applicationPage 6 La qualité d’une application peut être évaluée par rapport à un ensemble A retenir d’objectifs plus spécifiques qui découlent de chaque objectif business. Par exemple, les risques peuvent être composés de : Nous n’avons pas besoin de • pannes des systèmes critiques, modèles sophistiqués pour démontrer le lien entre la qualité • données corrompues, d’une application et les objectifs • violations de la sécurité, et business. Des équations simples • non-conformités avec la réglementation. suffisent. 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 Résultats Objectifs Facteurs business métier de l’IT de santé Minimiser Maximiser la disponibilité métier les risques Minimiser la dégradation du service Réduire les défauts existants Minimiser la perte de revenu Réduire les nouveaux défauts Robustesse Interruptions de service Minimiser les pénalités Améliorer la stabilité Minimiser les coûts des clients Minimiser la reconstruction de données Garantir l’intégrité architecturale Sécurité Données corrompues Minimiser les pannes involontaires Maximiser la protection des informations Réduire les défauts de sécurité Maximiser la confiance des clients Garantir la conformité avec Violations de les règles de programmation la sécurité Maximiser la fidélité client Performance Maximiser la conformité réglementaire Améliorer la performance Non-conformités réglementaires Optimiser l’évolutivité Évolutivité Figure 2. Relation entre les facteurs de santé et les sous-objectifs de réduction du risque
  • 8. La valeur business de la qualité logicielle d’une applicationPage 7 Les sections suivantes présentent des équations qui démontrent comment A retenir 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 Le coût lié à une mauvaise qualité analyses ROI puisque nous n’incluons pas le coût de l’argent, les périodes logicielle peut être exprimé en de recouvrement des investissements et d’autres éléments des modèles ROI termes de perte de revenu connu, classiques. Elles représentent les pertes liées à chaque objectif business et actuel ou futur, de coût de sous- illustrent comment la mauvaise qualité logicielle des applications se traduit en utilisation des employés, de une perte de revenu et en une augmentation des coûts. pénalités et d’autres coûts basés sur des données métier historiques. 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)
  • 9. La valeur business de la qualité logicielle d’une applicationPage 8 Données corrompues – Les coûts liés aux données corrompues comprennent la A retenir 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 Bien que coûteux, les coûts données inexactes. Le coût de la corruption de données est déterminé par le identifiables des problèmes de temps écoulé avant que les données incorrectes ne soient détectées puisque, sécurité sont souvent moins dans de nombreux cas, cela augmente le travail de correction. Le business importants que la perte de revenu supporte la plupart des frais engendrés par la corruption de données, soit en due à la défection de clients qui ayant à corriger les données, soit en subissant des interruptions d’activité se tournent vers la concurrence pendant que l’informatique restaure les données correctes. qui offre, selon eux, une meilleure sécurité. Perte = oût de la reconstruction des données + c 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 = oût des ressources volées + c 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
  • 10. La valeur business de la qualité logicielle d’une applicationPage 9 Non-conformité avec la réglementation – La faiblesse du code d’une A retenir 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 Plus l’interface est confuse, plus engendrer des pénalités financières, le non-respect des réglementations telles le nombre d’employés dédiés à que Sarbanes-Oxley peut avoir des répercussions pénales. l’assistance à la vente doit être important. La facilité d’utilisation Perte = oût des pénalités pour non-conformité + c et la réactivité contribuent à coût de la mise en conformité du système l’augmentation du revenu et à la réduction des coûts du service clientèle 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 = uture perte de revenu due à la défection des clients + f 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.
  • 11. La valeur business de la qualité logicielle d’une applicationPage 10 VI. Augmenter l’agilité métier A retenir 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 Plus l’architecture ou le code d’une le temps de réaction face aux demandes des clients et aux évolutions du application est complexe sans marché. L’agilité d’une entreprise à répondre rapidement à ces besoins dépend raison, plus il est long d’ajouter strictement de la qualité technique de ses applications. Plus l’architecture ou le ou de modifier une fonctionnalité, code d’une application est complexe sans raison, plus il est long d’ajouter ou de de vérifier sa conformité, et de la modifier une fonctionnalité, de vérifier sa conformité, et de la livrer. Pire, une livrer. Améliorer l’agilité et réduire complexité inutile induit plus d’erreurs et de rework qui allongent les temps de le risque engendrent des bénéfices développement et de livraison des nouvelles fonctionnalités au métier. immédiats. Perte = erte de revenu liée à une offre tardive par rapport à l’intention P 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.
  • 12. La valeur business de la qualité logicielle d’une applicationPage 11 VII. Améliorer la productivité métier A retenir 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 Les pannes ne se contentent pas la performance privent l’organisation des bénéfices de ses investissements, à la d’affecter le revenu. Elles ont des fois dans le développement de ces applications et dans la main d’œuvre qui les conséquences néfastes sur la utilisent. Les pertes entraînées par des pannes ont été couvertes dans la section productivité et sur le moral des « risques métier ». On ne traitera ici que l’impact de la productivité sur les équipes informatiques. 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 – ( roduction réduite en raison d’une mauvaise performance ÷ [ p 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 – ( aisse des revenus due à une diminution de la performance ÷ b 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 ? »
  • 13. La valeur business de la qualité logicielle d’une applicationPage 12 Généralement, environ la moitié du budget informatique est consacré au A retenir 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 Des études ont prouvé que 50 % dicte le volume des ressources à affecter au développement des applications. des travaux de maintenance Par exemple, chaque heure passée à régler des problèmes de qualité est une sont consacrés à comprendre opportunité perdue de fournir de la valeur supplémentaire. De même, des études le code plutôt qu’à ajouter ont prouvé que 50 % des travaux de maintenance sont consacrés à comprendre des fonctionnalités. Réduire la le code plutôt qu’à ajouter des fonctionnalités. Réduire la complexité du code complexité du code peut réduire peut réduire le temps nécessaire pour le comprendre, et permettre de consacrer le temps nécessaire pour le plus de temps au développement de fonctionnalités très utiles. comprendre, et permettre de consacrer plus de temps au Perte = (pourcentage annuel de temps passé sur le rework) ( développement de fonctionnalités x (coût moyen charges comprises d’un développeur) x (nombre de très utiles. 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)) + 1 000 € de frais de réactivation + ( 500 € de frais de service clientèle + 3 000 € de pertes de revenu clients cette année Perte = 11 700 €
  • 14. La valeur business de la qualité logicielle d’une applicationPage 13 Si la société subit une panne d’1 heure de cette application une fois par A retenir 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 Une baisse de 10 % de la coûts informatiques seront considérés comme du rework dans un prochain calcul performance d’une application car ils réduisent l’aptitude de l’informatique à contribuer au business. peut rapidement se chiffrer en un demi-million d’euros de perte de Considérons ensuite qu’outre des pannes, la performance de l’application productivité en un trimestre. 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 (7 200 € de l’heure) x (500 heures par trimestre)) Perte = 485 000 € 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 (100 000 € de coûts salariaux)) x (5 développeurs)) Perte = 300 000 €
  • 15. La valeur business de la qualité logicielle d’une applicationPage 14 La perte due aux risques de pannes, la perte de productivité métier et la perte de contri- A retenir bution 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 Lorsque des pertes dues à une la qualité des applications offrent des avantages conséquents. Lorsque des pertes dues à faible qualité des applications ne une faible qualité des applications ne sont évaluées que par rapport aux coûts de déve- sont évaluées que par rapport aux loppement ou de maintenance, l’impact des pertes est invisible. Toutefois, lorsqu’elles coûts de développement ou de sont évaluées par rapport aux dépenses et aux pertes d’opportunités commerciales, un maintenance, l’impact des pertes dossier d’investissement irréfutable peut être élaboré pour la qualité logicielle. est invisible. Toutefois, lorsqu’elles sont évaluées par rapports aux dépenses et aux pertes d’opportunités commerciales, un X. La valeur correspondant à l’amélioration de la qualité logicielle des applications dossier d’investissement irréfutable peut être élaboré pour la qualité Améliorer la qualité des applications comprend deux éléments ; la qualité externe logicielle. 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’écono- miser 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).
  • 16. La valeur business de la qualité logicielle d’une applicationPage 15 Perte = (0,07 soit le pourcentage de baisse de productivité) x (100 employés) ( A retenir x (25 € de l’heure) x (500 heures par trimestre)) + Si des améliorations de la ((0,07 soit le pourcentage de baisse de productivité) qualité logicielle génèrent une x (7200 € de revenu de l’heure) x (500 heures par trimestre)) réduction du rework de 25 % par an et permettent aux équipes de Perte = 339 500 € par trimestre maintenance de passer 60 % de temps en moins à déchiffrer le 600 000  code, cela permet d’affecter les 500 000  75 000 € économisés par application à la création de nouvelles 400 000  fonctionnalités. 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é logi- cielle 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 (100 000 € 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 = 225 000 €
  • 17. La valeur business de la qualité logicielle d’une applicationPage 16 A retenir 350 000  300 000  En détectant de façon proactive 250 000  les problèmes de qualité logicielle 200 000  et en les corrigeant, les équipes 150 000  informatiques peuvent augmenter de façon conséquente la valeur 100 000  d’une application pour le métier. 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.
  • 18. Bill Curtis est un expert en ingénierie logicielle, chargéd’influencer la direction scientifique et la stratégie de CAST et del’aider à sensibiliser les directions informatiques sur l’importancede gérer et de mesurer la qualité interne de leurs logiciels. Il estconnu 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éveloppementlogiciel. Il a été nommé récemment Directeur du Consortiumpour la Qualité Logicielle des Systèmes d’Information (CISQ) parle SEI (Software Engineering Institute, université de CarnegieMellon) et l’OMG, l’organisme mondial de définition de standardslogiciels. Dr. Bill Curtis Vice-Président Sénior et Directeur ScientifiqueAvant 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 auSEI, après avoir conduit les recherches sur les technologiesintelligentes d’interface utilisateur et le processus de conceptiond’un logiciel au MCC, la cinquième génération du consortium derecherche en informatique à Austin, Texas. Avant le MCC, il adéveloppé un système de mesure de la qualité et de la productivité A propos de CASTd’un logiciel pour la TIT, a mené des recherches sur les métriqueset les pratiques logicielles chez GE Space Division, et a enseigné CAST, pionnier et leader mondial des logiciels d’Application Intelligence, permetles statistiques à l’Université de Washington. automatiquement de mesurer et surveiller la qualité logicielle des applications infor- matiques 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ération- nelle 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évelop- pement 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 compar- timent C d’Eurolist Paris (Euronext : CAS) etwww.castsoftware.com commercialise ses produits au travers d’une force de vente directe solidement implantée dans les principaux pays Européen et auxCAST Headquarters Etats-Unis, ainsi qu’au travers d’un réseauNorth America: +1 212-871-8330 de partenaires intégrateurs.Europe: +33 1 46 90 21 00Copyright © 09/2009 CAST All Rights Reserved - Privacy Statement

×