olly - Fotolia

Microservices : comprendre les limites du low-code

Si le low-code peut accélérer le déploiement de certains microservices, en comprendre les limites permet aux équipes de développement de cerner les bons cas d’usage.

Pour rester dans la course face à ses concurrents, une organisation doit s’adapter aux nouvelles stratégies technologiques. Cependant, cela peut s’avérer difficile pour les entreprises qui emploient encore des méthodologies de développement traditionnelles.

Les plateformes low-code/no-code peuvent aider à relever ce défi en rationalisant les flux de développement et en automatisant les processus de déploiement des applications. Cela peut s’avérer particulièrement utile lorsque l’on travaille avec des applications modulaires, basées sur des microservices, qui nécessitent habituellement des niveaux d’expertise de développement et de support d’infrastructure plus importants.

Et si le low-code n’est pas toujours adapté aux systèmes distribués, il existe certainement des scénarios où il peut constituer une approche idéale.

C’est en comprenant les limites du low-code lors du développement de microservices qu’une entreprise peut utiliser cette technique à bon escient.

Les principales fonctionnalités d’une plateforme low-code

Pour rappel, le low-code est un style de dĂ©veloppement d’applications qui doit faciliter une livraison plus rapide des applications grâce Ă  une interface simplifiĂ©e, souvent basĂ©e sur des GUI. 

Une plateforme typique de dĂ©veloppement low-code contient les composants suivants :

  • un environnement de dĂ©veloppement intĂ©grĂ© visuel, tel qu’une interface de type glisser-dĂ©poser, qui permet au dĂ©veloppeur de dĂ©finir rapidement les modèles de donnĂ©es et les flux de travail de l’application ;
  • des mĂ©canismes d’intĂ©gration qui connectent en toute sĂ©curitĂ© les composants frontaux et les services back-end, principalement pour la gestion du stockage et la rĂ©cupĂ©ration des donnĂ©es ; et
  • un composant de gestion du cycle de vie des applications qui gère la crĂ©ation et le dĂ©ploiement des applications dans des environnements de prĂ©paration et de production.


L’interface graphique de la plupart des plateformes low-code permet d’automatiser de nombreux aspects de la conception des applications. Souvent, ces interfaces offrent un moyen rapide de redessiner l’IU d’une application pour différents types d’utilisateurs finaux ou d’ajouter de nouvelles fonctionnalités.

Dans le cas du développement de microservices, la présence d’un IDE traditionnel afin de corriger le code ou d’y ajouter des fonctionnalités avancées est un avantage majeur. Dans le meilleur des cas, la plateforme low-code est compatible avec les IDE du marché tels que VS Code et Jetbrain.

Avantages du low-code

L’adoption des microservices peut libérer les développeurs des contraintes des anciennes piles technologiques et des architectures monolithiques. Dans certains cas, les microservices construits avec un outil low-code permettent de renforcer ces avantages. Attention. L’approche low-code est profitable quand il s’agit de développer des applications ou des services simples, avec un faible nombre de points d’intégration.

  • RĂ©utilisabilitĂ©. Les microservices low-code permettent une rĂ©utilisation accrue des composants grâce Ă  des bibliothèques fonctionnelles et Ă  des listes dĂ©roulantes des principales caractĂ©ristiques de l’application.
  • ExpĂ©rience client. Le low-code permet aux dĂ©veloppeurs de s’adapter aux besoins des clients en ajoutant rapidement de nouvelles fonctionnalitĂ©s et des personnalisations aux collections de microservices, selon les besoins.
  • Mises Ă  jour des fonctionnalitĂ©s. Puisque l’on rĂ©utilise des portions de code, il est plus aisĂ© de rĂ©aliser des mises Ă  jour rĂ©currentes avec un tel outil.
  • Niveaux de productivitĂ©. Le dĂ©veloppement low-code permet aux dĂ©veloppeurs de produire plus d’applications en moins de temps, les cycles de livraison sont normalement accĂ©lĂ©rĂ©s et il est possible de livrer plus de code dans le mĂŞme temps imparti.
  • Gestion des coĂ»ts. Le low-code peut fournir une approche Ă©conome en ressources pour concevoir des applications modulaires, des processus automatisĂ©s et des flux de donnĂ©es, ainsi que pour attĂ©nuer la nĂ©cessitĂ© d’embaucher des dĂ©veloppeurs spĂ©cialistes d’un domaine ou de certains langages.

Les limites du low-code dans le développement de microservices

Gardez à l’esprit que l’approche low-code s’accorde mal avec les systèmes à grande échelle basés sur des microservices qui englobent des processus commerciaux complexes, en particulier lorsque de nombreuses équipes de développement sont impliquées.

