文章目录
一、开发模型
1、瀑布模型
1、概念
- 是线性模型的一种,在所有模型中占有重要地位,是所有其他模型的基础
- 每一个阶段执行依次,按线性顺序进行软件开发
2、测试的切入点
测试阶段处于软件实现后,必须在代码完成后流出足够的时间给测试活动,否则将导致测试不充分,很多问题到项目后期才暴露
3、优缺点
1)优点
- 开发的各个阶段比较清晰
- 强调早期计划及需求调查
- 适合需求稳定的产品开发
2)缺点
- 依赖于早期的需求调查,不适应需求的变化
- 单一流程不可逆
- 风险往往延至后期才显露,失去及早纠正的机会
- 问题在项目后期才显露
- 前面未发现的错误会传递并扩散到后面的阶段,可能导致项目失败
3)改良
沿用瀑布模型的线性思想,细化了各个阶段,在某些重要关注的阶段之间融入小型的迭代(即在每个阶段都进行测试,各部门人员集中起来看这个阶段是否完成的很好)
2、快速原型模型
1)描述
在开发真实系统之前,构造一个原型(即雏形),在该原型的基础上,逐渐完成整个系统的开发工作(实现一个基本原型,让用户对原型进行评价,逐步调整,使其满足用户最终需求)
- 第一步是建造一个快速原型,实现用户与系统的交互,用户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足用户的要求,开发人员可以确定用户的真正需求是什么
- 第二步是在第一步的基础上开发出用户满意的软件产品
2)优缺点
i、优点
- 克服瀑布模型的缺点,更好的满足用户的需求并减少由于软件需求不明确带来的项目开发风险
- 适合预先不能确切定义需求的软件系统的开发
ii、缺点
- 不适合大型系统的开发(适合开发小型的、灵活性高的系统);
- 前提要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新
3、螺旋模型
1)描述
螺旋模型将开发过程分为几个螺旋周期,每个螺旋周期大致和瀑布模型相符合,螺旋模型沿着螺旋线旋转,即在坐标的4个象限上分别表示了4个方面的活动
即:制定计划、风险分析、实施开发、客户评估
2)优缺点
i、优点
螺旋模型很大程度上是一种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评估
ii、缺点
采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能及时标识风险,势必造成重大损失。过多的迭代次数会增加开发成本,延迟提交时间