Specifikationsdrevet udvikling
Også kendt som: spec-drevet udvikling
At skrive præcist ned, hvad softwaren skal gøre, godkendt af mennesker, før AI-værktøjer får lov at skrive koden ud fra den plan.
Kladde - dette opslag er endnu ikke gennemgået.
Formelt
En arbejdsform med kodeagenter, hvor en skriftlig beskrivelse af mål, adfærd, grænser og acceptkriterier først skrives og gennemgås og derefter deles op i opgaver, som agenten udfører; beskrivelsen forbliver den varige rettesnor og opdateres før koden.
Forklaret enkelt
Som at aftale menu og antal gæster med kokken før et bryllup - så kan køkkenet arbejde hurtigt, fordi ingen skal gætte, hvad der skal serveres, eller til hvor mange.
I praksis
Hos et softwarehus, der bygger en pensionskasses medlemsportal, bliver produktejeren og udviklerne enige om én side, der beskriver nulstilling af adgangskode, herunder “links udløber efter 15 minutter”; agenten bygger ud fra den, og tests tjekker reglen.
Hvorfor det betyder noget
Den giver mennesker magten tilbage over, hvad der bygges, og giver både AI-værktøjet og dem, der gennemgår koden, noget klart at tjekke op imod, herunder sikkerhedskrav aftalt på forhånd.
Teknisk uddybning
Idéen er ældre end kodeagenter. Design by contract, modeldrevet udvikling, behaviour-driven development med Given/When/Then-scenarier og testdrevet udvikling forsøgte alle at lade en eksplicit, kontrollerbar beskrivelse af hensigten komme før eller styre koden. Det, der ændrede sig i 2025, er modtageren af specifikationen: en kodeagent, der hurtigt og selvsikkert implementerer det, den får besked på, så tvetydighed i forespørgslen bliver direkte til troværdig, men forkert software. At skrive specifikationen tvinger beslutninger om omfang, grænsetilfælde, fejlhåndtering og ikke-funktionelle krav frem, før der findes tusindvis af linjer, som indbygger de forkerte.
To værktøjer har formet den nuværende praksis. GitHubs open source-værktøj Spec Kit, annonceret i september 2025, har en CLI ved navn specify og et sæt slash-kommandoer til agenten, der fører gennem en fast rækkefølge: en "constitution" for projektet med ufravigelige principper, en funktionsspecifikation (spec.md) med fokus på hvad og hvorfor, en teknisk plan (plan.md), der vælger arkitektur og stak, en opdeling i opgaver (tasks.md) og implementering opgave for opgave. Amazons IDE Kiro, lanceret i 2025, strukturerer hver funktion som krav (user stories med strukturerede acceptkriterier), et designdokument og en opgaveliste, der kan spores tilbage til kravnumre, plus "steering"-filer med fast kontekst om produkt og teknologi. Begge behandler Markdown-artefakter under versionsstyring som den varige grænseflade mellem mennesker og agent.
Birgitta Böckelers analyse fra oktober 2025 på martinfowler.com skelner mellem tre niveauer. Spec-first skriver en specifikation før arbejdet og kan kassere den bagefter; spec-anchored beholder specifikationen og udvikler den sammen med funktionen; spec-as-source gør specifikationen til det eneste artefakt, mennesker redigerer, mens koden genereres ud fra den. Hun noterede også de vigtigste kritikpunkter: Genererede specifikationer kan være længere og mere trættende at gennemgå end koden, én fast arbejdsgang pålægger en rettelse på én linje samme ceremoni som en ny funktion, agenter ignorerer eller misforstår stadig instruktioner trods udførlige skabeloner, og spec-as-source risikerer at gentage fiaskoerne fra modeldrevet udvikling, nu med ikke-determinisme oveni.
Gjort godt er specifikationen stedet, hvor sikkerheds- og compliancekrav bliver testbare. Resultater af trusselsmodellering, databeskyttelseskrav og acceptkriterier som tokens' levetid eller rate limits kan skrives som eksplicitte krav, som tests verificerer og reviewere tjekker, hvilket flugter med praksissen i NIST SP 800-218 om at definere sikkerhedskrav til softwareudvikling (PO.1). Specifikationen fjerner ikke behovet for kodegennemgang; den giver revieweren en reference, som afvigelser kan måles imod, og den skal selv holdes ajour, for en forældet specifikation vildleder agenten lige så effektivt som en manglende.
Hvad du bør lære først
Alt det, dette bygger på - grundlaget først.
- Inferens
- →Token
- →Netværk
- →Forudsigelse af næste token
- →IP-adresse
- →Protokol
- →Sampling (udtrækning af tokens)
- →Klient
- →Port
- →Struktureret output
- →Server
- →API
- →Værktøjskald (tool calling)
- →Kodeagent
- →Specifikationsdrevet udvikling
Relationer
- Forudsætter
- Kodeagent
- Forveksl ikke med
- Vibe coding
- Bruges sammen med
- TrusselsmodelleringVersionsstyring
Kilder og videre læsning
Standarder og officielle tekster
- NIST SP 800-218 - Secure Software Development Framework (SSDF) Version 1.1 · NIST
Officiel dokumentation
- GitHub, Spec Kit - toolkit for spec-driven development (github/spec-kit) · GitHub
- GitHub Blog (2025), Spec-driven development with AI: Get started with a new open source toolkit · GitHub
Opslagsværker
Hvor dataene kommer fra
Dette opslag er skrevet af en AI ud fra kilderne ovenfor og er endnu ikke gennemgået af et menneske. Brug det som udgangspunkt, og tjek alt vigtigt mod kilderne.
Se gennemgangskøenForeslå en rettelse på GitHubDette begreb som JSON
Test dig selv
Indlæser…