Skip to main content

Si vous demandez à des professionnels de l’informatique de décrire les stratégies de modernisation des applications de leur entreprise, vous entendrez probablement des réponses axées sur la technologie.

Ils pourront vous expliquer comment ils migrent des applications sur site vers le cloud, déplacent des applications déjà hébergées dans le cloud vers de nouveaux types de services cloud, ou refactorisent leurs applications pour les exécuter sous forme de microservices.

Autrement dit, lorsque de nombreuses personnes réfléchissent à la modernisation des applications, elles pensent en termes d’évolution technologique.

Continue Reading for Free

Create a free account to finish this article, plus get ongoing access to timely insights and practical resources.

Je suis ici pour vous dire qu’il s’agit d’une mauvaise approche de la modernisation des applications. Plutôt que de moderniser les technologies, les entreprises doivent réellement moderniser leurs processus de développement et de déploiement des applications.

Permettez-moi de vous l’expliquer en montrant pourquoi les organisations doivent privilégier une approche fondée sur les processus pour moderniser leurs applications, et en fournissant des conseils pratiques sur la manière de moderniser les processus de mise à disposition des applications.

Modernisation des applications : une histoire sans fin

Une approche de la modernisation des applications centrée sur la technologie est tout simplement insuffisante, car les technologies évoluent constamment. Les innovations techniques qui rendent votre application « moderne » aujourd’hui peuvent lui donner l’apparence d’une application ancienne dans un, trois ou dix ans.

Par exemple, lorsque la modernisation des applications est devenue un mot à la mode il y a une dizaine d’années, les technologies cloud telles que l’Infrastructure en tant que service (IaaS) étaient au cœur de nombreuses stratégies de modernisation des applications. À l’époque, l’IaaS représentait un enjeu majeur pour de nombreuses organisations qui hébergeaient auparavant leurs charges de travail sur site. Pour elles, la possibilité d’exécuter leurs applications sur une infrastructure gérée par un tiers et de ne payer que les ressources consommées par leurs charges de travail était révolutionnaire.

Aujourd’hui, bien sûr, l’IaaS semble beaucoup moins révolutionnaire. Il reste utile, mais il est devenu si courant qu’il n’est plus au centre des discussions sur la modernisation des applications. Désormais, les professionnels parlent plutôt de technologies et de concepts techniques plus récents, comme les conteneurs et les fonctions sans serveur.

Cela signifie que si votre stratégie de modernisation des applications consiste à mettre à jour vos applications pour tirer parti des technologies les plus récentes et les plus performantes, quelles qu’elles soient au moment où vous lancez l’initiative, votre application cessera tôt ou tard d’être innovante. Elle n’excellera pas non plus dans la création d’un avantage concurrentiel majeur pour votre entreprise. Et dans de nombreux cas, vous ne bénéficierez pas des dernières protections de sécurité, pourtant essentielles pour garder une longueur d’avance sur l’évolution des menaces.

Une approche plus saine de la modernisation des applications consiste à se concentrer sur la modernisation des processus. Malgré les changements considérables intervenus dans les technologies de déploiement des applications au cours des dix ou vingt dernières années, les processus de développement qui favorisent le mieux l’innovation et l’efficacité logicielles – comme les concepts et pratiques interdépendants que sont l’agilité, l’Intégration Continue/Livraison Continue (CI/CD) et le DevOps – sont restés plus ou moins les mêmes.

C’est pourquoi chaque entreprise devrait réellement se concentrer sur la modernisation de ses processus de mise à disposition des applications afin de tirer parti des techniques les plus innovantes. Lorsque vos processus sont modernes, votre capacité à exploiter les technologies modernes et à mettre rapidement à jour vos applications pour tirer parti des nouvelles technologies s’ensuit naturellement.

Comment améliorer le processus de modernisation des applications

Le défi pour de nombreuses entreprises consiste bien sûr à moderniser concrètement le processus de mise à disposition des logiciels de manière à rendre les changements plus rapides, plus simples et plus sûrs. Quels processus précis doivent-elles modifier, et comment peuvent-elles surmonter les obstacles qu’elles sont susceptibles de rencontrer en chemin ?

