Accueil les sujets application modernization Qu'est-ce que la modernisation des applications ?
Aujourd'hui, la modernisation des applications fait référence à la transformation des applications monolithiques en applications cloud reposant sur une architecture de microservices.
S'abonner au bulletin d'information IBM Découvrir IBM Turbonomic
Fond noir et bleu
Qu'est-ce que la modernisation des applications ?

La modernisation des applications consiste à prendre des applications existantes et à moderniser l'infrastructure de la plateforme, l'architecture interne et/ou les fonctions. La plupart des discussions sur la modernisation des applications portent aujourd'hui sur les applications monolithiques sur site, généralement mises à jour et gérées en utilisant des processus de développement en cascade, et sur la manière dont ces applications peuvent être intégrées dans une architecture cloud et des modèles d'implémentation, à savoir les microservices et DevOps.

Les avantages de la modernisation des applications se résument généralement à l'amélioration de la vitesse de distribution des nouvelles fonctions, à l'exposition des fonctionnalités des applications existantes pour qu'elles puissent être consommées par d'autres services via des API, et au passage d'une plateforme sur site à une plateforme cloud dans le but d'améliorer l'échelle et les performances des applications, ainsi que le centre de données et la stratégie informatique à long terme.

Les défis de la modernisation des applications se résument généralement au coût et à la complexité. Transférer une application sur site vers le cloud sans se soucier du retour sur investissement revient à effectuer la migration des applications simplement pour le plaisir de les déplacer. En revanche, d'autres applications pourraient bénéficier de manière significative d'un changement de plateforme ou d'architecture, mais elles sont si fortement liées aux systèmes et à l'infrastructure existants que la complexité de la modernisation pourrait l'emporter sur les avantages.

La clé du succès de la modernisation des applications, comme la plupart des choses, se résume en fin de compte à la stratégie et à la sélection de projets de modernisation des applications où les avantages du cloud (vitesse, performance, évolutivité, développement de nouvelles fonctionnalités) sont ceux qui offrent à l'application en question un chemin clair vers l'amélioration de l'expérience client et du retour sur investissement.

Découvrez comment IBM permet de moderniser plus rapidement vos applications
Pourquoi moderniser les applications existantes ?

Les applications existantes sont généralement monolithiques. Les applications monolithiques présentent deux caractéristiques qui rendent souhaitables leur modernisation : elles sont difficiles à mettre à jour et elles sont difficiles et coûteuses à mettre à l'échelle.

Les applications monolithiques sont difficiles à mettre à jour pour des raisons architecturales. Tous les composants d'une application étant fournis ensemble, il est difficile et coûteux d'ajouter des fonctions en raison de la complexité et des problèmes d'intégration.

Pour les mêmes raisons, il est difficile et coûteux de les mettre à l'échelle. Si un seul composant d'une application rencontre des problèmes de chargement et de performances, il peut être nécessaire de mettre l'échelle verticalement l'ensemble de l'application uniquement pour répondre aux besoins du composant le plus exigeant. Cette approche entraîne un gaspillage considérable de ressources informatiques.

En modernisant une application pour la transformer en architecture de microservices, les composants sont plus petits, faiblement couplés et peuvent être déployés et mis à l'échelle indépendamment les uns des autres. Bien que cette approche comporte son propre lot de défis, elle apporte le plus de valeur fondamentale à la modernisation.

La vidéo suivante explique plus en détail les architectures de microservices :

Évaluations de la modernisation des applications

La meilleure façon de commencer un projet de modernisation des applications est de procéder à leur évaluation. Faire l'inventaire de ce dont vous disposez est presque toujours l'une des façons les plus évidentes de commencer une transformation de ce type.

Une fois que vous disposez de la liste des applications, vous pouvez commencer par comparer toutes ces applications par rapport à un axe x et y de facilité/difficulté et d'augmentation potentielle de valeur en cas de modernisation. Vous pouvez également considérer la valeur « potentielle » par rapport à ce qu'une application représente pour l’expérience client et l’avenir de votre organisation.

Les applications qui se trouvent dans le quadrant supérieur droit de cette grille de valeur élevée et de faible effort sont celles qui sont les plus évidentes et les moins litigieuses pour commencer un projet de modernisation des applications.

Les décisions les plus délicates concernent les applications de grande valeur qui sont difficiles à déplacer. Pour ces dernières, il n'est pas non plus nécessaire d'adopter une stratégie du type « tout ou rien » dès le premier jour. Dans ce cas, il existe des approches de la modernisation des applications qui peuvent réduire les risques et les coûts tout en faisant évoluer votre portefeuille dans la bonne direction.

Modèles de modernisation des applications

Il existe quelques approches connues de la modernisation des applications qui consistent à combiner la plateforme, l'architecture de l'application et l'exposition de la fonctionnalité de l'application via une API.

Du monolithe aux microservices. Le modèle le plus courant de modernisation des applications consiste à restructurer et à décomposer une application monolithique en un ensemble de petits microservices faiblement couplés.

