软件过程
与软件过程改进

(第五部分:软件维护与软件管理,第12章)

李欣

Created: 2022-06-07 Tue 19:16

0.1. 互动课堂

Click to host the seminar.

0.2. 本次课的目标

第五部分:软件维护与软件管理

第12章:软件过程与软件过程改进

  • 软件过程概述
  • 软件生存期过程国际标准
  • 软件过程成熟度
  • 软件能力成熟度模型
  • 软件过程改进

高水平音乐会:

  • 乐师、指挥
  • 奏法 / 乐器、舞台
  • 乐谱、曲目安排

质量生产率:

  • 人员
  • 技术 / 设备
  • 软件过程

1. 软件过程概述

  • 过程概念
  • 过程要素
    • 输入
    • 输出
    • 活动 或进一步被分解的 任务作业
    • 资源
    • 测量验证
    • 过程目标
  • 过程思维
  • 软件过程

2. 软件生存期过程国际标准

软件生存期过程 指的是 软件生存期 中可能出现的过程。

3. 软件过程成熟度

3.1. 什么是软件过程成熟度

软件过程成熟度(software process maturity)软件过程改进 的一个重要概念, 指的是一个特定软件过程得到 清晰的定义管理测量控制 以及 有效的程度

成熟度 意味着能力的增长具有潜力,而且表示组织软件过程是珍贵的, 在组织内所有项目中的应用是稳定一致的。

3.2. 过程制度化

  • 过程制度化
    • 过程文化
    • 过程基础设施
      • 组织管理基础设施
      • 技术基础设施

4. 软件能力成熟度模型

4.1. CMM与SEI

CMMCapability Maturity Model(能力成熟度模型) 的缩写。

SEISoftware Engineering Institute(软件工程研究所) 的缩写。

4.2. CMM的演化

  • CMM1.0
    • CMM1.1
  • CMM2.0
  • CMMI

4.3. CMM族和CMMI

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. 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

4.5. CMMI评估

  • 标准评估方法
  • 评估原则
  • 评估实施

5. 软件过程改进

5.1. 软件过程改进的IDEAL模型

  • 启动(Initiating)
  • 诊断(Diagnosing)
  • 建立(Establishing)
  • 行动(Acting)
  • 提高(Leveraging)

5.2. 软件过程改进框架

  • 过程改进框架
    • 过程改进基础设施
    • 过程改进路线图
    • 软件过程评估方法
    • 软件过程改进计划
  • 软件过程改进循环
    • 评估
    • 计划
    • 改进
    • 监控

5.3. 有效的软件过程

  • 有效的软件过程应具备的条件
  • 建立使软件过程更为有效的机制