Pour répondre à ces questions, examinons quelques tactiques de modernisation des processus qui peuvent contribuer à transformer la manière dont les entreprises « font » du logiciel, quelles que soient les technologies qu’elles utilisent.

Améliorez votre boîte de réception avec plus de conseils en leadership technologique pour livrer de meilleurs logiciels et systèmes.

1. Identifier les processus problématiques grâce à l’analyse de la chaîne de valeur

La première étape de la modernisation des processus consiste à déterminer lesquels doivent le plus évoluer. Pour obtenir cette information, il convient de réaliser une analyse de la chaîne de valeur. Celle-ci donne un aperçu des tâches qui interviennent dans la mise à disposition des logiciels et du temps nécessaire à chacune d’elles – de la même manière que l’examen d’un budget aide les équipes à cibler les moyens d’améliorer les résultats financiers en s’attaquant d’abord aux postes budgétaires les plus importants.

Lorsque vous effectuez une analyse de la chaîne de valeur de la mise à disposition des logiciels, vous découvrez quelles parties du processus de développement des applications prennent le plus de temps ou nécessitent le plus d’efforts manuels, ainsi que les composants de la gestion de l’infrastructure qui sont les plus susceptibles de générer des erreurs.

Bien que presque tous vos processus puissent probablement être améliorés dans une certaine mesure, l’analyse de la chaîne de valeur vous permet de vous concentrer sur ceux qui se prêtent le mieux à une amélioration. Elle vous aide également à repérer les tâches ou étapes inutiles que vous pouvez supprimer afin de rendre le processus de déploiement plus simple, plus rapide et moins risqué.

2. Mesurer la mise à disposition des logiciels

L’analyse des pratiques de livraison logicielle est plus efficace lorsque vous suivez vos processus de manière systématique et quantitative. Vous pouvez le faire à l’aide de cadres comme les métriques DORA de Google, qui mesurent l’efficacité des processus existants de développement et de déploiement logiciels.

Une approche fondée sur les métriques permet de suivre précisément les résultats de la livraison logicielle. Par extension, elle aide les entreprises à évaluer avec précision l’ampleur des améliorations (ou leur absence) obtenues à la suite de changements apportés à leurs processus de livraison logicielle.

3. Déclarer la guerre aux processus manuels

Si votre organisation ressemble à la plupart des autres, votre analyse de la chaîne de valeur révélera un nombre important de processus que vos équipes exécutent encore manuellement. Leur automatisation partout où cela est possible devrait être une priorité. L’automatisation permet de gagner du temps, de réduire le risque d’erreurs et de faciliter des déploiements plus sûrs.

Dans la plupart des cas, les processus manuels sont l’antithèse de la modernisation des applications pour deux raisons. La première est qu’ils ralentissent les opérations et créent de l’inefficacité. La seconde est que les opérations manuelles tendent à accroître le risque d’erreurs, car il est possible qu’une personne néglige un élément important ou commette une erreur en appliquant une configuration, ce qui peut ouvrir la voie à une faille de sécurité.

4. Refactoriser les processus et les procédures de gestion

Tout comme vous pouvez refactoriser une application monolithique en redéfinissant son architecture, vous pouvez redéfinir vos processus et procédures de gestion, notamment votre approche du développement d’applications et de l’administration des systèmes.

Dans de nombreux cas, accélérer les déploiements d’applications et mettre en place le déploiement et la livraison continus nécessitent de réécrire les processus de gestion des changements logiciels, car les approches héritées, comme celles associées au modèle en cascade, ne sont pas évolutives. Elles ne peuvent pas suivre le rythme des pipelines de livraison continue, dans lesquels du nouveau code est déployé en production plusieurs fois par semaine, voire parfois plus fréquemment.

