Mis on ATDD?

Vastuvõtutestipõhine arendus (ATDD) toimub tarkvaraarenduskeskkonnas. Koostöös töötades määrab programmeerimis- ja tarkvaraarenduse meeskond kindlaks aktsepteerimiskriteeriumid, esitab nende kriteeriumide kohta näiteid ja loob seejärel enne tarkvaraarenduse alustamist nende kriteeriumide alusel vastuvõtutestid. See aitab kogu meeskonnal paremini mõista valmistoote eesmärke, milline see valmistoode peaks välja nägema ja kuidas see peaks toimima. Pärast üksikasjalikku töövoogu on ATDD struktureeritud protsess, mis pakub tarkvaraarenduse meeskonnale mitmeid eeliseid enne arendusprotsessi, selle ajal ja pärast seda. Samuti peab edu tagamiseks protsess hõlmama õiget meeskonda ja õigeid meetodeid.

ATDD loob järjepideva töövoo, mis järgib kindlaksmääratud vormingut, tagamaks, et kõik meeskonnaliikmed mõistavad, mida on vaja valmistoote kavandatud toimimiseks. See töövoog hõlmab tavaliselt kõigepealt kriteeriumide kehtestamist, enamasti kasutaja vaatenurgast, ja konkreetsete näidete loomist. Seejärel töötatakse välja ja käivitatakse vastuvõtutestid, et näha nende näidete põhjal õige koodiga ebaõnnestumise tulemusi. Seejärel töötatakse programmi käivitamiseks välja minimaalne kood, käivitatakse uuesti rohkem vastuvõtuteste ja tulemused kinnitatakse. Seejärel viiakse enne lõpliku programmi väljatöötamist kasutuselevõtukatsete tulemuste põhjal läbi refaktoreerimine.

Tarkvaraarendajad ja programmeerijad mainivad sageli ATDD meetodi eeliseid tarkvaraarenduse jaoks nii arendusprotsessi kiirendamisel kui ka kindla lõpptoote tagamisel. Planeerimisetapis on üks peamisi eeliseid aidata arendusmeeskonnal keskenduda õigetele ülesannetele. Näidete loomisel ja testimisel keskendutakse veelgi ning saavutatakse selgus protsessis ja testimise käigus esitatud probleemides. Kogu protsessi ja lõpptoote puhul on eesmärgiks tarkvaraprogrammi stabiilsus ja töökindlus. Need eelised saavutatakse tavaliselt lõpptootega, kui järgitakse ATDD töövoogu ja meeskond teeb tõhusat koostööd.

Et ATDD töötaks tõhusalt nii, nagu meetod ette näeb, on algusest peale vaja õigeid koostisosi. Kokkupandud meeskondadel peavad olema kvalifitseeritud panustajad, nad peavad tegema meelsasti koostööd ning olema hästi koolitatud ja distsiplineeritud, et protsess lõpuni viia. Loodavad näited peavad olema automatiseeritud, tõhusad, loetavad, hooldatavad, leitavad ja mõõdetavad. Kui loodud näide ei vasta kõigile nendele kriteeriumidele, takerdub see testimis- ja koostööprotsessi, mis võib põhjustada tarkvaravigu. Lisaks peavad kõik kujundused olema testitavad, et ATDD protsess saaks tõhusalt toota kokkuvõtliku, tugeva ja stabiilse tarkvaraprogrammi.