Aller au contenu

TuringBots, le soulèvement des machines

Les Turing Bots révolutionnent le paysage du développement logiciel : de simples assistants à des partenaires à part entière. Découvrez comment ces IAs transforment l'industrie. La question n'est plus de savoir 'si', mais bien 'quand' votre organisation franchira le cap des Turing Bots.

TuringBots: une avancée promettant 50% de gains dès demain, inspirée par Alan Turing pour automatiser et optimiser les processus de création d'applications avec intelligence.

En 2011, Marc Andreessen disait "Software is eating the world". Notre monde actuel lui donne raison. Tous les domaines de notre vie quotidienne sont de plus en plus connectés et inter-connectés, interagissant en permanence, dans nos transports, nos échanges bancaires, nos télécommunications, nos véhicules, la défense...
Dans un environnement entièrement adressable et modifiable par du code, la qualité de ce dernier comme la vitesse à laquelle il est produit sont primordiales.
Mais, même en suivant les bonnes pratiques et en tenant compte des dernières évolutions du métier d'ingénieur logiciel, beaucoup plus en communication avec le métier afin d'avoir un produit au plus proche du besoin client et du réel, les besoins de performance de l'écosystème sont incompatibles avec les erreurs humaines.

Dans ces conditions, augmenter les capacités des développeurs grâce à l'IA semble une bonne opportunité, surtout en tenant compte des dernières évolutions exponentielles des technologies d'IA.

Si "software is eating the world", aujourd'hui, il semblerait que "AI is eating the software". Les dernières technologies, notamment les turing bots semblent une bonne opportunité de palier aux faiblesses humaines des développeurs, en les soulageant des démarches les plus rébarbatives et à faible valeur ajoutée, leur permettant d'être plus efficaces et de fournir des solutions de meilleure qualité.

Dessine moi un Turing Bot

D'après le Forrester, les turing bots sont des logiciels utilisant l'IA-powered pour aider les équipes de développement à planifier, concevoir, construire, tester et déployer le code de leurs applications.
Cela consiste à fournir des indications en langage naturel au bot, ce qui implique de connaître suffisamment son heuristique pour pouvoir communiquer correctement avec lui et obtenir des résultats corrects, d'où la popularité du terme de 'prompt engineer' pendant quelques semaines lors de l'arrivée de chatGpt.
Mais, une fois maîtrisé, le turing bot peut générer des pans entiers du code voire des applications complètes, ce qui représente un gain de productivité substantiel.

Vous n'imaginez pas tout ce que les TuringBots peuvent faire pour vous

Selon leur conception et leur place dans la chaîne de développement, les turing bots peuvent rendre de nombreux services.
Analyser et concevoir des interfaces front et générer le code HTML ad hoc en se basant sur de la vision par ordinateur et la reconnaissance de dessins fournis par les équipes UX.
Auto-compléter ou générer du code complet en se basant sur des documentations techniques et des spécifications métiers, ou au contraire générer la documentation à partir de la lecture du code existant.
Les bots de tests pourront générer à la volée et réaliser de nombreux tests visuels sur des interfaces web ou mobiles simultanément et en analyser les résultats.
Les bot de delivery pourront créer des pipelines de CI/CD optimisés pour la tâche à remplir, d'autres encore pourront avoir un rôle de facilitateur en vulgarisant et standardisant la communication entre les équipes.
Récupérer des logs, des utilisateurs et des systèmes d'application performance monitoring pour proposer pro-activement des améliorations du code.

Les nombreuses données générées par ces différents outils et leurs interactions peuvent être récupérées et analysées et être intégrées dans les processus de prises de décisions afin d'améliorer les processus de l'entreprise à tous les niveaux, pas uniquement sur le code. Tout cela réduisant drastiquement la dette technique et assurant à terme des performances optimales et optimisées en temps réel de la qualité des applications et de l'expérience utilisateur.

L'adoption verticale de ChatGPT représente une étape étonnante mais précaire pour l'IA. JOHN NOSTA

La guerre des Turing Bots

