Composante essentielle de la réussite d’une entreprise, la gestion efficace du portefeuille d’applications n’est pourtant pas l’activité informatique la plus glamour — trop souvent associée à un coût élevé, à des processus manuels, à des erreurs humaines et à une mauvaise répartition des ressources. Elle est donc LA candidate parfaite à l’automatisation ! La gestion automatisée des applications, lorsqu’elle s’appuie sur l’intelligence artificielle (IA) et le machine learning, peut réduire jusqu’à 40 % (selon le degré de maturité) les coûts de main-d’œuvre informatique, mais aussi accroître l’efficacité et la productivité — le tout en trois à cinq ans. Les entreprises doivent cependant savoir que l’automatisation de la gestion applicative peut s’avérer un parcours complexe, chronophage et coûteux, tout du moins lors des premières phases du projet, synonymes de nombreux coûts (études préliminaires, planification et démarrage).

Retenons également que l’automatisation est un processus non pas ponctuel mais permanent, qui entre dans le cadre d’une stratégie d’amélioration continue. Objectif à long terme : abandonner le travail manuel pour entrer dans le monde du futur, où des robots auto-adaptatifs utiliseront l’IA pour améliorer continuellement les systèmes.

L’automatisation transforme les services IT

Il faut bien commencer quelque part. Pour la plupart des entreprises, cela veut dire progresser étape par étape, déployer un projet distinct, en évaluer les bénéfices et les enseignements, avant de passer à l’étape suivante.

Il existe deux approches typiques : soit l’entreprise peut elle-même entreprendre le projet, soit elle fait appel à un fournisseur de services gérés. 

Les fournisseurs de services disposent généralement de plateformes ou de solutions d’automatisation pré-intégrées, avantageuses en matière d’adoption, de productivité et de résultats. Les solutions d’automatisation développées par les clients sont généralement plus fragmentées : ayant évolué de manière progressive, leur rentabilité est plus longue en raison des besoins de formation, du degré de familiarité des outils et des difficultés de gouvernance et d’adoption.

Dans la première approche, les organisations se lançant seules dans l’aventure devront en outre s’acquitter des coûts de la première année et, une fois le système opérationnel, assumer seules la réalisation de l’analyse de rentabilité associée au projet — économies de coûts ou amélioration de la qualité/capacité, par exemple.

Dans la seconde approche, les entreprises souscrivent pendant trois à cinq ans à un contrat de services gérés, selon lequel l’impact financier initial est réparti sur toute la durée du contrat ; le fournisseur des services gérés, quant à lui, prend en charge la réalisation des objectifs de résultats et assume la responsabilité de la gestion continue du portefeuille d’applications.

Quelle que soit l’approche, les entreprises doivent être conscientes des évolutions techniques et culturelles nécessaires afin d’améliorer les niveaux d’automatisation au sein du processus de gestion des applications.

Éléments d’automatisation

Voici quelques étapes clés de l’abandon des processus manuels au profit de l’automatisation :

Évaluation : Il est essentiel d’identifier les sources des activités de support qui prennent le plus de temps — on parle également de « lourdes tâches ». Cette identification facilite la définition du périmètre de mise en œuvre ainsi que les différents traitements appropriés pour les activités qui représentent le gros du support. À la fois tâche initiale ponctuelle et activité continue, l’évaluation permet d’identifier les problèmes et d’accroître l’optimisation.

Les activités chronophages qui sont de bonnes candidates à l’automatisation peuvent être identifiées de plusieurs manières :

  • Analysez les tickets de support des applications relatifs aux incidents répétés afin d’identifier la cause profonde et la résolution. Les algorithmes du machine learning peuvent servir à analyser les tendances et, ainsi, à faciliter le tri des énormes volumes de tickets, dans le but d’identifier les événements les plus fréquents. Des exercices de cartographie des flux de valeur peuvent permettre d’identifier les problèmes dont la résolution dépend d’une seule personne — ou « syndrome du héros ». Ils peuvent également servir à identifier les situations ou les transferts de processus échouent entre des fournisseurs de service travaillant isolément dans des domaines séparés, comme les applications, le réseau et l’infrastructure. Enfin, ces exercices peuvent identifier les lacunes de communication avec les utilisateurs, ce qui permet de s’assurer que ces derniers sont informés une fois le problème résolu.
  • Recherchez dans les tâches non planifiées les opportunités d’automatisation du développement et de l’exploitation d’applications. Les métriques de capture du temps moyen de réparation (MTTR) permettent aux entreprises d’identifier les besoins d’automatisation qui permettront d’améliorer la qualité et la cohérence.

