ra2 studio - Fotolia
Bien expliquer pourquoi les microservices constituent une bonne réponse à la modernisation du SI
Cet article résume brièvement comment les architectures de microservices peuvent contribuer à la modernisation des lourds SI legacy des entreprises.
Pour moderniser les applications legacy, il peut être utile de briser ce « monolithe » en microservices. L'idée derrière cette nouvelle architecture ? Ils sont petits et faciles à mettre à jour. Avec les microservices, il est ainsi plus rapide de corriger les défauts car il y a beaucoup moins de code à analyser qu'avec un monolithe. Un autre avantage : l'amélioration du déploiement en production. Les microservices sont autonomes et bien adaptés aux architectures faiblement couplées. Avec un couplage plus lâche, il y a moins de risques lors du déploiement, ce qui permet de réaliser des releases plus fréquentes.
Toutefois cette facilité des microservices en termes de de déploiement modifie quelque peu les responsabilités en matière de releases. Avec un SI monolithe, le département IT est fortement impliqué dans les calendriers de sortie des nouvelles fonctionnalités. Leur ajout est clé et les fonctions doivent être prêtes pour une nouvelle version. Les microservices, parce qu’ils réduisent les temps de développement, ont également la capacité d’accélérer la communication de ces nouvelles fonctions au département marketing.
Pour profiter des avantages des microservices et de cette fragmentation - et pour vraiment moderniser les applications - il est important de démarrer petit. Certains architectes vont à l’inverse parce qu'ils veulent démontrer la valeur d'un projet dès le départ. Cependant, si la démarche s’étale dans le temps et que le SI est lentement segmenté, il est plus facile de faire évoluer le projet et d’identifier les prochaines applications ou services éligibles.
Une fois la décomposition des fonctions en microservices commencée, il sera plus facile de refactoriser les applications. Même si ces microservices sont mal formés, cela fonctionne. L’on pourra le refaçonner plus tard. C'est un projet plus abordable que d'essayer de refactoriser une fonction dans une application monolithique.
Enfin, l'un des grands avantages de l'utilisation des microservices pour moderniser les applications patrimoniales est la courbe d'apprentissage. Elle est plus courte pour les développeurs - les nouveaux arrivants peuvent être opérationnels plus rapidement. Les microservices offrent une flexibilité en matière de plateformes. Tant que l'API reste la même, chaque microservice peut utiliser un outil différent. Si un microservice est mieux implémenté en utilisant une base de données Cassandra au lieu de Microsoft SQL Server, il peut être modifié sans affecter les utilisateurs.