软件过程模型的比较瀑布模型瀑布模型(经典生命周期)提出了软件开发的系统化的、顺序的方法
其流 程从用户需求规格说明开始,通过策划、建模、构建和部署的过程,最终提供一 个完整的软件并提供持续的技术支持
强调开发的阶段性,各阶段具有顺序性和依赖性2
强调早期调研和需求分析,推迟编码实现的观点3
提供了一个摸板,这个摸板使得分析、设计、编码、测试和支持的方法可以 在该摸板下有一个共同的指导缺点:1
文档驱动,用户无法及时了解产品的情况2
依赖早期调研和需求分析,很难适应在许多项目开始阶段必定存在的不确定 性
流程单一,必须要完成前一阶段的任务,才能进行下一阶段,开发过程中的 成功经验无法用于本产品
测试在后期引入,对于系统存在的重大缺陷,假如在可执行程序评审之前没 有被发现,将可能造成重大损失
组织庞大,人员闲置
适用范围:需求确定,工作能够采纳线性的方式完成的软件
增量过程模型增量过程模型包括增量模型、RAD 模型
(一)增量模型 增量过程模型以迭代的方式运用瀑布模型,把软件产品作为一系列的增量构件来设计、编码、集成和测试
每个构件由多个相互作用的模块构成,并且能够完成特定的功能
使用增量模型时,第一个增量往往是核心功能
能在较短的时间内向用户提交可完成部分工作的产品
逐步增加产品功能可以使用户有充裕的时间学习和适应新产品,从而减少一个 全新的软件可能给客户组织带来的冲击
规避技术风险4
可并行开发构件,加快开发的进度缺点:1
没有考虑软件的整体质量和长期的可维护性
大部分情况是不合适的操作算法被采纳目的为了演示功能,不合适的开发工 具被采纳仅仅为了它的方便,还有不合适的操作系统被选择等等
由于达不到质量要求产品可能被抛弃,而采纳新的模型重新设计适用范围:项目在既定的商业要求期限之前不可能找到足够的开发人员