Le développeur citoyen est-il le nouveau visage de l'agilité ?

Publié: 2022-03-11

Avec une écrasante majorité d'entreprises qui numérisent leurs opérations et des équipes de développement talentueuses en sous-effectif chronique, la date d'expiration des implémentations logicielles complexes approche à grands pas.

La pénurie de talents et les coûts pour y remédier surviennent à un moment où les plateformes de développement low-code offrent des solutions impressionnantes. Le principe du low code est simple : réduire la complexité du développement au point que les utilisateurs professionnels peuvent créer des solutions sans une compréhension approfondie de la programmation, des API ou de la manière de déployer des applications Web ou mobiles. Souvent présentées sous la forme d'une offre cloud SaaS (logiciel en tant que service) ou PaaS (plate-forme en tant que service), les solutions low-code simplifient de nombreux détails complexes du développement afin que l'utilisateur puisse se concentrer sur la création de fonctionnalités.

La société de recherche technologique Gartner prévoit qu'en 2022, le marché des plates-formes d'applications low-code augmentera de plus de 30 % par rapport aux niveaux de 2020. En tant que chefs de projet informatique et parties prenantes des processus métier, les chefs de projet sont en mesure de servir les intérêts parfois disparates et souvent cloisonnés de l'informatique et de l'entreprise en adoptant ces solutions low-code.

Mais quels sont les avantages et les limites de ces solutions, et comment peuvent-elles être mises en œuvre et appliquées dans vos équipes de projet ? La réponse pourrait résider dans le développement des citoyens, en développant une cohorte de membres d'équipe non techniques pour s'attaquer à une partie du travail qui encombre les équipes informatiques. En tant que chef de projet avec les bons conseils et les meilleures pratiques en place, vous pouvez utiliser le développement citoyen pour faire passer l'adoption du low-code de la perturbation au statu quo dans votre entreprise.

Les premiers moteurs du développement citoyen

L'idée que des utilisateurs non techniques développent des solutions techniques n'est pas nouvelle. Dès 1987, l'HyperCard d'Apple utilisait une interface graphique et un langage de programmation simplifié pour permettre aux non-programmeurs de produire des applications simples, similaires aux applications Web d'aujourd'hui. Mais le terme «développeur citoyen» est apparu pour la première fois dans une présentation au Gartner Symposium/ITxpo 2009 à Orlando. Et en 2014, un rapport Forrester a surnommé une nouvelle vague de plates-formes pour créer des applications orientées client "low code". Le rapport a identifié plusieurs précurseurs dans l'industrie émergente, notamment Mendix, Salesforce et Appian. Ces pionniers offraient des "alternatives plus rapides aux plates-formes de programmation traditionnelles" et permettaient aux utilisateurs "d'accélérer la livraison des applications en réduisant considérablement la quantité de codage manuel nécessaire". Ils ont depuis été rejoints par d'autres acteurs tels que Betty Blocks, ServiceNow et Microsoft Power Platform. Avec des conseils appropriés, ces développeurs citoyens peuvent créer des solutions à petite échelle pour eux-mêmes ou leurs équipes, ou dans certains cas, créer des solutions numériques à l'échelle de l'entreprise.

Une enquête IBM de 2014 a révélé que 80 % des décideurs informatiques et commerciaux utilisaient des développeurs citoyens dans une certaine mesure. Même alors, l'adoption était provisoire et à petite échelle. Ce n'est qu'en 2021 que le Project Management Institute a lancé une série de cours de développement citoyen, la première du genre. Ainsi, pendant près d'une décennie, il n'y avait pas de normes de l'industrie, de références ou de formation formalisée pour les employeurs à référencer, encore moins pour les chefs de projet à mettre en œuvre. Pendant la majeure partie des années 2010, les plates-formes low-code étaient considérées comme trop perturbatrices, créant un recul au sein des organisations.

Les choses ont changé depuis, c'est un euphémisme. Gartner estime que d'ici 2024, 80 % de tous les produits et services technologiques seront créés par des développeurs citoyens, contre seulement 25 % en 2014. Il attribue cette expansion rapide à la pandémie de COVID-19 : initiatives pour gérer une main-d'œuvre soudainement éloignée, de nouveaux modèles et processus commerciaux ont émergé. Ces événements faisaient suite à l'adoption accélérée des frameworks Agiles ces dernières années, en mettant l'accent sur la rapidité et des cycles de développement plus courts.

