Počáteční fáze vývoje softwaru je specifikace systémových požadavků. Obvykle se tyto požadavky vyjadřují v UML a sestavají se z příkladů použití a doménového modelu.
Příklad použití je sekvence úloh, které se musejí provést, aby se dosáhlo požadovaného cíle. Jednotlivé úlohy jsou psány v přirozeném jazyce.
Doménový model popisuje objekty vyskytující se v příkladech použití. V tomto článku ukazujeme způsob jak automatizovaně generovat spustitelný kód z příkladu použití zapsaných v přirozenem jazyce.
Použití generování výrazně zrychluje vývoj software. Prototypová implementace je také popsána v článku.