迭代式开发查看源代码讨论查看历史
迭代式开发也被称作迭代增量式开发或迭代进化式开发,是一种与传统的瀑布式开发相反的软件开发过程,它弥补了传统开发方式中的一些弱点,具有更高的成功率和生产率。
学习一个简单的例子,考虑一个阶乘的计算。阶乘的因子是从1到该数的整数。迭代定义为:如果算法的定义没有包含算法本身,则叫做迭代法。
教学中,对迭代和版本的区别,可理解如下: 迭代一般指某版本的生产过程,包括从需求分析到测试完成; 版本一般指某阶段软件开发的结果,一个可交付使用的产品。[1]
原理
在迭代式开发方法中,整个开发工作被组织为一系列的短小的、固定长度(如3周)的小项目,被称为一系列的迭代。每一次迭代都包括了定义、需求分析、设计、实现与测试。采用这种方法,开发工作可以在需求被完整地确定之前启动,并在一次迭代中完成系统的一部分功能或业务逻辑的开发工作。再通过客户的反馈来细化需求,并开始新一轮的迭代。
优点
1.降低风险
2.得到早期用户反馈
3.持续的测试和集成
4.使用变更
5.提高复用性
开发特征
1.在进行大规模的投资之前就解决了关键的风险分析。
2.使得早期的用户反馈在初始迭代中就能出现。
3.对各个目标里程碑提供了短期的焦点(阶段性的中心)。
4.对过程的测量是通过对实现的评定(而不仅仅是文档)来进行的。
5.可以对局部的实现进行部署。
视频
迭代式开发 相关视频
参考文献
- ↑ 四种软件开发模式(瀑布、迭代、螺旋、敏捷),对比分析,搜狐,2019-07-18