Tout cela, combiné à une pénurie de développeurs, a créé une opportunité pour les développeurs citoyens de résoudre un certain nombre de problèmes.

Chronologie intitulée "Une histoire du développement citoyen". Inclut "1987 : Apple lance HyperCard, la première d'une nouvelle génération de plates-formes de développement d'applications rapides". « 2009 : Gartner invente le terme « développeur citoyen » lors de son symposium annuel Gartner/ITxpo à Orlando. » « 2014 : Forrester publie un rapport qui introduit le terme « low code » dans le contexte de l'identification de plusieurs pionniers, notamment Mendix, Salesforce et Appian. » « 2019 : Salesforce acquiert Tableau pour étendre les capacités low-code/no-code. » "2021 : Gartner estime le chiffre d'affaires total des technologies de développement low-code à 11,3 milliards de dollars."

Avantages du code bas

Vitesse

Pour les chefs de projet informatique, les programmes de développeurs citoyens accélèrent les délais en rationalisant les activités d'innovation et en réduisant la dépendance à un pool limité de développeurs professionnels. Cela peut prendre des mois pour qu'une application Web traditionnelle soit prête pour la version initiale ; même un produit minimum viable (MVP) prend des semaines à se développer. À l'aide d'une plate-forme low-code, une équipe peut rassembler plusieurs MVP dans le même laps de temps et utiliser les informations de ceux-ci pour guider leurs efforts de développement. Les cycles d'itération se réduisent proportionnellement.

Par exemple, un développeur professionnel créant un outil de notification pourrait passer une journée entière à concevoir une interface simple pour interagir avec une API, à configurer l'authentification et la sécurité, à tester et enfin à déployer l'application pour un usage interne. Sur une plateforme low-code, un développeur citoyen peut atteindre le même niveau de fonctionnalité et de sécurité en quelques minutes, et trois clics plus tard partager sa création avec le reste de l'équipe.

Souplesse

Les logiciels prêts à l'emploi ne correspondent pas toujours au flux de travail ou à la structure d'une entreprise. Mais les solutions construites sur des plates-formes low-code peuvent être personnalisées en fonction des besoins particuliers de votre entreprise. Par exemple, si votre processus métier nécessite la possibilité de faire remonter un problème à un certain responsable et que le package standard ne peut pas le faire, une solution low-code personnalisée est une bonne alternative.

Une solution low-code peut également combler les lacunes d'intégration entre vos systèmes existants sans avoir à travailler directement avec une API. Par exemple, si votre CRM existant n'est pas capable de publier un message sur un canal Slack spécifique, une solution low-code pourrait rapidement et facilement combler cet écart. La plupart des plates-formes disposent de nombreuses options d'intégration qui permettent à leur service de communiquer avec les bases de données et les API d'applications populaires basées sur le cloud ou sur site telles que Jira, Gmail, Oracle ou Shopify. Ces intégrations offrent à un projet plus d'options qu'une solution mal adaptée, prête à l'emploi ou une solution personnalisée coûteuse ; vous pouvez construire avec plus de fonctionnalités en utilisant peu de code.

Imaginez la différence que cela pourrait faire pour vos projets. Le backlog de l'équipe de développement peut être réévalué, certains besoins étant dérivés et ciblés pour une solution low-code développée par les citoyens. Cela peut donner au service informatique le temps de résoudre des problèmes tels que la dette technique, qui peuvent souvent être ignorés lorsque les calendriers sont serrés. Et les solutions mises en œuvre via une plate-forme low-code approuvée par le service informatique peuvent atténuer les problèmes créés par le shadow IT. L'équipe de développement elle-même peut examiner un ensemble de besoins ou d'exigences, puis recommander et mettre en œuvre des solutions à l'aide d'une plate-forme low-code dans le cadre ou dans l'ensemble de la pile technologique.

Quand utiliser le code bas