Voici quelques-uns des inconvĂ©nients qui limitent son utilisation pour ces types d’applications :

  • CompĂ©tences en programmation requises. Les Ă©diteurs poussent l’idĂ©e qu’il est possible d’utiliser leurs plateformes sans aucune connaissance en programmation. Si cela est souvent vrai pour la construction d’applications mĂ©tiers basiques, de bonnes connaissances des architectures et du dĂ©veloppement de microservices sont nĂ©cessaires pour mener Ă  bien des projets impliquant une plateforme low-code.
  • Connaissance du SI nĂ©cessaire. De mĂŞme, le dĂ©ploiement de microservices ne peut se faire sans une connaissance des outils et des architectures en place. Évaluez dans le dĂ©tail les fonctionnalitĂ©s de l’outil low-code, sa compatibilitĂ© avec la chaĂ®ne d’outils CI/CD, l’architecture et les systèmes existants.
  • Personnalisation limitĂ©e. Bien que les modules prĂ©construits que l’on trouve dans les plateformes low-code soient pratiques Ă  utiliser, ces composants sont souvent gĂ©nĂ©riques et ne permettent pas forcĂ©ment de rĂ©aliser des personnalisations uniques ou complexes.
  • IntĂ©gration limitĂ©e. Lorsqu’on utilise l’approche low-code, il est souvent difficile d’intĂ©grer les plateformes Ă  des SI de haut niveau, Ă  des applications commerciales complexes ou Ă  de gros volumes de donnĂ©es. De mĂŞme, le code gĂ©nĂ©rĂ©, bien que parfois modifiable depuis un IDE traditionnel, peut s’avĂ©rer difficile Ă  embarquer.
  • Verrouillage propriĂ©taire. L’enfermement auprès d’un Ă©diteur est une prĂ©occupation majeure avec les systèmes low-code, car beaucoup de ces plateformes propriĂ©taires empĂŞchent les dĂ©veloppeurs de porter le code en dehors des environnements de dĂ©ploiement dĂ©finis par l’éditeur.
  • SĂ©curitĂ© et fiabilitĂ©. Avec ces outils, les dĂ©veloppeurs abandonnent une grande partie de leur contrĂ´le Ă  des services tiers, ce qui peut poser un risque de sĂ©curitĂ© lorsqu’ils travaillent avec des donnĂ©es commerciales sensibles. Un problème de plus en plus rĂ©current, quels que soient les services et outils employĂ©s. Aussi, il faut veiller Ă  ce que le code gĂ©nĂ©rĂ© par la plateforme respecte les mĂŞmes standards de qualitĂ© et de sĂ©curitĂ© dĂ©finis par les architectes de l’organisation.

Microservices et low-code : les cas d’usage

Une fois les limites du low-code comprises, il est tout à fait possible de lancer des projets basés sur des microservices avec ce type de plateforme.

Voici quelques-uns des cas d’usage typiques du dĂ©veloppement low-code :

  • Preuve de concept (POC). Puisqu’il permet aux dĂ©veloppeurs de bâtir rapidement des applications, le low-code est un moyen pratique de crĂ©er des POC qui justifient une migration vers les microservices. Par exemple, les programmeurs peuvent dĂ©montrer comment le dĂ©coupage d’une application monolithique existante amĂ©liorera un processus mĂ©tier particulier ou rĂ©duira les frais gĂ©nĂ©raux.
  • Applications Web modulaires. Les microservices créés Ă  l’aide d’une plateforme LCNC peuvent aider Ă  crĂ©er des applications Web simples et modulaires, que les dĂ©veloppeurs peuvent dĂ©ployer en peu de temps, puis mettre Ă  jour de manière indĂ©pendante au fil du temps, en fonction de l’évolution des besoins en matière d’évolutivitĂ© et de performances.
  • GĂ©nĂ©ration d’API. Le low-code est idĂ©al pour bâtir des API gĂ©nĂ©riques et rĂ©utilisables qui s’intègrent automatiquement au code source existant d’une application. Il n’est donc pas nĂ©cessaire d’écrire un code d’API dĂ©diĂ© pour chaque service individuel et plusieurs microservices peuvent travailler simultanĂ©ment avec une seule API. Des Ă©diteurs comme Software AG et Boomi proposent des solutions en ce sens.
  • Conteneurisation. La plupart des applications low-code peuvent communiquer avec des conteneurs et s’exĂ©cuter Ă  l’intĂ©rieur de ceux-ci, ce qui permet aux dĂ©veloppeurs de microservices d’avoir accès Ă  des outils d’orchestration cruciaux comme Kubernetes.
  • RĂ©duction des budgets de dĂ©veloppement. Si une organisation est contrainte de rĂ©duire son budget informatique, une plateforme low-code peut aider les dĂ©veloppeurs Ă  continuer Ă  produire de petits ensembles de microservices, sans les frais gĂ©nĂ©raux techniques associĂ©s au dĂ©veloppement Ă  grande Ă©chelle. Il faudra toutefois prendre en compte le coĂ»t de dĂ©ploiement et le modèle Ă©conomique de cet outil.

Pour approfondir sur BPM et RPA