Architecture en microservices : les coûts et bénéfices à prendre en compte

Pour la DSI, le monolithe a vécu. Devenu trop compliqué, trop consommateur de ressources et trop coûteux à faire évoluer, il est venu le temps de le remplacer. Sans repartir de zéro, il va falloir réécrire des fonctionnalités du mastodonte pour passer petit à petit à une architecture à base de microservices. Le but est d’obtenir un SI agile, résilient et performant. Comme toute évolution dans les entreprises, elle a évidemment un coût. En les anticipant, le management évaluera avec plus de satisfaction le ROI.

La mise de départ, la plus élevée

Le coût du démarrage reste le plus onéreux. En effet, il cache trois autres postes de dépenses. Le premier concerne tout d’abord la montée en compétences des équipes. Lorsqu’on passe du monolithe aux microservices, il faut apprendre de nouveaux processus, de nouvelle façon de faire, en adoptant éventuellement des cadres de travail agiles comme Scrum. Cela demande formation et aide de la part d’experts. 

Ensuite, le second coût concerne la réorganisation. Beaucoup de rôles vont changer au sein de l’entreprise. Cette mutation est due à l’adoption de cadres de travail agiles comme Scrum qui nécessite un product owner, un scrum master et de petites équipes de développement. Il leur faudra acquérir les méthodes de travail et de conduite de projets différents. 

Enfin, le troisième poste dépense est celui de la mise en place des outils. Au niveau matériel : bien dimensionner les serveurs, si on opte pour un SI en local (on premise). Là encore, les besoins en conseils sont flagrants. Dans le cas du cloud, la dépense est moindre, mais il convient de comparer les différentes offres et d’examiner avec soin les clauses particulières. L’explosion de l’offre de produits open source comme Kubernetes, outil d’orchestration du système, fait baisser la note. Ensuite vient le coût de montée en compétence sur des outils comme Docker, Akka ou encore Kafka Streams qui s’avèrent essentiels à la communication entre les microservices. Les nouveaux langages de programmation comme GO ou Scala sont, eux, distribués gratuitement. 

Les effets au long terme de la mise en place d’une architecture microservices

Sur le long terme, ces coûts de démarrage vont permettre de réduire la facture de la maintenance. En effet, faire évoluer un monolithe prend énormément de temps et de ressources. Quand il y a une erreur dans une application monolithique, tout s’arrête ! Le temps de restitution du service augmente sensiblement et les dépenses également. Avec une architecture microservices, on gagne en efficacité tout en réduisant les coûts de maintenance de 70 %. Les problèmes sont localisés donc faciles à détecter, débugger et corriger. Pour les évolutions, il suffit d’apporter le changement sur une brique applicative ou technique sans impacter le reste du SI.

Le prix de la vélocité et celui de la qualité

La rapidité de mise en production varie d’une entreprise à une autre en fonction de la complexité du service ou produit. Mais le développement de microservices se révèle beaucoup plus rapide en raison de leur « simplicité ». Cette vélocité accélère le time to market des nouvelles fonctionnalités, ce qui peut ainsi attirer de nouveaux clients et amplifier leur satisfaction. Surtout, ce facteur augmente la compétitivité de l’organisation.

Tous les outils utilisés pour implémenter l’architecture microservices, si on leur associe les méthodes agiles comme Scrum ou DevOps aboutissent au développement de l’automatisation du processus d’intégration et des tests associés. Ces derniers libèrent du temps pour les développeurs afin qu’ils puissent élaborer un code robuste et de qualité. Plus les tests sont automatisés, plus leur périmètre s’élargit. On détecte alors les problèmes beaucoup plus en amont, ce qui garantit des livrables de qualité. L’automatisation du pipeline de déploiement et du pipeline de tests permet de s’assurer qu’on a un bon produit. On diminue le temps d’indisponibilité du système et les incidents en production. L’entreprise dégage du temps de disponibilité, gagne de la compétitivité et réduit le temps de maintenance. L’automatisation coûte un peu, mais rapporte beaucoup.

Un nouvel équilibre grâce à l’architecture microservices

Il faut trouver le juste équilibre entre vélocité et qualité. Les méthodes agiles augmentent la vélocité et se focalisent sur la rapidité à atteindre l’objectif. Ces méthodes intègrent aussi le « fail fast » ou échec rapide. Ainsi, on tire rapidement les leçons d’une erreur et on rectifie le tir immédiatement. On peut penser que la vitesse va se faire au détriment de la qualité. Sauf qu’avec les architectures microservices, les problèmes liés à la vitesse sont détectés bien avant la mise en production. La qualité sera moyenne hors production mais elle sera revue à la hausse au moment de la production. Les microservices dopent la vélocité sans jamais sacrifier la qualité.

_____________________________________________________________________________

organisation-performante-qui-sommes-nous-nidhal

Tout simplement “Agile Fan” !

N’hésitez pas à me faire un retour sur cet article ou à me contacter sur LinkedIn pour partager nos actualités!

Nidhal

Vous aimerez aussi ...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Recevez nos articles

Recevez chaque mois par e-mail les derniers articles et livres blancs publiés, ainsi que des informations concernant l’actualité IT ! 

Partagez nos articles

Rechercher

Rechercher

Vous faites partie des 10 000 visiteurs mensuels du blog !

Merci pour votre visite ! 

Restez informé.e des dernières tendances en vous inscrivant à notre newsletter mensuelle