Съдържание на статията
Agile – ключът към управлението на проекти в динамична среда
2 стр. - Практиките
3 стр. - Extreme programming (XP)
4 стр. - Scrum
5 стр.- Feature-Driven Development
6 стр.- Crystal
7 стр. - Dynamic System Development Methodology
8 стр. - Заключение
Всички страници

Feature-Driven Development (FDD)

Тази методология поставя акцента върху разбиването на общия проект на множество по-малки, всеки от които се занимава с едно свойство (feature) на системата. На първоначалния етап системата се декомпозира на отделни компоненти (subject areas), които съдържат групи свойства (feature sets), които от своя страна се състоят от множество свойства (features). Всяко свойство се описва функционално с израз от типа (on\for\to\over\from), например „add task to project“. По-нататък цялата разработка се групира в итерации, като за всяка итерация клиентът избира свойствата, които да се реализират. Спецификациите на отделните свойства се детайлизират в същата итерация, в която те се разработват, а не по-рано.

FDD дефинира пет специфични процеса:

  1. Разработка на общ модел
  2. Изготвяне на списък със свойства
  3. Планиране по свойства
  4. Дизайн на свойства
  5. Разработка на свойства

Първите два процеса се изпълняват в началото на проекта, а последните три се изпълняват в цикъл през всяка итерация и за всяко свойство.

Фокусът на FDD е в максимизирането на стойността за клиента чрез приоритизацията, която той прави на свойствата на всеки етап. Друго много важно качество на FDD е възможността за паралелна работа на много екипи. Това е възможно понеже на ранен етап на проекта имаме създаден списък от свойства и по-нататък всяко свойство се разработва самостоятелно.