SDD : après des mois de terrain, le verdict

Équipe Byrnu
SDD : après des mois de terrain, le verdict

SDD : après des mois de terrain, le verdict

En janvier dernier, nous publiions Deux façons de coder avec l'IA : SDD vs Vibe Coding. L'article a suscité des milliers d'impressions et des dizaines de commentaires — signe que la question résonne dans notre industrie. Aujourd'hui, après des mois d'implémentation quotidienne du Specification Driven Development sur des projets réels, on peut dresser un bilan honnête : ce qui fonctionne remarquablement bien, ce qui fait mal, et ce que ça signifie pour l'avenir de notre profession.

Ce que le SDD fait exceptionnellement bien

Commençons par les bonnes nouvelles, parce qu'elles sont nombreuses.

Le SDD s'est révélé être un outil de spécification d'une polyvalence inattendue. Pas seulement pour les spécifications techniques — ça, on s'y attendait — mais sur l'ensemble du spectre du développement logiciel.

Les spécifications techniques et fonctionnelles. Définir les comportements attendus, les règles d'affaires, les cas limites, les contraintes de performance : le SDD excelle. Les spécifications deviennent le contrat entre la vision du produit et son implémentation. L'IA comprend ces spécifications avec une précision remarquable et peut les transformer en architectures cohérentes, en interfaces bien définies et en modèles de données solides.

Le design d'interface utilisateur. C'est une surprise agréable. Les spécifications SDD permettent de guider efficacement les infographistes et les experts UX dans la déclinaison des écrans. Quand chaque composant, chaque état, chaque interaction est spécifié en amont, le travail de design devient de la mise en forme plutôt que de l'invention. Les allers-retours diminuent. Les malentendus aussi.

La définition des tests. Une spécification bien écrite est, en essence, une suite de tests qui s'ignore. Chaque comportement attendu se traduit naturellement en cas de test. L'IA génère des tests unitaires et d'intégration qui couvrent réellement les besoins — pas juste des tests pour faire monter un pourcentage de couverture.

Les patterns et pratiques d'implémentation. Le SDD permet de décrire non seulement quoi construire, mais comment le construire : les patterns à utiliser, les couches applicatives à respecter, les conventions à suivre. C'est un guide d'implémentation vivant.

Jusque-là, tout va bien. Le SDD tient ses promesses et même davantage.

Là où le bât blesse : le bac à sable et la plage

Puis arrive le moment de vérité : l'implémentation.

Et c'est ici qu'il faut être honnête, parce que la nuance est importante et qu'elle change tout.

Imaginez un bac à sable. Il a des côtés — plus ou moins hauts selon la flexibilité qu'on veut accorder à ceux qui jouent dedans. Le terrain de jeu est délimité. On sait où commence le sable et où il finit. On peut construire des châteaux, creuser des tunnels, s'amuser librement, mais dans un périmètre connu.

Maintenant, imaginez une plage. Les possibilités sont infinies. Le sable s'étend à perte de vue. Mais l'eau est dangereusement proche. Et sur une plage, on peut se noyer.

C'est une métaphore, mais la réalité du développement assisté par IA y ressemble étrangement.

Demander à une IA d'implémenter une solution complète sans lui fournir de cadre, c'est l'envoyer sur la plage. Elle peut techniquement tout faire — le code compilera, les tests passeront peut-être, l'application fonctionnera en surface. Mais sans bac à sable, sans limites clairement définies, l'IA fait ce que ferait n'importe quel développeur brillant mais largué : elle improvise. Et l'improvisation dans un système de production, c'est de la dette technique déguisée en vélocité.

Le parallèle du développeur senior au jour 1

Pensez-y autrement. Vous embauchez un développeur senior — compétent, expérimenté, capable. Vous lui demandez de livrer une fonctionnalité complète dès son premier jour, avant même qu'il ait pu se familiariser avec la culture organisationnelle, les façons de faire de l'entreprise, les conventions de code, les patterns maison, la fondation technologique existante.

Que va-t-il se passer? Il va livrer quelque chose qui fonctionne. Mais ça ne ressemblera pas au reste. Ça ne suivra pas les conventions. Ça ne capitalisera pas sur ce qui existe déjà. Ça créera de la friction à la prochaine revue de code.

L'IA, c'est exactement ce développeur senior au jour 1.

Elle a les compétences. Elle a les connaissances générales. Mais elle ne connaît pas votre contexte. Elle ne connaît pas vos patterns. Elle ne connaît pas votre fondation.

Les pièces maîtresses du bac à sable

La bonne nouvelle — et c'est la vraie percée que ces mois de terrain nous ont confirmée — c'est que dès que les pièces maîtresses sont en place, les résultats sont surprenants.

Quelles sont ces pièces maîtresses?

Les pratiques et patterns de développement documentés. Pas dans la tête d'un architecte. Documentés. De façon à ce que l'IA puisse les lire, les comprendre et les appliquer. Quels patterns utiliser pour la couche d'accès aux données? Comment structurer un service? Quelles conventions de nommage suivre? Si c'est écrit, l'IA le suit.

