瀑布模型、螺旋模型、敏捷开发

简介: 瀑布模型自上而下完成,软件开发进行到下一阶段之前彻底完成上一个阶段。 遵循以下顺序:需求分析和规范架构设计实现和综合验证操作和维护 瀑布模型适合开发需求特别明确的任务,缺点是一旦需求发生变化,瀑布模型就会陷入困境。

瀑布模型

自上而下完成,软件开发进行到下一阶段之前彻底完成上一个阶段。
遵循以下顺序:

  1. 需求分析和规范
  2. 架构设计
  3. 实现和综合
  4. 验证
  5. 操作和维护
    这里写图片描述
    瀑布模型适合开发需求特别明确的任务,缺点是一旦需求发生变化,瀑布模型就会陷入困境。

螺旋模型

螺旋模型是瀑布模型加上原型发展而来,主要思路是遍历下面四个阶段,每次产生都新模型都是从之前到版本提炼出来。

  1. 第一阶段:确定本次迭代的目标和约束
  2. 第二阶段:评估各种备选方案并确认,化解风险
  3. 第三阶段:开发和验证本次迭代原型
  4. 第四阶段:计划下一次迭代
    这里写图片描述

敏捷开发

螺旋和瀑布仍然不是最好的软件开发方法,2001年2月的敏捷宣言算得上软件工程的”改革里程碑”,核心价值观:

  1. 个体和互动高于流程和工具
  2. 工作的软件高于详尽的文档
  3. 客户合作高于合作谈判
  4. 相应变化高于遵循计划

敏捷开发在与客户合作的过程中,再项目原型里不断为客户增加新的功能,直到客户满意为止,允许客户在项目开发时改变他们想要的功能。敏捷开发的生命周期比较短,在不断和客户沟通的过程中迭代。

谬论:敏捷生命周期对软件开发来说是最好的。
敏捷很适合开发某些类型的软件,特别是saas应用,但并非对所有的软件来说都是最好的。例如,敏捷不适用于事关安全性的应用。

目录
相关文章
|
27天前
|
敏捷开发 测试技术 持续交付
探索自动化测试在敏捷开发中的关键作用
在快速迭代的软件开发流程中,自动化测试已成为确保产品质量和加快交付速度的核心要素。本文将深入分析自动化测试如何与敏捷开发相互促进,探讨其在持续集成和持续部署(CI/CD)环境中的实际应用,以及如何通过有效的测试策略提升软件项目的成功率。我们将讨论自动化测试的最佳实践,包括测试用例设计、测试框架选择、维护问题,以及如何衡量自动化投资的回报。
|
6月前
|
敏捷开发
Scrum 敏捷开发流程图:敏捷项目实施
​ 敏捷开发中的Scrum流程通常可以用一个简单的流程图来表示,以便更清晰地展示Scrum框架的各个阶段和活动。以下是一个常见的Scrum流程图示例:
|
7月前
|
敏捷开发 BI
敏捷开发SCRUM工具 2
敏捷开发SCRUM工具
97 0
|
7月前
|
敏捷开发 开发框架 测试技术
敏捷开发SCRUM工具 1
敏捷开发SCRUM工具
97 0
|
8月前
|
敏捷开发
敏捷开发
关于敏捷开发
113 0
|
9月前
|
敏捷开发 测试技术 程序员
浅谈软件开发模型之瀑布开发和敏捷开发
浅谈软件开发模型之瀑布开发和敏捷开发
|
敏捷开发 持续交付 UED
什么是真正的敏捷开发?敏捷开发与瀑布开发有何不同
什么是真正的敏捷开发?敏捷开发与瀑布开发有何不同。从本质上讲敏捷开发的一个重要目标是建立持续价值交付的能力。这种能力最终必须服务于业务的创新,促进业务的成功。
664 0
什么是真正的敏捷开发?敏捷开发与瀑布开发有何不同
|
敏捷开发 缓存 前端开发
敏捷开发实践
我们在第一次使用Scrum进行项目管理时,并没有看Scrum的规则,从直觉上做了以下几件事,巧合的是,跟Scrum中项目的前期准备sprint0 很多地方是一致的,这让我们后期切到Scrum更加顺滑。
敏捷开发实践
|
敏捷开发 前端开发 测试技术
|
敏捷开发 运维 数据可视化