Si vous travaillez dans l’IT, vous avez sûrement déjà croisé les termes “rétro-spécification” ou “rétro-documentation”. Souvent murmurés avec une pointe d’appréhension, ces mots évoquent des tâches fastidieuses et frustrantes.
Aujourd’hui, nous plongeons dans ce monde complexe en rencontrant Louardi et Nizar, respectivement CEO de Telys et fondateur de D1 Consulting. Ces deux passionnés en intelligence artificielle ont uni leurs forces pour améliorer la rétro-documentation, transformant une corvée redoutée en un processus plus fluide et efficient.
Louardi : Bien sûr ! Les rétro-spécifications, c’est recréer la documentation d’un système existant lorsqu’elle est absente, obsolète ou incomplète, voire incorrecte. Pour y parvenir, traditionnellement, on part de deux sources parallèles. La première, c’est le code et la structure de la base de données, il faut réexaminer pour comprendre comment ça fonctionne et redocumenter ensuite. L’autre approche, c’est d’exécuter l’application, soit en autonomie, soit avec quelqu’un qui connaît bien le domaine, pour observer comment elle fonctionne et produire ou compléter la documentation.
Ça c’est le processus classique manuel, on pourra en reparler plus tard, ça fonctionne mais il y a plusieurs difficultés en faisant comme ça.
Nous on a une approche qui intègre l’IA. On le fait sur deux axes d’analyse, d’un côté celle du code pour déduire les fonctionnalités sous-jacentes, de l’autre celle de l’interface où, là, l’IA va parcourir l’interface, explorer les écrans, les enchaînements, et essayer de reconstituer le fonctionnel de l’application. Finalement, c’est assez proche du diptyque qu’on a en processus manuel mais l’IA permet d’accélérer.
Nizar : Pour compléter par rapport à l’IA, ça peut être du « et-ou ». C’est-à-dire qu’on peut véritablement démultiplier les sources. Comme tu l’as dit Louardi, on peut avoir l’interface et le code, mais aussi des anciennes spécifications, des mails, des cahiers de recette… tout un corpus de sources qui permet de faire un contrôle de cohérence et, à la fin, d’obtenir quelque chose de très complet.
Louardi : Nous avons récemment travaillé sur un projet de refonte d’un ERP. On a été amené à devoir faire des rétro-spécifications et, grâce à l’IA, nous avons pu parcourir les écrans pour reconstituer la documentation et même créer une aide en ligne. En à peine quelques jours on a pu obtenir de belles choses.
Nizar : Nous, on est actuellement sur un projet concernant un module Salesforce. Un module développé il y a 7 ans, qui doit être modernisé mais sur lequel la documentation est très pauvre. Donc, en amont, on a fait des rétro-spécifications afin d’extraire toutes les règles de gestion à partir du front-end et back-end.
Louardi : Nous utilisons une combinaison de techniques : de l’algorithmique, des réseaux de neurones prêts à l’emploi, des réseaux de neurones pour le traitement linguistique, et d’autres encore. En plus de cela, nous utilisons des LLM souverains (ndlr : modèle de langage étendu).
Nizar : Et sinon, pour pouvoir bien gérer un sujet de rétro-documentation avec l’IA, on a développé de nombreuses bonnes pratiques en interne, ce qui nous permet d’avoir l’expertise nécessaire pour y parvenir, bien prompter, vérifier etc. On a des consultants, à D1 consulting et Telys, spécialisés dans ce domaine et en IA.
Nizar : Alors, moi je vois deux gros avantages. D’abord, en comparaison avec l’humain, l’IA est beaucoup plus exhaustive. L’humain peut rater des choses, même un expert, alors que l’IA va beaucoup moins en oublier. Ensuite, en termes de productivité, on estime que l’IA permet de multiplier par deux la productivité et de réduire les coûts de 30%.
Louardi : Je dirais d’abord que dans ce contexte, l’IA réduit la pénibilité surtout sur des tâches impopulaires car considérées comme ingrates. Et comme le disait Nizar, une fois l’investissement initial fait, l’IA permet de réaliser ces tâches à des coûts bien plus réduits, et c’est même plus que ça. Il y a aussi un gain de temps considérable. Par exemple, sur un projet, on a réussi en quelques jours avec l’IA à parcourir et documenter une centaine d’écrans.
Nizar : Un autre point, c’est la “douleur” aussi. Que ce soit côté métier ou développeur, rédiger des spécifications n’est pas toujours plaisant. Faire des rétro-spécifications, repasser sur des choses, demander à un développeur d’aller sur le code d’un autre développeur, cela crée souvent de la frustration. Si les gens ne font pas ça par plaisir, le résultat sera mauvais, et c’est du budget dépensé pour un résultat insatisfaisant. L’IA aide vraiment à surmonter cette étape et rend tout ça plus agréable. Et donc, à terme, ça favorise la qualité.
Louardi : Si on parle de la qualité purement en output, je dirais qu’elle est plutôt bonne. Ce ne sera jamais aussi parfait qu’un excellent business analyst, mais comme on va beaucoup plus vite, si on prend tout en compte, la qualité est finalement fortement augmentée.
Nizar : Oui, totalement. Pour moi, l’humain reste indispensable. Il y a toujours un risque d’erreurs, d’incohérences, ou même d’hallucinations. Il faut qu’un business analyst passe derrière pour vérifier la cohérence des règles extraites, puis qu’un expert métier valide le tout aussi. L’IA fait une bonne partie du chemin, mais une validation humaine est indispensable pour garantir une qualité finale optimale. En attendant, cela fait gagner beaucoup de temps.
Nizar : Non, ahah ! Mais par contre, elle nous facilite énormément la vie. J’ai vraiment hâte de voir ce que nous réservent les prochaines années.