迭代模型
2015-12-03 20:14
211 查看
迭代模型(stagewise model)(也被称作迭代增量式开发或迭代进化式开发)
是一种与传统的瀑布式开发相反的软件开发过程,它弥补了传统开发方式中的一些弱点,具有更高的成功率和生产率。即所有功能一起开发,从粗到细,逐步求精。迭代模型适用于需求不甚明确、难度比较大的软件开发。
在迭代式开发方法中,整个开发工作被组织为一系列的短小的、固定长度(如3周)的小项目,被称为一系列的迭代。每一次迭代都包括了需求分析、设计、实现与测试。采用这种方法,开发工作可以在需求被完整地确定之前启动,并在一次迭代中完成系统的一部分功能或业务逻辑的开发工作。再通过客户的反馈来细化需求,并开始新一轮的迭代。
教学中,对迭代和版本的区别,可理解如下: 迭代一般指某版本的生产过程,包括从需求分析到测试完成; 版本一般指某阶段软件开发的结果,一个可交付使用的产品。
与传统的瀑布模型相比较,迭代过程具有以下优点:
1)降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。因拆分成了多个小项目,每个小项目完成都测试。
2)降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。因客户看过并反馈过每个迭代。
3)加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。因每次都专注于当前迭代。
4)由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。因此复用性更高
是一种与传统的瀑布式开发相反的软件开发过程,它弥补了传统开发方式中的一些弱点,具有更高的成功率和生产率。即所有功能一起开发,从粗到细,逐步求精。迭代模型适用于需求不甚明确、难度比较大的软件开发。
在迭代式开发方法中,整个开发工作被组织为一系列的短小的、固定长度(如3周)的小项目,被称为一系列的迭代。每一次迭代都包括了需求分析、设计、实现与测试。采用这种方法,开发工作可以在需求被完整地确定之前启动,并在一次迭代中完成系统的一部分功能或业务逻辑的开发工作。再通过客户的反馈来细化需求,并开始新一轮的迭代。
教学中,对迭代和版本的区别,可理解如下: 迭代一般指某版本的生产过程,包括从需求分析到测试完成; 版本一般指某阶段软件开发的结果,一个可交付使用的产品。
与传统的瀑布模型相比较,迭代过程具有以下优点:
1)降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。因拆分成了多个小项目,每个小项目完成都测试。
2)降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。因客户看过并反馈过每个迭代。
3)加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。因每次都专注于当前迭代。
4)由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。因此复用性更高
相关文章推荐
- CodeForces - 27E--Number With The Given Amount Of Divisors(反素数)
- 【PHP7】- 编译安装与新特性初体验
- quartz简单定时任务示例
- 排除中兴F607光猫无法拨打部分电话号码的故障
- python 简单爬虫实现
- 瀑布模型
- 边做边改模型
- 【android_温故知新】View 类的 XML 属性及相关方法说明
- 1087. All Roads Lead to Rome (30)
- zjnu 1462 - 舞会 (dijkstra) 解题报告
- Java 中的守护(Daemon)线程中finally代码块是否执行的问题
- HDU - 1392 Surround the Trees
- 读代码大全2——推荐书籍
- 求同一个圆内的圆弧的并的算法
- hdu 2454 Degree Sequence of Graph G
- 1203正规式转换为有穷自动机
- Android Material Design 控件之TabLayout 学习
- 大数据开发、云计算开发学习路线
- 异步FIFO的FPGA实现
- 在网页中添加样式