Intégration : avant que des outils d’automatisation puissent être déployés, le portefeuille d’applications doit être évalué et configuré afin d’être parfaitement compatible avec ces nouveaux outils. Cette étape peut nécessiter du codage, une modélisation, une réorganisation de l’architecture d’application, voire l’ajout d’API afin de surmonter l’absence d’interfaces d’automatisation.

L’absence des données nécessaires pour prendre des décisions éclairées en matière de retour d’investissement de l’automatisation et récolter les bénéfices de l’analytique avancée, constitue un frein à l’automatisation. Parfois, les données sont compartimentées et inaccessibles à tous ceux qui en ont besoin.

L’arbre cache souvent la forêt lorsque l’utilisateur ne dispose pas d’une analyse globale. L’analytique est nécessaire sur l’ensemble du domaine de service : données de surveillance, de modification, des incidents, de gestion du cycle de vie et d’automatisation. 

Les données issues de différentes sources doivent, dans l’idéal, être réunies dans un lac de données, où des processus analytiques prennent en charge l’identification des modèles répétitifs afin de faciliter l’identification des opportunités d’optimisation. Une carte thermique, par exemple, pourrait servir à identifier les composants surveillés qui rencontrent le plus de problèmes au fil du temps.

Les algorithmes d’IA ne sont utilisables qu’en présence de données sous-jacentes de qualité. Il n’y a pas de solution miracle : sans collecte et enregistrement de données fiable, l’IA reste et restera une chimère.

Définition de repères de performance (baselining) : Une fois l’intégration effectuée, il est indispensable d’établir des repères de performance sur les applications et leur environnement d’exploitation. La définition de repères de performance, ou « baselining », est indispensable pour déterminer si les applications affichent des performances inférieures ou supérieures par rapport aux conditions actuelles. En outre, les instruments futurs reposeront largement sur les données collectées lors du processus de baselining.

Développement d’activités : la dernière étape de l’automatisation consiste à créer les activités équivalentes facilitant les processus machine généralement associés aux lourdes tâches. Exemples de cibles courantes :

  1. Déploiement d’applications. Automatisation de la publication des modifications et configurations des applications à différentes étapes de leur cycle de vie : développement, test, préproduction et production. Ces étapes sont généralement ponctuelles, et ne font l’objet que de modifications mineures. Les opportunités sont nombreuses : automatisation du test, mais aussi des pipelines de publication, de l’analyse du code et de l’évaluation des versions.
  2. Mesures correctives. Développement du code et des scripts nécessaires pour prendre des mesures correctives, en cas de problème opérationnel connu. Ces automatisations, généralement uniques, sont les plus coûteuses car fortement spécifiques à l’application et à la réparation.
  3. Actions répétitives. Il peut par exemple s’agir de « contrôles journaliers », au cours desquels une vérification manuelle est effectuée pour valider l’intégrité de l’application.
  4. Manipulation des données. Cela se produit en cas de demande de transformation de certaines données dans le cadre du processus d’application.
  5. Opérations. Il s’agit généralement d’opérations associées au démarrage, à l’arrêt, à la réduction et à l’extension de services, ou encore à la reprise après incident.

Outils

L’investissement dans des outils nouvelle génération est indispensable pour améliorer le rendement. La simple multiplication ou mise à niveau des outils existants ne suffirait pas, et empêcherait même les gains de productivité qu’offrirait la restructuration complète de tous les outils d’exploitation des services.

Ces outils doivent inclure une surveillance accrue fournissant des renseignements plus précis — au-delà de la seule utilisation de l’infrastructure. Les outils modernes de gestion des performances des applications (APM) ne se contentent pas de proposer une surveillance basique des performances d’une seule application : ils analysent les dépendances et les relations entre les applications, mais aussi leurs composants. Qui plus est, les outils APM commencent à incorporer des éléments d’IA afin d’analyser toute la stack applicative, ce qui favorise l’automatisation de l’identification des causes profondes. Ce gain de productivité majeure contribue à alléger le workload associé aux lourdes tâches manuelles d’analyse et d’interrogation des données.

La résolution automatique nécessite toujours plus d’outils dépendant des plateformes, des systèmes d’exploitation et de l’infrastructure d’applications. Des orchestrations « runbook » doivent également être prévues pour relier les incidents aux résolutions. L’automatisation de la résolution exige en outre la mise à disposition d’interfaces programmatiques. En l’absence de telles interfaces, il est possible de recourir à des outils d’automatisation des processus par la robotique (RPA) qui automatisent les interactions humaines avec les applications, mais peuvent exposer une interface programmatique à toute l’entreprise.

