软件过程
与软件过程改进
(第五部分:软件维护与软件管理,第12章)
李欣
Created: 2022-06-07 Tue 19:16
0.2. 本次课的目标
第五部分:软件维护与软件管理
第12章:软件过程与软件过程改进
- 软件过程概述
- 软件生存期过程国际标准
- 软件过程成熟度
- 软件能力成熟度模型
- 软件过程改进
1. 软件过程概述
- 过程概念
- 过程要素
- 输入
- 输出
- 活动 或进一步被分解的 任务 或 作业
- 资源
- 测量 与 验证
- 过程目标
- 过程思维
- 软件过程
2. 软件生存期过程国际标准
软件生存期过程 指的是 软件生存期 中可能出现的过程。
3.1. 什么是软件过程成熟度
软件过程成熟度(software process maturity) 是 软件过程改进 的一个重要概念,
指的是一个特定软件过程得到 清晰的定义 、 管理 、 测量 、 控制 以及 有效的程度 。
成熟度 意味着能力的增长具有潜力,而且表示组织软件过程是珍贵的,
在组织内所有项目中的应用是稳定一致的。
4.1. CMM与SEI
CMM 是 Capability Maturity Model(能力成熟度模型) 的缩写。
SEI 是 Software Engineering Institute(软件工程研究所) 的缩写。
4.3.1. 基于CMM的模型
- P-CMM
- SA-CMM
- IPD-CMM
- SE-CMM
- SSE-CMM
把上述多个模型结合起来,形成一个集成模型,使其能够兼顾多个目标,
这就是 CMMI(Capability Maturity Model Integration,集成能力成熟度模型) 的考虑。
4.3.2. CMMI
- 2002: CMMI1.1
- 2006: CMMI1.2
- 2010: CMMI1.3(现行的最新版本)
4.4.1. CMMI模型的两种表示
- 分级式表示的成熟度等级(Maturity Level, ML) 给出了软件组织实施过程改进
沿着从 低等级 逐步向 高等级 成熟度发展的路径。
- 初始级(ML1)
- 已管理级(ML2)
- 已定义级(ML3)
- 已量化管理级(ML4)
- 持续优化级(ML5)
- 连续式表示的能力等级(Capability Level, CL) 给出了软件组织在过程改进中
一些 过程域(Process Area, PA) 如何从 能力较低 的等级逐步向 高能力 等级发展的路径。
- 不完全级(CL0)
- 已执行级(CL1)
- 已管理级(CL2)
- 已定义级(CL3)
4.4.2. 两种表示的对比
等级 |
连续式表示(能力等级) |
分级式表示(成熟度等级) |
0级 |
不完整级 CL0 |
- |
1级 |
已执行级 CL1 |
初始级 ML1 |
2级 |
已管理级 CL2 |
已管理级 ML2 |
3级 |
已定义级 CL3 |
已定义级 ML3 |
4级 |
- |
已量化管理级 ML4 |
5级 |
- |
持续优化级 ML5 |
5.1. 软件过程改进的IDEAL模型
- 启动(Initiating)
- 诊断(Diagnosing)
- 建立(Establishing)
- 行动(Acting)
- 提高(Leveraging)
5.2. 软件过程改进框架
- 过程改进框架
- 过程改进基础设施
- 过程改进路线图
- 软件过程评估方法
- 软件过程改进计划
- 软件过程改进循环
5.3. 有效的软件过程
- 有效的软件过程应具备的条件
- 建立使软件过程更为有效的机制