功能驱动方法(Feature Driven Development,FDD)
目录 |
功能驱动方法是由Jeff De Luca和面向对象方法大师Peter Coad提出来的。与其他敏捷方法一样,它致力于用最短的迭代周期实现最多的可见可用的功能模块数。在功能驱动方法中,一个迭代周期一般是两周。
功能驱动方法有以下五项任务:
(1)建立总体模型。
(2)提出功用清单。
(3)针对功用逐项制订计划。
(4)针对功用逐项进行设计。
(5)针对功用逐项开发实现。
前三项在项目开始时完成,后两项在每一次迭代周期中都要做。每一项任务又可进一步分解并制订出相应的检验准则。
在功能驱动方法中,编程开发人员被分成两类:首席程序员和“类”程序员(Class Owner)。首席程序员是最富有经验的开发人员,他们负责定义系统的各项功能、各功能模块之间的关系。对每一项功能,首席程序员指定出需要哪些类来实现这项功能,并召集“类”程序员们组成一个针对这项功能的开发组。首席程序员作为协调者、设计者和指导者,而“类”程序员则主要作源码编写。