Fermer

mars 11, 2024

Le joyau caché des économies dans la livraison de logiciels. Et non, ce n’est pas l’IA

Le joyau caché des économies dans la livraison de logiciels.  Et non, ce n’est pas l’IA



Selon Recherche Deloitte, l’IA augmentera la productivité des processus de développement logiciel de 50 % à 1 000 %. Il améliorera la gestion de projet, aidera à la création d’exigences, aidera les développeurs dans le codage, couvrira le système avec des tests automatiques, signalera les défauts et améliorera le déploiement. La mauvaise nouvelle est qu’il faudra des années avant que les entreprises adoptent largement cette technologie, car les obstacles restent encore trop nombreux. Ceux-ci incluent des problèmes de sécurité et de confidentialité des données, des données de mauvaise qualité, des risques de réputation et une technologie immature, pour n’en nommer que quelques-uns.

En attendant un avenir radieux, une source alternative d’amélioration de la productivité s’offre à toute entreprise. Si elles sont mises en œuvre correctement, les grandes entreprises peuvent économiser des millions de dollars en informatique chaque année. Nous parlons d’une méthodologie de livraison de logiciels axée sur la qualité.

Les défis liés à l’expédition de produits informatiques dans l’entreprise

Le processus de livraison de logiciels dans les entreprises est complexe. Examinons quelques exemples concrets qui illustrent cette complexité.

Exemple 1 : panne majeure après une mise à jour du cœur du système

Un grand courtier a mis à jour son système de base et a immédiatement été confronté à une panne catastrophique. Le système est resté indisponible toute la journée, avec des milliers d’utilisateurs mécontents et des millions de dollars de revenus perdus. Il s’avère qu’un minuscule composant hérité, à peine documenté, n’a pas soutenu les volumes de production et a fait tomber l’ensemble du système. Une combinaison de facteurs a conduit à cet échec. Ceux-ci inclus:

  • manque de connaissances sur les composants existants et l’architecture globale ;
  • pas de processus régulier pour évaluer l’impact de la charge de production sur tous les composants du système ;
  • tests de charge manquants au niveau des composants ;
  • absence d’infrastructure de type production pour simuler le comportement de l’ensemble du système sous la charge de production.

Exemple 2 : retards extrêmes dans la mise à jour de la plateforme de trading

Une banque d’investissement développe une plateforme de trading. Malgré les multiples demandes de l’entreprise pour accélérer la livraison, il faut trois mois pour livrer les mises à jour de la plateforme. Y consacrer plus d’argent et élargir l’équipe informatique ne l’améliore pas.

Le problème est ici compliqué par les facteurs suivants :

  • Les analystes commerciaux n’ont ni formation technique ni compréhension de l’architecture informatique. Leurs exigences conduisent à des bugs excessifs ;
  • Les développeurs ne couvrent pas leur code avec des tests de bas niveau. Par conséquent, de nombreux défauts se répercutent sur les étapes ultérieures des tests, où il est généralement plus coûteux et plus long de les corriger ;
  • Les équipes d’assurance qualité et de développement passent énormément de temps à renvoyer les défauts tout en essayant de stabiliser la version ;
  • À chaque version, la dette technologique augmente et rend les tests de plus en plus longs.

Les problèmes exposés par ces exemples sont si marquants que les chefs d’entreprise perdent confiance dans leurs structures informatiques et tentent de lancer des projets par eux-mêmes. Et les responsables informatiques jettent frénétiquement plus de corps, modifient les processus, remplacent les fournisseurs, utilisent des outils modernes et sophistiqués et font bien d’autres choses pour résoudre le problème.

Livraison de logiciels axée sur la qualité

La recette pour résoudre ces problèmes est connue depuis des années : nous l’appelons la livraison de logiciels axée sur la qualité. Il se concentre sur la promotion de la qualité à toutes les étapes du cycle de vie de livraison :

  • Établir un processus d’assurance qualité de bout en bout. Depuis la phase de conception jusqu’au support au déploiement et à la production ;
  • Faire de la qualité une partie intégrante de la planification du projet – évaluer les risques affectant la qualité dès la phase de lancement du projet, estimer les efforts nécessaires pour les atténuer ;
  • Documenter l’architecture et examiner régulièrement les risques qualité liés aux changements d’architecture ;
  • Produire des exigences solides qui couvrent toutes les nuances techniques : architecture, bases de données, intégrations, dépendances de données et attentes en matière de charge de production ;
  • Promouvoir le contrôle qualité dans le cadre de la méthodologie « agile » ;
  • Couvrez le code de l’application avec des tests automatiques à tous les niveaux – depuis les composants individuels jusqu’aux scénarios complexes de bout en bout ;
  • Fournir l’infrastructure nécessaire pour garantir la qualité des produits ;
  • Établir des tests de charge réguliers de bout en bout sur une infrastructure de type production ;
  • Implémenter le processus de livraison et de validation automatisées du code sur diverses plateformes (systèmes d’exploitation, navigateurs et mobiles);