Même si un faible code peut améliorer les taux de rapidité de résolution et réduire les coûts de création de logiciels, il présente quelques inconvénients. En tant que chef de projet, vous devrez comprendre les limites des services low-code afin de pouvoir prendre des décisions éclairées quant au moment où la plate-forme que vous avez choisie est appropriée pour un projet. Voici quelques conseils:

  1. Préparez-vous à rester sur une seule plateforme. La structure et les fonctionnalités low-code sont différentes avec chaque service, de sorte qu'une solution utile que vous construisez sur l'un ne sera généralement pas transférée vers un autre. Cela signifie qu'à mesure que les organisations utilisent une plate-forme low-code particulière pour plus de solutions, le coût des modifications ultérieures augmente avec la dépendance accrue à cette plate-forme, ce qui décourage fortement d'en essayer une autre à l'avenir.
  2. Tenez compte des limitations de l'interface utilisateur/UX. Pour simplifier l'expérience des développeurs citoyens, un contrôle beaucoup plus précis de la gestion des événements, du style et des fonctionnalités de niche est prédéterminé et relativement immuable sur les plateformes low-code. C'est assez limité pour frustrer un bon designer. Par exemple, le faible code offre généralement moins de choix pour les fonctionnalités mobiles hors ligne, plusieurs méthodes d'authentification et des contrôles utilisateur spécialisés tels que les roues chromatiques. Demandez-vous si le projet sera OK avec une conception "assez bonne". Si votre équipe a besoin d'un contrôle précis sur l'apparence, la convivialité et le flux de l'application, le faible code n'est pas la solution.
  3. Surveillez les problèmes de maintenance. Les développeurs citoyens peuvent ne pas avoir une compréhension approfondie des tests logiciels efficaces ou un point de vue expérimenté sur la façon dont les solutions pourraient devoir changer à l'avenir. Pour les solutions simples, ce n'est pas vraiment un problème, mais à mesure qu'une solution low-code devient plus complexe, elle est plus susceptible d'être boguée, non sécurisée et difficile à maintenir. Si votre solution planifiée présente un degré élevé de complexité ou est essentielle à la mission, envisagez une pile technologique sans code réduit ou impliquez des développeurs plus expérimentés dans la construction de la solution.

Les plates-formes low-code ne sont pas idéales pour les situations qui nécessitent :

  • Plus de 200 utilisateurs internes cohérents, ce qui pourrait affecter les licences et les performances.
  • Des capacités hautement spécialisées, telles que la blockchain, les jeux ou la navigation en temps réel.
  • Accent mis sur une faible latence et des performances de haut niveau.
  • Une expérience utilisateur soigneusement conçue.

Malgré ces limitations, les cas d'utilisation potentiels pour les plates-formes low-code ne manquent pas. Considérez-les pour les projets qui impliquent :

  • Création d'outils internes tels que des applications d'intégration, des suivis de tâches ou des solutions de gestion des actifs pour des milliers d'appareils d'entreprise.
  • Mettre à jour les systèmes hérités en ajoutant de nouvelles fonctionnalités à une infrastructure obsolète mais intégrée ou en numérisant les flux de travail.
  • Concevoir des prototypes à faible risque ou des MVP qui peuvent servir de simple preuve de concept dans les premières étapes d'un projet sans investissement massif de temps ou de ressources. (Une fois que les tests utilisateurs ont commencé, le saut peut être fait vers l'informatique traditionnelle et la plus grande évolutivité qu'elle offre.)

Autonomiser les développeurs citoyens

Les plates-formes low-code sont conçues pour réduire la courbe d'apprentissage à un niveau plus gérable, permettant aux chefs de projet de cultiver des développeurs citoyens au sein de leurs organisations. Les développeurs citoyens peuvent provenir de n'importe quel domaine non informatique et sont issus de domaines aussi divers que l'analyse commerciale, la gestion de projet, le financement ou les opérations. Toute personne connaissant la technologie et désireuse d'apprendre peut être formée pour intégrer le développement low-code dans son travail, à condition que le chef de projet comprenne les écarts entre ses capacités et celles des développeurs professionnels. Les développeurs citoyens n'ont pas besoin d'être des maîtres du codage pour collaborer avec l'informatique afin de faire le pont entre les besoins techniques et commerciaux. En acquérant une meilleure compréhension du cycle de vie de la livraison de logiciels et en assumant certaines des responsabilités qui nécessitent traditionnellement des connaissances en programmation, ils deviennent à la fois des experts en la matière, des analystes commerciaux et des ressources informatiques.

