Määrittelyvetoinen kehitys
Tunnetaan myös: spec-driven development
Mikä on Määrittelyvetoinen kehitys?
Menetelmä, jossa määrittely eikä koodi on ensisijainen tuotos. Kehittäjät kirjoittavat ja hiovat jäsennellyn määrittelyn, ja tekoälyn koodausagentti tuottaa sitä vastaavan koodin. Vuonna 2025 julkaistu avoimen lähdekoodin työkalupakki ajaa Spec-Plan-Tasks-Implement-kulkua. Se on nopeasti nouseva tapa pitää tekoälyn rakentama ohjelmisto uskollisena aikeelle sen sijaan, että se ajautuisi kehote kerrallaan sivuun.
Miksi tällä on väliä
Kehotteilla rakentamisessa on vika, joka paljastuu vasta ajan myötä. Jokainen pyyntö nytkäyttää koodia hieman, kunkin nytkäyksen perustelu jää keskustelulokiin, jota kukaan ei säilytä, ja muutaman viikon jälkeen yksikään dokumentti ei enää selitä, miksi järjestelmä tekee niin kuin tekee. Määrittelyn asettaminen ensin korjaa tämän: totuuden lähde siirtyy keskustelusta dokumenttiin, jonka voi versioida, katselmoida ja ojentaa uudelle tekijälle. Kun vaatimus muuttuu, muokataan määrittelyä ja generoidaan uudelleen sen sijaan, että paikattaisiin koodia ja toivottaisiin aikeen säilyvän. Kuri, jota tämä vaatii, on todellinen, sillä epämääräinen määrittely tuottaa epämääräistä ohjelmistoa yhtä varmasti kuin epämääräinen kehote ennen. Voitto on se, että asia, josta väitellään ja joka hyväksytään, on sama asia, joka oikeasti ohjaa rakentamista.
Käytännössä
Määrittely asuu samassa repositoriossa kuin koodi, katselmoinnin alla kuten mikä tahansa muutos. Uusi vaatimus saapuu määrittelyyn tehtävänä muokkauksena, siitä keskustellaan pull requestissa, ja toteutus generoidaan uudelleen vastaamaan sitä. Puoli vuotta myöhemmin insinööri, joka ei koskaan nähnyt alkuperäistä keskustelua, voi lukea määrittelyn ja tietää, mitä järjestelmän on tarkoitus tehdä ja miksi.