Les avantages de cette méthodologie sont impressionnants : fiabilité améliorée des applications, nombre réduit de défauts, meilleure satisfaction client, risques minimisés (y compris la conformité), dépenses informatiques réduites et délais de mise sur le marché accélérés.

Vous trouverez ci-dessous nos recommandations pour une transition en douceur vers un nouveau modèle de prestation.

9 étapes pour adopter une livraison de logiciels axée sur la qualité

Une transition réussie vers un nouveau modèle ne nécessite pas une révolution dans votre organisation. Commencez par de petits pas, mettez en œuvre et pilotez progressivement divers éléments de la méthodologie, obtenez des histoires de réussite et avancez. Sur la base de notre expérience, vous commencerez à obtenir les premiers résultats dans 2-3 mois. Au fil du temps, augmentez le nombre de changements et étendez la nouvelle approche à un plus large éventail de projets/systèmes.

  1. L’équipe d’assurance qualité est celle qui pilotera les changements à toutes les étapes de livraison. Assurez-vous que les responsables de l’assurance qualité disposent de l’expertise, de la vision et des compétences nécessaires pour jouer ce rôle. En cas de doute, trouvez un partenaire qui vous aidera à acquérir cette expertise ;
  2. Établir des contrôles et des rapports d’assurance qualité de base qui deviendront la base de changements ultérieurs ;
  3. Inclure les chefs d’équipe d’assurance qualité dans la planification du projet. S’assurer que les chefs de projet comprennent l’importance d’évaluer les risques liés à la qualité et d’ajuster les plans de projet en conséquence ;
  4. Évaluez la qualité de vos exigences. Incluent-ils des détails techniques ? Sont-ils testables ? L’équipe d’assurance qualité vous aidera dans l’évaluation et pourrait même enrichir les exigences avec des données techniques pendant que vous travaillez au renforcement de l’équipe analytique ;
  5. Assurez-vous que l’équipe de développement possède les connaissances et les compétences nécessaires pour créer des tests de bas niveau ainsi que pour effectuer des tests de charge au niveau des composants. Faites de la création de tels tests une exigence obligatoire dans le cadre de la description de poste ou du contrat du fournisseur. Si des tests sont déjà en place, l’équipe d’assurance qualité vous aidera à revoir leur couverture et à créer un plan d’amélioration ;
  6. Mettre en œuvre l’automatisation des tests de bout en bout ;
  7. Investir dans une infrastructure suffisante pour effectuer tous les contrôles de qualité ;
  8. Rendre les tests de charge de bout en bout obligatoires pour toutes les versions ;
  9. Construisez l’équipe responsable de l’automatisation et de la rationalisation de la livraison et de la validation du code.

Dans les exemples précédents, examinons les résultats de la mise en œuvre de ces étapes.

Exemple 1: En trois mois, nous avons aidé le courtier à introduire des tests de charge réguliers au niveau des composants et de bout en bout, à mettre à niveau son infrastructure et à atténuer complètement tous les risques liés aux performances de l’application.

Exemple 2 : Il nous a fallu six mois pour aider la banque d’investissement à introduire des contrôles de qualité de base, à renforcer son équipe d’analyse commerciale et à couvrir le code avec des tests automatisés. En conséquence, le délai de mise sur le marché a été réduit de 3 mois à 1 mois.

La mise en œuvre d’au moins la moitié de ces recommandations rendra votre organisation nettement plus productive et rentable que la plupart des concurrents. Et vous n’avez pas besoin d’attendre la révolution de l’IA pour réaliser des économies et améliorer les délais de mise sur le marché.

Contact Tests alliés maintenant si vous recherchez un partenaire qui vous aidera à mettre en œuvre une livraison de logiciels axée sur la qualité et à économiser des millions de dollars en informatique dès maintenant.




Source link