Les processus lents et manuels devraient être remplacés par des processus automatisés dans la mesure du possible. Par exemple, les tests logiciels pourraient être automatisés afin de gagner du temps et d’améliorer la qualité (car, trop souvent, les validations manuelles sont simplement accordées automatiquement, ce qui ralentit le processus de test sans apporter de valeur). En outre, les processus excessivement complexes pourraient éventuellement être décomposés en procédures plus petites et plus simples.

5. Changer votre état d’esprit à l’égard des processus

En plus de modifier les processus eux-mêmes, la modernisation des applications devrait également amener les organisations à changer leur manière d’envisager les processus en général. Cela signifie encourager les développeurs, les administrateurs informatiques et les responsables à utiliser l’automatisation par défaut lors de la mise en œuvre des processus.

Cela peut sembler inutile, car de nombreux professionnels de l’informatique parlent aujourd’hui de l’importance de l’automatisation. Pourtant, lorsqu’il s’agit de mettre réellement en œuvre des processus, ils ont tendance à privilégier les approches manuelles, car celles-ci sont plus rapides et plus simples à appliquer au départ. Pour assurer la réussite de la modernisation des applications à long terme, vous devez amener vos équipes à adopter l’automatisation comme moyen de gagner du temps et des efforts et de réduire les risques sur le long terme, même si elle demande davantage de travail en amont.

Surmonter les difficultés liées à la modernisation des applications

Lorsqu’elles mettent en œuvre les changements de processus que je viens de décrire, les entreprises rencontrent souvent des difficultés telles que les suivantes :

  • Résistance au changement : si des processus manuels ou inefficaces sont en place depuis des décennies et que l’entreprise a continué à fonctionner, certaines personnes peuvent remettre en question l’intérêt de changer les choses.
  • Manque de ressources : refondre les processus demande du temps et des efforts. Les services informatiques déjà surchargés peuvent être réticents à consacrer des ressources à la modification des processus.
  • Manque de leadership : sans dirigeants ou responsables pour orienter la modernisation des processus, les initiatives peuvent perdre leur élan.

Ces difficultés sont, dans une certaine mesure, inévitables. Mais elles peuvent également être surmontées. Une partie de la solution consiste à commencer modestement : plutôt que de refondre vos processus du jour au lendemain, choisissez-en seulement quelques-uns, puis développez progressivement vos efforts. Il est également recommandé de commencer avec une ou deux équipes seulement.

Une fois que vous avez déterminé par où commencer, veillez à mesurer la livraison logicielle à l’aide de métriques, effectuez une analyse de la chaîne de valeur afin de déterminer les domaines à améliorer, puis apportez les changements nécessaires. Après avoir amélioré l’efficacité de vos équipes initiales, les membres de ces équipes pourront élargir leur action et aider d’autres équipes à adopter des processus et des états d’esprit similaires.

Les entreprises devraient également désigner des responsables chargés de superviser les initiatives de modernisation et déléguer la responsabilité de certains aspects du processus à du personnel possédant les compétences requises. Une autre option consiste à externaliser ce travail auprès d’une entreprise de développement d’applications mobiles ou d’une entreprise de développement d’applications pour iPad.

Une approche moderne de la modernisation des applications

En définitive, la réussite de tout projet de modernisation d’application dépend non seulement des technologies que vous choisissez de mettre en œuvre, mais aussi de la manière dont vous les mettez en œuvre. Tant que les entreprises ne moderniseront pas les processus de création et de mise à jour des logiciels, elles auront toujours un temps de retard.

Cependant, grâce à des processus efficaces, fiables et sécurisés, les organisations peuvent moderniser leurs applications en tirant parti des dernières innovations technologiques chaque fois que de nouvelles opportunités technologiques se présentent.

Abonnez-vous à la newsletter de The CTO Club pour découvrir davantage d’astuces, de conseils et d’outils sur la modernisation des applications.

Scott Wheeler

Scott Wheeler est responsable de la pratique Cloud chez Asperitas. Il aide les organisations à mettre en œuvre avec succès les solutions cloud les plus complexes et exigeantes.