MD 更新:未知
flowchart LR
A[螺旋模型] --> B[瀑布模型]
B --> C[增量模型]

原型模型

分类

  • 抛弃型
  • 演化型

阶段

  1. 原型开发阶段
  2. 目标软件开发阶段

瀑布模型

将软件生命周期的各个活动规定为线性顺序链接的若干阶段

特点

严格区分阶段,每个阶段因果关系紧密,只适合需求明确的项目

缺点

软件需求完整性、正确性难确定 严格串行化,很长时间看的结果


增量模型

融合瀑布模型和原型实现的迭代,可以有多个版本的发布,核心功能最先完成。

螺旋模型

特点

快速迭代 + 瀑布模型,引入风险分析。它是由制定计划、风险分析、实施工程、客户评估这一循环组成

V模型和W模型

特点

V模型强调测试贯穿项目始终,而不是集中在测试阶段 W 模型强调测试和开发并行

快速应用开发(RAD)

特点

是瀑布模型的高速变种,强调极短的开发周期

过程

业务建模 - 数据建模 - 过程建模 - 应用生成 - 测试与交付

构件组装模型

优点

  • 易扩展
  • 易重用
  • 降低成本
  • 安排任务灵活

缺点

  • 设计需要经验丰富架构师
  • 设计不好的构件难重用

统一过程

特点

用例驱动、以架构为中、迭代和增量

阶段

  • 构思阶段:定义最终产品视图和业务模型
  • 细化阶段:设计及确定系统架构
  • 构造阶段:开发测试
  • 移交阶段

敏捷开发

特点

以人为核心、迭代、循序渐进的开发方法,有小步快跑的思想

极限编程(XP)

  • 沟通
  • 简单
  • 反馈
  • 勇气