Definicja
Feature-Driven Development (FDD) to metodyka Agile stworzona przez Jeffa De Luca i Petera Coada (1999). Koncentruje się na budowie systemu jako zestawu „features" — małych, wartościowych funkcjonalności.
5 procesów FDD
| # | Proces | Kto | Rezultat |
|---|---|---|---|
| 1 | Opracuj ogólny model | Architekci + BA | Model domeny |
| 2 | Zbuduj listę features | BA + deweloperzy | Lista funkcjonalności |
| 3 | Planuj po features | PM | Plan iteracji |
| 4 | Projektuj po features | Architekt | Diagramy sekwencji |
| 5 | Buduj po features | Deweloper | Działający kod |
Format feature
Każda feature opisywana jest w formacie:
\<akcja> \<wynik> \<obiekt> np. „Oblicz łączną kwotę zamówienia"
Dlaczego to ważne?
FDD jest naturalnym wyborem dla BA, bo wymusza myślenie o systemie jako zbiorze wartości biznesowych (features), a nie technicznych komponentów.