Een Sonar-enquête uit 2026 laat zien dat 88 % van de ontwikkelaars stelt dat door AI gegenereerde code de technische schuld doet toenemen, en voorstanders van spec-driven development beargumenteren dat een gedisciplineerde specificatiestap deze drift kan stoppen.
Waarom dit probleem ertoe doet
Wanneer een mens een vaag ticket ontvangt, stelt hij verduidelijkende vragen. Een AI-agent vult daarentegen de hiaten in met een gok en levert code aan die plausibel lijkt. De illusie van correctheid is kostbaar: dezelfde Sonar-peiling meldt dat meer dan de helft van de respondenten code heeft gezien die de basiscontroles passeert, maar toch subtiele defecten verbergt. Deze defecten stapelen zich op als technische schuld, wat later refactoring noodzakelijk maakt, de levering van nieuwe functies vertraagt en de onderhoudsbudgetten opblaast.
Hoe spec-driven development eruitziet
Spec-driven development (SDD) draait de huidige volgorde om. In plaats van een AI-model aan te sturen met een korte user story, schrijft het team een gedetailleerde, door agents uitvoerbare specificatie die in hetzelfde versiebeheersysteem als de code staat. De specificatie wordt de 'single source of truth' — het legt de intentie, randgevallen, prestatieverwachtingen en alle beperkingen vast waar een AI-model zich aan moet houden.
Het proces vervangt het menselijke ontwerpwerk niet; het legt het vast in code. Door beslissingen van het geheugen van een ontwikkelaar naar een concreet document te verplaatsen, kunnen zowel mensen als toekomstige AI-agents herleiden waarom een stuk code zich op een bepaalde manier gedraagt. Het opstellen van een specificatie kost vooraf moeite, maar het debuggen van ambigue AI-output kost later veel meer.
De workflow veranderen
Product backlog – Houd items kort en leg alleen de intentie en de algemene acceptatiecriteria vast. Deze lijst blijft de prioriteitsstelling sturen.
Sprint planning – Teams bespreken het overkoepelende doel en spreken een Sprint Goal af, maar wachten met de gedetailleerde implementatie tot de specificatie klaar is.
Tijdens de sprint – De persoon die de taak oppakt, schrijft een nauwkeurige, machineleesbare specificatie. De specificatie bevat inputformaten, verwachte outputs, foutafhandeling en alle niet-functionele eisen. Omdat de specificatie onder versiebeheer staat, kunnen reviewers commentaar geven, wijzigingen voorstellen en wijzigingen goedkeuren, net als bij code.
Definition of Done – Voeg "Spec beoordeeld en goedgekeurd" toe aan de quality gate. Geen enkele code is voltooid totdat de specificatie aan dezelfde beoordelingsnormen voldoet als de implementatie.
Kanban-aanpassing – Voeg twee nieuwe kolommen toe: "Spec opgesteld" en "Spec goedgekeurd". Werkitems stromen nu van backlog → Sprint Goal → Spec opgesteld → Spec goedgekeurd → In Progress → Done. Deze visuele verandering maakt de voorheen onzichtbare coördinatiestap expliciet.
Tools die specificaties al afdwingen
Platforms zoals GitHub Spec Kit en AWS Kiro hebben 'gates' toegevoegd die een vereisten-document vereisen voordat de AI-codegeneratie begint. Ze vervangen het AI-model niet; ze stemmen letterlijke agents af op de menselijke intentie. Door de specificatie een vereiste te maken, automatiseren deze tools de verschuiving zonder bestaande CI/CD-pipelines te verbreken.
Mogelijke weerstand
Critici zeggen dat het schrijven van een specificatie wrijving toevoegt aan een al snel bewegend agile-ritme. Het tegenargument: de tijd die wordt besteed aan het opstellen van een specificatie is meestal slechts een fractie van de tijd die later nodig is voor het debuggen van door AI geproduceerde code die voortkomt uit een ambigue prompt.
Een ander punt van zorg is dat specificaties verouderd kunnen raken naarmate de vereisten evolueren. Integratie met versiebeheer lost dit op: elke wijziging in de specificatie creëert een nieuwe commit, triggert een review en dwingt het team om de bijbehorende code opnieuw te evalueren. In de praktijk zorgt het behandelen van specificaties als code ervoor dat de documentatie actueel blijft.
Waar je op moet letten
De adoptie staat nog in de kinderschoenen, maar het momentum is zichtbaar. Naarmate AI-codegeneratoren krachtiger worden, zal de behoefte aan nauwkeurige, machineleesbare intentie alleen maar toenemen.
De kern: Het omzetten van vage prompts in concrete, beoordeelde specificaties voelt misschien als een extra stap, maar het zet gokwerk om in verantwoorde beslissingen.