Les organisations tirent le meilleur parti des plates-formes low-code et des développeurs citoyens en suivant ces bonnes pratiques :

  • Offrir de la formation. Facilitez l'adoption du low-code grâce à des sessions de formation et des démonstrations de cas d'utilisation pertinents.
  • Enseigner de nouveaux concepts. Présentez aux développeurs citoyens les tests, la documentation et les concepts de composants réutilisables pour améliorer la qualité des solutions qu'ils créent.
  • Établir des garde-corps. Fournissez une assistance en matière de gouvernance aux développeurs citoyens, par exemple en ajoutant des politiques spécifiques de protection contre la perte de données et en configurant des environnements de bac à sable pour l'expérimentation.
  • Encouragez la collaboration. Encourager les développeurs citoyens et professionnels à générer ensemble des solutions, notamment sur des projets complexes intégrant du low code. Cela peut conduire à une meilleure compréhension des exigences, des possibilités de formation polyvalente et à une meilleure appréciation de leurs rôles distincts dans l'organisation. La combinaison de l'expertise technique de l'équipe informatique avec le sens des affaires des développeurs citoyens peut conduire à des solutions qui servent mieux l'organisation.

Les développeurs citoyens doivent avoir ces types de conseils. Certains seront trop timides pour essayer quoi que ce soit au-delà d'un premier pas, et d'autres créeront des dégâts en raison de leur enthousiasme excessif. Fournir une formation et des directives aide les nouveaux utilisateurs de code bas à trouver un meilleur terrain d'entente, conduisant à une adoption de meilleure qualité au sein de l'entreprise.

Les développeurs citoyens offrent une nouvelle capacité à l'organisation qui peut être exploitée de manière tactique et stratégique. Certains utiliseront leurs nouvelles compétences dans leurs rôles commerciaux existants, contribuant aux efforts de changement numérique et aux projets informatiques avec une compréhension nouvellement améliorée des défis et des flux de travail. D'autres pourraient entrer dans un tout nouveau travail, en prenant en charge le développement d'applications low-code ou la conception de fonctionnalités dans le cadre de leurs tâches principales.

Les fournisseurs de plates-formes low-code savent qu'un support solide est important et ajoutent des fonctionnalités en conséquence. Les plates-formes les plus développées offrent des fonctionnalités de gouvernance au niveau de l'entreprise, des communautés d'utilisateurs dynamiques et de multiples façons d'apprendre.

Infographie intitulée "Best Practices for Low-code Adoption" avec quatre éléments. "Fournir une formation" est accompagné d'une image d'un tableau de présentation et du texte "Démontrer des solutions low-code avec des cas d'utilisation pertinents". "Teach New Concepts" est accompagné d'une image d'une ampoule à l'intérieur de flèches circulaires et du texte "Améliorez la sortie en aidant les développeurs citoyens à apprendre des pratiques qui sont une seconde nature pour l'informatique mais qui leur sont inconnues". "Établir des garde-corps" est accompagné d'une image d'un presse-papiers et du texte "Créer un environnement bien gouverné où l'expérimentation ne mène pas à de mauvais résultats". "Encourage Collaboration" est accompagné d'une image d'une poignée de main et du texte "Ne gardez pas les développeurs citoyens et professionnels dans des silos séparés ; laissez-les travailler ensemble."

Pour encourager une adoption plus large par les développeurs professionnels, certaines plates-formes adoptent des concepts familiers tels que le contrôle du code source, les modules de test et la gestion du cycle de vie des applications. Cela offre le meilleur des deux mondes : ils peuvent utiliser peu de code avec un ensemble d'outils robustes pour créer rapidement des applications de qualité sans abandonner leurs outils existants pour des solutions plus complexes. Et des innovations telles que les méthodologies de conception à code promettent d'alléger les contraintes existantes de ces plateformes, comme les choix UX/UI limités, dans les années à venir.

Un champ en expansion

Des investissements importants sont réalisés dans les plates-formes low-code par les acteurs établis et les startups. Microsoft a récemment annoncé une croissance de 97 % d'une année sur l'autre sur sa plate-forme Power et publie de nouvelles fonctionnalités à un rythme fulgurant. Les investissements dans les startups low-code/no-code comme Bubble et Airtable ont augmenté de 415 millions de dollars sur le marché américain sur une période de cinq ans. Alors que les entreprises cherchent à étendre davantage leurs capacités numériques, les développeurs professionnels continueront d'être rares et le nombre de développeurs citoyens augmentera. Les projections montrent que les développeurs citoyens seront plus nombreux que les développeurs professionnels 4 pour 1 d'ici 2023.

Pour un sous-ensemble important d'applications, le développement citoyen peut offrir un mélange pratique de rapidité, de simplicité et de flexibilité. Il ne remplacera pas le travail des équipes de développement professionnelles, mais il peut fournir des solutions puissantes pour améliorer ces équipes alors qu'elles naviguent dans le paysage logiciel en constante évolution.