Sept erreurs à éviter avec les déploiements low-code

Pour numériser et automatiser les processus métier, les entreprises intensifient leurs initiatives de « développement citoyen », mais l'utilisation d'outils low-code et no code nécessite des précautions.
PublicitéActuellement, les entreprises déploient davantage d'outils et de processus low-code, car elles cherchent à développer plus efficacement et à soutenir les initiatives digitales des métiers. Pour que ces projets réussissent, il faut néanmoins éviter certaines erreurs courantes. Cet article adapté de CIO États-Unis présente sept d'entre elles.
Le cabinet de recherche Gartner a prévu que le marché mondial du développement low-code totalisera 13,8 milliards de dollars en 2021, soit une augmentation de 23% par rapport à 2020. L'augmentation du développement à distance pendant la pandémie a continué de stimuler l'adoption du low-code, selon le cabinet. Le développement d'applications low-code n'est pas nouveau, souligne Gartner, mais une confluence de « ruptures numériques, d'hyperautomatisation et l'essor de l'entreprise composable » a entraîné un afflux de solutions et une demande croissante. Le low-code en tant que tendance technologique et de société devrait continuer à croître de manière significative, prédit le cabinet. Le marché comprend des produits tels que des plates-formes d'applications low-code, des suites intelligentes de gestion des processus métier, des outils d'automatisation robotique des processus (RPA) et des plates-formes d'automatisation et de développement citoyen.
L'accélération de la transformation digitale pousse les décideurs IT à augmenter considérablement la vitesse de livraison des applications, et les outils low-code répondent à cette attente. La demande croissante d'outils applicatifs personnalisés pour soutenir la transformation numérique a fait émerger des développeurs citoyens en dehors du service IT, ce qui a contribué à son tour à l'essor des outils low-code, selon Gartner. Le déploiement de produits et de processus low-code peut cependant être parsemé d'embûches. Les organisations doivent en être conscientes, afin de pouvoir les éviter ou d'en minimiser l'impact sur leurs services de développement.
1. Oublier les bonnes pratiques de base du développement
« Les plus gros problèmes que j'ai rencontrés proviennent d'une mauvaise compréhension de ce qu'une stratégie low-code apporte réellement », déclare Mandy Andress, RSSI d'Elastic, éditeur de solutions de recherche et analyse de données. « De nombreuses organisations adoptent une stratégie low-code pour économiser de l'argent ou accélérer le développement. Mais cela ne fonctionne que si elles comprennent les coûts qu'une stratégie low-code peut optimiser. » Une stratégie low-code peut aider à réduire les coûts RH sur un projet, en permettant à des développeurs moins expérimentés de créer des fonctionnalités avancées, explique Mandy Andress. La vitesse de développement peut également être un bénéfice, en particulier si les composants sont réutilisés dans plusieurs applications. « Ce que beaucoup d'organisations oublient, ce sont les processus métier globaux et la gouvernance, nécessaires pour garantir qu'une application est développée pour répondre aux besoins métiers », explique Mandy Andress. « Quelles sont les exigences métiers ? Quels sont les principaux contrôles métiers que nous devons mettre en oeuvre, comme la ségrégation des tâches ? »
PublicitéDans un poste précédent, Mandy Andress a été sollicitée pour aider un projet low-code, en raison de préoccupations sur le manque de contrôles métiers clefs dans l'application. Après avoir examiné les efforts réalisés, elle a découvert que l'application ne mettait pas en oeuvre des règles métiers critiques « parce que l'équipe ne voyait pas la nécessité de suivre le processus SDLC [cycle de vie de développement logiciel] défini pour les projets de développement low-code, et n'avait pas entièrement documenté et examiné les exigences métiers », relate la RSSI. La refonte de l'application « a triplé le temps nécessaire à l'achèvement, annulant toutes les économies réalisées par l'équipe en adoptant une approche de développement low-code », déplore Mandy Andress.
2. Choisir des compétences inadaptées
L'un des avantages des outils low-code est qu'ils peuvent réduire le besoin en développeurs expérimentés pour réaliser les projets. Mais cela ne signifie pas que le besoin de professionnels qualifiés disparaît. « Les équipes déployées sur le développement low-code doivent maîtriser parfaitement les différentes plates-formes low-code, disposer des certifications appropriées sur les produits et savoir ce qu'il faut faire et ne pas faire », affirme Vinay Mummigatti, vice-président et directeur de l'automatisation chez LexisNexis Legal & Professional, un groupe fournissant des services d'information juridique et des données de consommation. « D'après mon expérience, déployer des ingénieurs logiciels qui savent écrire des applications sur mesure, nécessitant une programmation intensive, pour développer des solutions low-code est une erreur », pointe Vinay Mummigatti. « Ils écrivent le plus souvent des milliers de lignes de code et se retrouvent avec des applications hautement personnalisées, difficiles à maintenir ou à faire évoluer. Et ce n'est pas ce qu'une plate-forme low-code fait de mieux. »
Par exemple, chez LexisNexis, une équipe d'ingénieurs J2EE a été formée sur une plate-forme d'automatisation low-code de premier plan pour bâtir une application de « traitement légal des commandes », explique Vinay Mummigatti. « Au lieu de créer l'application selon la méthodologie et les meilleures pratiques prescrites par le fournisseur de la plate-forme, en vue de tirer parti des fonctionnalités prêtes à l'emploi, l'équipe de développement a utilisé la plate-forme uniquement en tant que moteur back-end pour orchestrer le flux de travail, écrivant un code complexe pour toute la partie fonctionnelle », dit-il. L'écriture de ce code personnalisé a multiplié par trois les estimations initiales de coût et de délais, entraînant également de graves soucis de performance et de maintenabilité. Cela a finalement abouti à une réécriture complète de l'application, en utilisant l'équipe de services professionnels du fournisseur, raconte Vinay Mummigatti.
3. Négliger le pilotage métier
Les plates-formes low-code permettent avant tout à des développeurs citoyens issus des communautés métiers de pouvoir livrer rapidement des applications, rappelle Vinay Mummigatti, mais laisser les utilisateurs métiers à l'écart des prises de décision initiales est une mauvaise idée. « L'une des principales erreurs observées est que les utilisateurs métiers ne sont pas impliqués dès le début d'un projet », explique Vinay Mummigatti. « Avec une plate-forme low-code de 'développement piloté par des modèles', l'engagement dès le départ des utilisateurs métiers est la clef du succès. L'absence d'engagement métier au démarrage peut entraîner une refonte majeure et des écarts de budget ou de calendrier. »
Les projets low-code ont besoin d'un alignement solide entre IT et métiers. Un exemple cité par Vinay Mummigatti est une plate-forme d'embarquement client, conçue et développée avec un engagement métier minimal. Lorsque la plate-forme a été livrée, les utilisateurs métier ont rejeté la logique du processus, les règles de décision, les rapports et les interfaces utilisateur, car ceux-ci imposaient une gestion du changement complexe au niveau opérationnel, relate-t-il. « Quand les choses sont bien faites, les métiers sont engagés dès le premier sprint », affirme Vinay Mummigatti. « Les utilisateurs métier peuvent visualiser comment les modèles de processus sont conçus, la logique métier définie, les formulaires et interfaces utilisateurs créés et les données transformées à chaque étape » dans une plate-forme low-code. Cela débouche finalement sur une application qui est « exactement comme le métier l'imaginait », dit-il.
4. Ne pas actualiser la culture et l'organisation
« Les technologies low-code et no-code sont d'excellents outils pour soutenir la transition vers des applications gérées par les métiers et le développement citoyen, si leur déploiement est bien mené », estime Andrew Kum-Seun, analyste de recherche senior sur les applications au sein du cabinet de recherche Info-Tech Research Group. « De nombreuses organisations oublient que des changements importants dans la culture d'entreprise, les logiciels, les structures de gestion des risques ainsi que les modèles d'exploitation IT sont nécessaires pour que ce nouvel environnement s'épanouisse », déclare Andrew Kum-Seun. « Malheureusement, les pratiques traditionnelles de livraison de logiciels, les équipes métiers et IT en silos et la mauvaise qualité des systèmes d'entreprise limitent le véritable potentiel des technologies low et no-code et augmentent leurs coûts de mise en oeuvre et de maintenance à long terme. »
L'IT doit passer d'un rôle d'opérateur et maître d'oeuvre « à celui de partenaire de confiance, coach et supporteur de plate-forme », explique Andrew Kum-Suen. « Le métier doit être responsable de ses décisions de mise en oeuvre et de développement de logiciels, et être transparent sur les changements qu'il apporte à l'environnement de l'entreprise. Après tout, la valeur réelle des technologies low et no-code apparaît quand nous sommes prêts à optimiser la manière dont nous travaillons, pour tirer pleinement parti de leurs fonctionnalités. »
5. Définir un agenda trop ambitieux pour les outils
Les plates-formes low-code peuvent être des outils précieux pour améliorer le développement. Mais elles ne sont pas parfaites. « Une erreur majeure avec les plates-formes low-code est de ne pas tenir compte de certaines limitations techniques », observe Vinay Mummigatti. Sur certains projets, LexisNexis Legal & Professional a essayé d'étendre ses plates-formes low-code à la gestion d'applications transactionnelles à haute volumétrie, avec des fonctionnalités de reprise sur incident et de tolérance aux pannes, ou du traitement par lots de gros volumes.
« Nous avons constaté que les plates-formes low-code ne s'adaptent pas et ne fonctionnent pas bien dans des situations impliquant de l'intégration de données, l'orchestration de services sur plusieurs systèmes ou des structures de données complexes », confie Vinay Mummigatti. La société a utilisé des plates-formes low-code pour des applications de traitement des prêts hypothécaires et de lutte contre le blanchiment d'argent, qui impliquaient le traitement par lots de documents et de données provenant d'applications transactionnelles à gros volumes. Dans les deux scénarios, l'entreprise a observé que les plates-formes low-code ne pouvaient pas fournir la vitesse et la qualité dont elle avait besoin. Les applications sont tombées en panne au milieu du processus. « Nous n'avions pas la capacité d'assurer le traitement à 100 % de gros volumes de données en mode batch » avec des plates-formes low-code, explique Vinay Mummigatti. « C'était un défi opérationnel et réglementaire majeur, avec un fort impact sur l'expérience client. »
6. Déployer trop d'outils
Abuser d'une bonne chose n'est pas toujours une bonne idée. Cela vaut pour les outils low-code et no-code, en particulier si ceux-ci ne fonctionnent pas bien ensemble. L'éditeur de logiciels Nutanix a connu un tel problème, rencontrant ce que la DSI Wendy Pfeiffer compare à une « Tour de Babel ». En mettant en oeuvre de nombreux outils qui ne parlent pas le même langage, « votre équipe ne pourra pas atteindre de hauts niveaux d'automatisation », dit-elle. « Dans le cas de mon équipe, ce n'est qu'après avoir formé chaque membre à l'utilisation d'un seul outil que nous avons commencé à faire de réels progrès vers des opérations IT fonctionnant en mode autonome », explique Wendy Pfeiffer. « Il y a trois ans, seulement 15 % environ de nos services étaient exécutés de manière autonome. Aujourd'hui, ce nombre est plus proche de 85 %, la plupart des étapes initiales de ce voyage ayant été réalisées par des membres de l'équipe qui n'avaient jamais écrit de code d'automatisation auparavant, mais qui étaient des experts des opérations IT. »
En outre, la technologie low-code n'est peut-être pas aussi simple à mettre en oeuvre que les fournisseurs le promettent, pointe Andrew Kum-Seun. « Ses véritables avantages résident dans sa capacité à exploiter et à intégrer les divers services et données de vos applications d'entreprise, entrepôts de données et systèmes », dit-il. « Cependant, de nombreuses organisations sont limitées par leur architecture IT existante, ne disposent pas de définitions communes des données et leurs applications sont alourdies par la dette technique. » Les passerelles API (interfaces de programmation applicatives), les data lakes, les plates-formes cloud et d'autres outils d'intégration et d'agrégation peuvent aider à améliorer la compatibilité du système avec les technologies low-code, explique Andrew Kum-Seun. « Cependant, ces outils ne répondent pas aux défis fondamentaux d'architecture et de gestion des données », dit-il.
7. Perpétuer de mauvais processus
Le potentiel des outils low code est énorme, estime Wendy Pfeiffer. « Avec un peu de formation, n'importe quel membre de l'équipe IT peut automatiser des éléments clefs de ses workflows spécialisés, renforçant la pertinence et l'efficacité », dit-elle. « Mais mettre automatisation entre les mains de la masse n'est pas une panacée. Un très mauvais processus reste un très mauvais processus, même s'il est exécuté rapidement et de façon précise par une machine. » Il n'existe pas de « magie de la machine », qui transforme un mauvais processus manuel en un processus excellent, met en garde Wendy Pfeiffer. « Dans un premier temps, mon équipe doit décrire les processus candidats dans un langage simple », dit-elle. « Voir le travail à faire décrit de cette façon met en évidence les problèmes et conduit à améliorer les workflows. » Une fois que ce document est cohérent, le processus est prêt à être traduit en code par l'outil low-code.
L'automatisation fonctionne mieux quand elle est réalisée par paliers, dit Wendy Pfeiffer. « Les équipes IT pensent souvent qu'elles doivent automatiser de bout en bout un processus complexe problématique pour que l'automatisation ait un impact », dit-elle. « Mon équipe et moi avons appris que concentrer nos efforts sur l'automatisation des étapes les plus sujettes aux erreurs de nos processus - les étapes qui nécessitent le plus de travail de reprise - est vraiment la clef pour profiter des avantages de ces outils. »
Article de Bob Violino / CIO États-Unis (Adaptation et traduction par Aurélie Chandèze)
Article rédigé par

La rédaction de CIO Etats-Unis,
Suivez l'auteur sur Google+, Linked In, Twitter
Commentaire
INFORMATION
Vous devez être connecté à votre compte CIO pour poster un commentaire.
Cliquez ici pour vous connecter
Pas encore inscrit ? s'inscrire