边做边改模型
瀑布模型
制定计划、需求分析、软件设计、程序编写、软件测试、运行维护
遵循计划,强调文档的作用
存在的问题:文档工作量大;线性开发,只有开发周期结束之后才能看到成果;开发中的错误要等到测试阶段才能发现;在需求不明确、项目进行过程中变化大的情况下不可行
迭代模型(迭代增量式开发)
整个开发工作被划分成一个一个的小项目,被称为一系列的迭代,每一次迭代都包含需求分析、设计、实现、测试
优点:需求可以慢慢细化;开发进度加快
快速原型模型
建立一个快速原型,快速修改原型达到需求
结合了边做边改和瀑布的优点
增量模型
每个阶段不是交付一个可运行的完整产品,而是交付一个可运行的子集
可以适应变化
缺点:各个构件是逐步加入到 已有的软件体系中,因此,软件必须具备开放式的体系架构;对于开发过程中的需求变化,增量模型能够更好地适应,比瀑布模型和原型模型更优,但是容易退化成边做边改
旋螺模型
将瀑布模型个快速原型模型结合起来
旋螺模型沿着螺线进行若干次迭代,四个象限:
(1)制定计划:目标、实施方案、限制条件
(2)风险分析
(3)开发和验证
(4)客户评估
旋螺模型 由风险驱动,强调可选方案和约束条件,从而支持软件重,有助于将软件质量融入产品开发之中
敏捷开发
不适合大团队
大项目分成多个可以独立运行的小项目,分别完成,过程中软件一直处于可使用的状态
演化模型
事先不能完成定义需求
先完成核心需求,在此基础上精化需求
分批循环开发、增加新功能
可以看成重复执行的多个瀑布模型
喷泉模型
更多的增量和迭代兴致 生存期的各个阶段可以相互重叠和多次反复
瀑布模型:需求确定、分阶段进行
快速原型模型:渐进式需求、需求变化、需求复杂
增量模型:增量式地、一块块开发、需求稳定
迭代模型:需求不确定、迭代开发、逐步满足用户需求
旋螺模型:结合瀑布模型、快速原型模型
参考:https://www.cnblogs.com/liang--liang/p/3613815.html