Objectifs
L'Intelligence Artificielle (IA) se positionne comme un amplificateur dans le cycle de développement, offrant des gains en efficacité individuelle et une amélioration de la qualité du code (jusqu'à 3,4% pour 25% d'adoption) et de la documentation (jusqu'à 7,5%)*. Cependant, l'adoption de l'IA sans fondation solide intensifie les dysfonctionnements organisationnels, menant à une diminution de la stabilité** de la livraison et risquant d'augmenter la duplication de code et de reproduire les vulnérabilités de sécurité existantes.
La Living Documentation est la réponse stratégique pour contrer cet effet, en instaurant la discipline et le contexte solide que l'IA ne peut générer seule. Elle permet de :
Travailler efficacement avec l'IA en servant de garde-fous de sécurité.
En structurant le code et la connaissance de manière explicite et contextuelle [Existing Text], vous offrez à l'IA un contexte solide et sécurisé, optimisant à la fois la collaboration humaine et l'efficacité des assistants IA (Copilot, Claude, Cursor etc.).
Transformer la documentation en un actif fiable et facilement trouvable.
En découvrant les pratiques essentielles (issues du Software Craftsmanship) en théorie et par une mise en pratique pour tirer le meilleur parti de l'IA générative.
L'apprentissage des techniques de prompt engineering
pour formuler des instructions claires, la découverte des moyens d'introduire cette approche dans leur environnement
L'apprentissage que la documentation est un outil de feedback rapide
En consolidant une fondation d'excellence technique, cette approche permet d'accélérer les rythmes de développement et des changements visés en Continuous Delivery, DevOps, et toutes les approches Agiles, notamment en imposant la discipline de travailler en petits lots pour maintenir la stabilité des livraisons.
SOURCES
*https://services.google.com/fh/files/misc/2025_state_of_ai_assisted_software_development.pdf
** https://services.google.com/fh/files/misc/2024_final_dora_report.pdf
Jour 1 : Bâtir les fondations d'une base de connaissance vivante
La première journée se concentre sur le cœur de l'excellence technique, le Software Craftsmanship.
L'objectif est d'assurer que le code est auto-explicite et fiable, le rendant ainsi utilisable par les humains et les assistants IA.
- Nous commencerons par revisiter la gestion des connaissances, en distinguant ce qui doit être formalisé de manière économique de ce qui doit émerger naturellement du code propre.
- Les participantes et participants apprendront à augmenter le code pour le rendre plus explicite en se concentrant sur le Refactoring, une pratique essentielle pour améliorer la lisibilité et l'évolutivité du code.
- La technique humaine unique de « simplifier » et « consolider » le code est le contrepoids à la duplication encouragée par l'IA.
- Un accent particulier sera mis sur la détection des Shameful Comments qui trahissent un code confus, et sur l'établissement d'un Glossaire Vivant (issu de la modélisation métier) directement à partir du code, servant de source de vérité unique pour les outils automatisés.
Jour 2 : IA, Architecture et Stratégie de Pérennité
La deuxième journée intègre l'IA dans le cycle de vie du développement et de l'architecture, en la positionnant comme un partenaire, et non comme un substitut à l'expertise.
- Nous explorerons la synergie IA / Living Documentation : comment le contexte solide des pratiques craft sert de garde-fou de sécurité pour l'IA, l'empêchant de reproduire les vulnérabilités existantes.
- Les participants maîtriseront les techniques de Prompt Engineering Craft, en utilisant la Living Documentation pour affiner les requêtes et garantir la pertinence des réponses générées par l'IA.
- Cette journée couvrira également l'importance des décisions pérennes, notamment la pratique des Architectural Decision Records (ADR).
- Nous verrons comment les Design Patterns Classiques (tels que Strategy, Composite, Null Object) agissent comme des destinations de Refactoring pour consolider le code, luttant ainsi contre l'érosion de la réutilisation et l'augmentation des clones architecturaux.
- Enfin, nous aborderons les étapes concrètes (basées sur des principes d'adoption testés comme le travail en petits lots) pour introduire cette approche dans l'environnement de travail, en transformant la documentation en un outil de feedback rapide pour l'amélioration continue.
Public cible
Cette formation s'adresse à un large éventail de professionnels du logiciel, car l'approche Living Documentation avec l'IA nécessite l'alignement de l'excellence technique (le Software Craftsmanship) et de la stratégie organisationnelle :
Développeuses et Développeurs (Full-stack, Back-end, Front-end)
Architectes logiciels, tech leads et engineering managers
Product Owners, business analysts
Professionnels de la sécurité, DevOps/SRE
Prérequis
La formation étant axée sur des ateliers pratiques de code (Katas et Refactoring intensif), elle exige d’avoir un minimum d’expérience dans la conception logicielle :
- Maîtrise du code et expérience pratique
Le programme repose sur l'application de techniques telles que le Refactoring et le Test-Driven Development (TDD). Les participants doivent donc avoir une expérience significative dans l'écriture, la lecture et la modification de code dans un langage orienté objet (Java, C#, Python, JavaScript, etc.).
- Familiarité avec les principes de qualité (souhaitée) :
Une connaissance de base des concepts de Clean Code et de la loi de Demeter est recommandée pour tirer pleinement parti des ateliers.
- Contexte Agile/DevOps :
Une connaissance des processus d'intégration continue et de déploiement continu (CI/CD) est utile, car la Living Documentation s'y intègre directement.
Matériel
Les formateurs distribueront les supports de la formation au format électronique PDF à la fin de la formation. Tous les exemples seront en Java (un poste de travail avec un IDE Java et Maven installé est requis), mais sont facilement extrapolables à d’autres univers, en particulier .Net ou typescript, et d'autant plus facilement avec un coding assistant.
A savoir
La formation est donnée en français ou en anglais. Les supports de formation sont en anglais. Durant la formation, nous inciterons à travailler sur des exemples de code en langage orienté objet. Pour chaque formation, un quiz de validation des prérequis sera transmis 2 semaines en amont, et un autre en fin de session pour valider les acquis.