迭代模型 (stagewise model)
瀑布模型出现的一段时间内,很多政府部门、企业都采用这种方式来开发自己的产品,由于产品规模越来越大,产品交付时间越来越短等因素,导致瀑布模型的劣势越来越突出,远远超出其创造的价值。这些劣势主要集中在不可控需求风险及产品交付周期上。
迭代模型是为了实现快速的将产品交付给用户,在设计产品的时候,不像瀑布模型那样设计的非常大/完美,而是一个阶段一个阶段的实现部分功能,最终交付给用户一个完善的产品。其中每一个阶段的功能都使用瀑布模型开发,并且有一个可交付的产品成果。
优势:
1. 反馈周期短:每个阶段的工作成果可以快速的交付给用户,用户接到产品后,使用的效果,都可以快速的反馈给产品人员。
2. 降低产品风险: 开发工作按照既定的计划进行推进,而且推进的过程中,可以结合上一个阶段的用户反馈来细化需求或者合理的变动部分功能/业务逻辑,并开始新一轮的迭代.
3. 提高效率: 阶段性的功能拆分及快速质量反馈,是的开发人员清楚产品的功能定位和问题焦点,工作效率会提高,加快整个项目工作的进度。劣势:
团队水平:项目研发过程中,功能需求变动频繁导致风险增多,这对领导/组织者水平要求要高一些,软件研发团队的综合应变水平也有一定的要求。场景:
大部分项目的中后期的通用做法
高风险项目