Tout les turing bots ne sont pas encore prêts à être révélés au grand jour et à faire leur entrée dans l'arène. Cependant, la plupart des gros acteurs du marché travaillent sur ce sujet et les utilisent souvent en interne dans certaines parties de leurs processus de développement.

  • Amazon les utilisent en tests, delivery et en développement (CodeGuru, DevOps Guru, and Whisperer)
  • Microsoft GitHub avec copilot et un co-pilot pour Power Automate
  • IBM et Redhat avec Project Wisdom.
  • Tabnine avec un assistant codeur qui aurait généré 1.5% du code
  • Des tests unitaires avec Ponicode de CircleCI et DiffBlue.
  • Google et son bot internr de DevOps TuringBot
  • ChatGpt que l'on ne présente plus

L'intégration des TuringBots:

D'après Forrester, l'arrivée des Turing Bots devrait se faire en 3 périodes, selon les niveaux de maturité de l'entreprise et son appétence au risque, la vitesse de l'évolution de l'IA, les évolutions de la gouvernance des données, l'acceptabilité de ces services par le public et les employés et également les éventuelles régulations.
On peut dégager 3 grandes périodes

  1. Court terme (1-2 ans) – Product owners, testers, et développeurs vont utiliser les assistants pour exécuter des tâches simples à faible valeur ajoutée, sous un contrôle strict du résultat produit.
  2. Moyen terme (2-4 ans) – La maturité des turing bots leur permettra de collaborer étroitement avec les humains, faisant de lui un membre à part entière de l'équipe. Des régulations seront mises en place pour encadrer leur travail et les développeurs leur feront davantage confiance.
  3. Long terme (5+ ans) – Les turing bots existeront à l'échelle de l'entreprise, les interactions avec eux pourront se faire de manière plus faciles, notamment via des interfaces graphiques simples et les bots feront l'intégralité du travail ingrat, laissant aux développeurs humains les tâches de revue, supervision et peaufinage des résultats.

Comment se préparer:

Il semblerait que la question n'est plus tellement "si ?" mais bien "quand" votre organisation devra prendre le tournant des turing bots. Il suffit de voir à quelle vitesse chatgpt a été adopté (plus ou moins ouvertement et plus ou moins en shadow IT) par les entreprises pour comprendre que ces systèmes feront parti de l'arsenal des entreprises dans les quelques années qui viennent.

Pour adopter un assistant local efficace, il est important de se rappeler que "garbage in, garbage out". Il faudra donner de la donnée de qualité, facilement ingérable et représentative du métier afin de que le bot soit pertinent.
Spécifiquement pour les développeurs, il faudra s'assurer que le code respecte les bonnes pratiques ainsi que leurs évolutions et les changement de paradigmes métiers et clients quitte à ré-entraîner fréquemment le modèle.
Pour être efficace les entreprises devront

  1. Comprendre la technologie. Saisir l'impact des turing bot dans leur approche de développement logiciel et comment cela pourra les impacter, par de la veille et des expérimentations, afin de comprendre comment l'intégrer et comment leur rôle va évoluer en conséquence.
  2. Adopter une stratégie. Implémenter, tester, expérimenter entre codeurs et turing bot et délivrer des bot spécifiques liés au métier et à leurs contextes de travail.
  3. Rester à l'écoute. Cette technologie est très active et de nombreux gros bonnets du secteur se lancent dans la course au meilleur assistant. De facto, la recherche évolue très vite et de nouvelles architectures plus performantes apparaissent tous les jours. Ce qui est un problème de chercheurs devient très vite un problème d'implémentation et d'optimisation, bref d'ingénierie.

Les dernières évolutions IAs ont révolutionné le secteur du logiciel et vont continuer de le faire dans les années à venir, entraînant de profondes transformations de nos métiers et du secteur de la technologie. Peut-être même que les entreprises de demain et celles qui survivront à cette mutation du marché seront celles qui auront su faire les bons choix de modèles et d'architectures et que celles qui n'en seront pas capables seront vouées à une productivité en berne et des risques de disparition.

Dernier