( mag | 2019. 09. 08., v – 01:39 )

A metamodell nem a tervezési fázisban készül, hanem hamarabb: az módszertani alap.

A technológiai architektúra terv dolga, hogy minden alap működési és hibakezelési viselkedést lefedjen olyan részletezettséggel, hogy egy viselkedésből néhány teszteset következzen.
A review dolga annak biztosítása, hogy egy viselkedést (ami a kiadott feladat) a tesztesetek (ami a kifizetési egység) teljesen lefedjenek. Mivel a teszteset a kifizetési egység, ezért a kóder arra van motiválva, hogy minél több tesztesetet készítsen: lefedjen minden működést.

Az, hogy hol húzzuk meg a határt a tervezés és a kódolás között, alapvető folyamatszervezési kérdés: a kódolás párhuzamosítható, a tervezés pedig nem. Az egyik út a formális helyességbizonyítás ("matematikai alapú tervezés") lett volna. Az nagyon későre teszi ezt a határvonalat. Mint ahogyan a BDD is, ami tulajdonképpen ugyanaz, csak a formalizmus nem matematikai, hanem kód és adatalapú. Ez pont az a különbség, amire Uncle Bob azt mondta, hogy a programozás nem matek, hanem tudomány.

Mi azt választottuk, hogy a tervezés kimenete informális nyelven, de nagyon részletesen leírt viselkedésekből (és formálisan leírt adatstruktúrákból és interfészekből) áll. Így sokkal hamarabb kerül át a feladat a kódolásra -> jobban párhuzamosítható, és marad a kóder számára is olyan feladat, ami intelligenciát igényel, ha nem is sokat.