Le déploiement de ces outils et le développement nécessaire de workflows et de scripts, occupent une large part des investissements initiaux requis dans le cadre de l’automatisation de la gestion des applications.

Changement culturel

Le changement culturel a un rôle à jouer dans l’adoption d’une automatisation efficace. Si le moindre changement mineur d’un environnement nécessite une demande de modification, l’adoption de l’automatisation sera considérablement ralentie. Processus, workflows et autres ’approbations doivent être redéfinies pour faciliter l’adoption de niveaux plus élevés de modification autonome.

Il est également nécessaire de s’aligner sur un mode de fonctionnement DevOps, qui permet l’application de modifications plus fréquentes et plus petites, moins risquées qu’un cycle de vie « en cascade » plus traditionnel.

Dans le cadre de workflows automatisés, un test et une démonstration efficaces via une phase pilote d’adoption peuvent renforcer la confiance des parties prenantes et soulager leurs inquiétudes portant sur les éventuels risques que des modifications non gérées peuvent présenter pour l’environnement. Grâce à des sas de passage appliqués par des workflows d’approbation automatisés, le processus d’adoption abandonnera un fonctionnement traditionnel au profit d’un degré élevé d’automatisation.

Pour une gestion automatisée des applications

Dans l’idéal, l’automatisation de la gestion des applications existerait dans un environnement 100 % automatisé en service réduit, doté de fonctionnalités d’autocorrection et d’autoréparation. Cette vision se concrétisera plus facilement lorsqu’on sait qu’à l’heure actuelle, les nouvelles applications sont développées via des technologies “cloud-native”. Dès le départ, l’automatisation a été conçue pour atteindre un mode de fonctionnement « zéro opération ». Toutefois, les portefeuilles typiques mêlent des applications héritées, mainframe et SaaS (Software-as-a-Service) soit développées à une époque où les technologies d’automatisation n’étaient pas aussi avancées, soit conçues dès le départ pour assister des opérations applicatives.

L’automatisation de la gestion de ces environnements mixtes est porteuse de promesses :

Accroissement de la capacité en permettant aux employés  d’exécuter des tâches peu adaptées aux machines.

Amélioration de la qualité en évitant les erreurs et en facilitant le processus décisionnel humain, grâce à l’identification des causes profondes des problèmes

Augmentation de la vitesse en accélérant la détection, la résolution des incidents et des problèmes ainsi que le déploiement du code

Réduction des coûts en réduisant le travail manuel requis 

Les DSI doivent également comprendre que la configuration des systèmes automatisés est elle-même exigeante en main-d’œuvre. Des tâches comme la création d’un inventaire d’applications ou l’évaluation du portefeuille d’applications impliquent des questionnaires, des entretiens avec les parties prenantes clés ou encore la collecte de jeux de données.

Le choix des traitements à appliquer et la création des outils et des applications d’intégrations exigent également un travail acharné de la part d’experts humains dans les domaines concernés. 

En investissant dans l’automatisation, vous créez un mode de fonctionnement durable, ce qui évitera une augmentation linéaire du personnel de support, alors que le nombre d’applications et la complexité du portefeuille ne cessent, eux, de croître.

Les organisations profitent de cette optimisation pour réinvestir les économies réalisées dans des projets à plus forte valeur ajoutée, et constatent que les projets de développement sont les grands bénéficiaires des efforts déployés dans les opérations.

Les exigences actuelles de réduction des coûts d’une année à l’autre ne seront respectées que si une automatisation est mise en place à tous les niveaux, à mesure que de nouvelles applications seront développées. En appliquant des méthodes DevOps sur une plus grande part du portefeuille, les organisations bénéficieront d’un workload d’opérations moins intensif en main-d’œuvre et hautement automatisé, voire fortement autonome pour les organisations les plus performantes.

En savoir plus sur la gestion automatisée des applications.

About the Author

L’auteur

Matt Kay est responsable produits pour les services d’applications chez DXC Technology. Il orchestre les équipes de fabrication, de vente et de prestation pour une grande partie du portefeuille de services d’application DXC. Spécialisé dans la gestion des applications, Matt a créé des services nouvelle génération qui ont été mis en production et vendus à grande échelle auprès d’entreprises du Fortune 500. Matt a dirigé le lancement de DXC Application Service Automation, une offre qui permet aux clients d’automatiser des processus clés de la gestion de services pour applications, et ainsi d’améliorer la productivité, la qualité et l’uniformité des services.