Une fondation technologique existante et accessible. L'IA doit pouvoir s'appuyer sur des abstractions, des classes de base, des interfaces déjà en place. Elle doit pouvoir capitaliser sur ce qui existe plutôt que réinventer à chaque prompt. C'est exactement le rôle que joue notre Fondation : offrir un socle stable, documenté et cohérent.

Des projets exemples comme référence d'inférence. C'est peut-être l'élément le plus sous-estimé. L'IA apprend par l'exemple. Si elle peut voir comment un module similaire a été implémenté — les dépendances injectées, les couches respectées, les tests structurés — elle reproduit le même niveau de rigueur. Sans exemple, elle invente. Avec un exemple, elle infère et applique.

Quand ces trois éléments sont réunis, le taux de conformité atteint 90% et plus. Les dépendances sont correctes. Les couches applicatives sont respectées. Les patterns sont suivis. Les pratiques de code sont appliquées. Ce n'est plus de l'improvisation — c'est de l'exécution guidée.

Ce qui reste : la revue par les pairs

À 90% de conformité, il reste 10% qui nécessite une intervention humaine. Et c'est là que la revue par les pairs entre en jeu — non pas comme un luxe ou une bonne pratique optionnelle, mais comme le dernier filet de sécurité indispensable.

Ce 10%, c'est parfois un choix d'implémentation discutable. Parfois une optimisation manquée. Parfois une convention subtile que l'IA n'a pas captée. La revue de code humaine corrige ces écarts et, surtout, contribue à enrichir la documentation et les exemples pour que le prochain cycle soit encore meilleur.

C'est un cercle vertueux : plus on revoit, plus on documente, plus l'IA s'améliore, moins il y a à revoir.

Et ce n'est qu'une question de temps avant que cet écart se réduise davantage. Les outils s'améliorent à un rythme effréné.

Le talon d'Achille : l'interface utilisateur

Il y a cependant un domaine où l'IA reste fondamentalement limitée, et il faut le dire sans détour : l'interface utilisateur.

L'IA n'a pas de goût.

Elle n'est pas assez créative pour concevoir une expérience qui surprend et ravit. Elle n'est pas assez constante pour maintenir une cohérence visuelle sur des dizaines d'écrans. Elle n'est pas assez empathique pour anticiper ce qu'un utilisateur ressent face à une interface.

L'IA peut générer du CSS impeccable. Elle peut implémenter un design system à la lettre. Elle peut produire des composants fonctionnels et accessibles. Mais elle est incapable d'apprécier si un écran offre la convivialité que les utilisateurs attendent. Elle ne sait pas si l'espacement semble juste, si la hiérarchie visuelle guide naturellement le regard, si l'interaction donne satisfaction.

C'est un domaine où l'humain reste et restera irremplaçable — du moins pour l'horizon prévisible.

Ce que ça signifie pour l'avenir

Après ces mois de terrain, notre conviction s'est renforcée : le SDD est probablement la nouvelle façon de faire du développement logiciel.

Non pas parce que c'est une mode. Non pas parce qu'on vend des services autour. Mais parce que les faits sont là : quand l'IA est correctement outillée — avec des spécifications claires, une fondation documentée, des patterns explicites et des exemples concrets — elle produit du code de qualité production à une fraction du temps traditionnel.

Les outils vont continuer de s'améliorer. Ils seront non seulement plus efficaces, mais graduellement plus autonomes. La facette mécanique du développement logiciel — l'écriture de code ligne par ligne — va progressivement s'effacer.

Mais il y aura toujours une place fondamentale pour l'humain. Pour trois raisons qui ne disparaîtront pas de sitôt :

Ajouter de la créativité là où elle crée de la valeur — dans l'expérience utilisateur, dans l'innovation produit, dans la résolution de problèmes inédits.

Empêcher la créativité là où elle serait dangereuse — dans la sécurité, dans la conformité, dans l'intégrité des données. On ne veut pas d'une IA « créative » avec vos mécanismes d'authentification.

Encadrer les besoins pour s'assurer que la solution résout le vrai problème — pas une interprétation trop créative de ce que l'utilisateur a demandé.

Conclusion : du concept à la conviction

En janvier, le SDD était un concept prometteur. Aujourd'hui, c'est une conviction validée par la pratique.

Oui, le SDD demande un investissement initial. Oui, il faut documenter, structurer, construire le bac à sable avant d'y jouer. Mais une fois le cadre en place, la productivité est décuplée, la qualité est constante et l'IA devient ce qu'elle devrait être : un accélérateur puissant dans un cadre maîtrisé.

La plage restera toujours tentante. L'horizon est beau, les possibilités semblent infinies. Mais les équipes qui construisent des systèmes durables savent qu'un bon bac à sable vaut mieux qu'une belle plage où l'on risque de se noyer.

Le développement logiciel ne disparaît pas. Il se transforme. Et ceux qui maîtrisent l'art de spécifier — de définir le bac à sable — seront ceux qui en tireront le plus de valeur.


Pour en savoir plus sur le SDD et notre approche, consultez notre Fondation CSS et notre article précédent SDD vs Vibe Coding.

L'IA transforme notre métier. Le SDD nous assure de rester aux commandes.