Dans l'exemple d'architectures de microservices ci-dessus, une application de vente au détail multiniveau est décomposée en microservices représentant tous les services individuels de l'application, chacun avec sa base de données et son modèle de données.

Une approche dans cet espace s'appelle le « strangler pattern » (ou modèle étrangleur). Au lieu de décomposer le monolithe d'un seul coup, ce modèle consiste à démonter l'application petit à petit, en retirant d'abord les parties les plus faciles et les plus importantes pour faire disparaître, finalement, le monolithe.

Migration vers le cloud. Le changement de plateforme ou réhébergement d'applications, qui fait généralement partie de la restructuration en microservices, s'inscrit pratiquement toujours dans le processus de modernisation. S'il est possible de simplement effectuer telle quelle la migration des applications sans procéder à une réécriture substantielle, le plus souvent, la valeur se trouve dans la restructuration de l'application pour mieux tirer parti des modèles cloud, généralement en optimisant les conteneurs et Kubernetes. (En savoir plus sur la migration vers le cloud.)

Exposer la fonctionnalité via des API

Enfin, une autre approche de la modernisation peut consister à laisser une application en place, mais à exposer ses fonctions ou ses données de manière sécurisée via des API. Cette approche, qui repose davantage sur l'intégration que sur la migration, permet aux nouvelles applications cloud natives de tirer simplement parti des fonctionnalités des systèmes et des données existants.

Technologies clés pour la modernisation des applications

Il existe un large éventail de technologies qui peuvent faciliter les processus de modernisation qu'exécutent la plupart des organisations.

Cloud privé, cloud hybride et multicloud

Si le cloud public est un élément essentiel de toute stratégie de modernisation, les stratégies de cloud privé, hybride et multicloud sont également d'une importance capitale pour des raisons de sécurité, de temps d'attente et d'architecture.

Pour un certain nombre de raisons, une organisation peut ne pas être prête à passer directement du centre de données au cloud public. En outre, les autres modèles de cloud peuvent permettre de résoudre toute la complexité architecturale et politique du déploiement de certaines charges de travail en fonction de leurs caractéristiques uniques.

Conteneurs et Kubernetes

Les conteneurs et Kubernetes se sont imposés non seulement comme un concurrent des machines virtuelles (VM) en tant que forme d'informatique polyvalente dans le cloud, mais aussi comme un élément clé des stratégies de cloud hybride et de modernisation des applications.

La conteneurisation permet d'empaqueter une application de manière cohérente et légère, afin qu'elle puisse fonctionner de manière cohérente dans les environnements d'ordinateur de bureau, cloud ou sur site. Ce type de flexibilité représente un véritable avantage pour les organisations qui planifient leur avenir dans le cloud.

Solutions connexes
Red Hat OpenShift on IBM Cloud

Avec Red Hat OpenShift on IBM Cloud, les développeurs OpenShift disposent d'un moyen rapide et sécurisé de conteneuriser et de déployer des charges de travail d'entreprise dans des clusters Kubernetes.

Découvrir Red Hat OpenShift on IBM Cloud
IBM WebSphere Hybrid Edition

WebSphere Hybrid Edition est l'ensemble complet d'environnements d'exécution et d'outils de modernisation d'applications WebSphere, qui prend en charge les déploiements sur site et dans les principaux clouds publics, dans des machines virtuelles, des conteneurs et Kubernetes.

Découvrir WebSphere Hybrid Edition
Modernisation de l’infrastructure informatique

La modernisation des applications nécessite une infrastructure moderne. Modernisez les applications, les serveurs et le stockage en place pour les intégrer de manière transparente au cloud hybride et pour qu'ils fassent office de centre de données pour tout ce qui concerne l'IA.

Découvrir la modernisation de l'infrastructure informatique
Ressources Planifiez votre parcours vers un portefeuille d'applications pérennes

Engrangez les gains de la modernisation dès le début en identifiant les applications qui sont au cœur de votre activité et en modernisant leurs principales dépendances.

Guide pratique de la modernisation des applications

Découvrez comment accélérer la modernisation de vos applications et améliorer la productivité des développeurs, l'efficacité opérationnelle et la standardisation.

Qu'est-ce que Kubernetes ?

Kubernetes est une plateforme open source d'orchestration de conteneurs qui automatise le déploiement, la gestion et la mise à l'échelle des applications conteneurisées.

Pour aller plus loin

Profitez des compétences et des outils d'IBM pour moderniser les applications dont votre équipe a besoin pour stimuler l'innovation et faire progresser votre entreprise. Plus de 100 000 spécialistes et consultants sont prêts à vous aider à repenser vos processus, vos applications et vos infrastructures cloud. Plus de 20 000 clusters de production Kubernetes fonctionnent sur IBM Cloud, et plus de 3 200 clients utilisent IBM Software sur la plateforme cloud Red Hat.                                                   

Sélectionner un défi et commencer