软 件 质 量 及 质 量 模 型
---- 软 件 质 量 是 一 个 复 杂 的 概 念, 不 同 的 人 从 不 同 的 角
度 来 看 软 件 质 量 问 题, 会 有 不 同 的 理 解。 从 用 户 的 角 度
看, 质 量 就 是 满 足 客 户 的 需 求; 从 开 发 者 的 角 度 看, 质 量
就 是 与 需 求 说 明 保 持 一 致; 从 产 品 的 角 度 看, 质 量 就 是
产 品 的 内 在 特 点; 从 价 值 的 角 度 看, 质 量 就 是 客 户 是 否
愿 意 购 买。
----在 软 件 项 目 开 发 过 程 中, 项 目 经 理 眼 中 的 质 量 就 是 能
" 令 人 满 意" 地 工 作 以 完 成 预 期 功 能 的 软 件 产 品。 所 谓" 令
人 满 意", 包 括 功 能、 性 能、 接 口 需 求 及 其 他 指 标, 如 可
靠 性、 可 维 护 性、 可 复 用 性 和 正 确 性。 然 而 在 实 际 工 作 中
, 一 旦 出 现 问 题 时, 项 目 管 理 人 员 必 须 权 衡 利 弊, 作 出
取 舍, 在 满 足 某 一 个 指 标 的 同 时, 牺 牲 另 外 一 个 或 几 个
指 标。 比 如 为 了 按 期 交 货, 需 对 软 件 功 能 进 行 分 类, 在 第
一 个 版 本 中 实 现 优 先 级 较 高 的 功 能, 在 第 二 个 版 本 中 实
现 优 先 级 较 低 的 功 能。 因 此, 项 目 经 理 需 要 一 个 对 其 工
作 有 指 导 意 义 的 质 量 模 型 和 度 量 方 法。 该 模 型 一 方 面 可
以 帮 助 项 目 经 理 生 产 出 符 合 标 准 的 软 件 产 品, 另 一 方 面
帮 助 项 目 经 理 识 别 可 能 影 响 产 品 质 量 的 风 险。
----如 上 所 述, 项 目 经 理 需 要 一 个 易 于 理 解 的 质 量 模 型 来
帮 助 他 评 估 软 件 的 质 量 和 对 风 险 进 行 识 别、 管 理。 目 前
已 有 很 多 质 量 模 型, 它 们 分 别 定 义 了 不 同 的 软 件 质 量 属
性。 比 较 常 见 的 三 个 质 量 模 型 是McCall 模 型(1977 年)、Boeh
m 模 型(1978 年) 和ISO 9126(1993 年)。
----在 项 目 开 始 的 时 候, 项 目 经 理 应 该 根 据 客 户 的 需 求 及
项 目 的 特 点, 选 择 一 组 项 目 管 理 目 标, 针 对 这 组 目 标,
设 计 一 套 数 据 测 量 和 统 计 的 方 法。 这 组 管 理 目 标 应 该 与
软 件 产 品 和 软 件 过 程 的 属 性 相 关, 而 这 些 属 性 能 反 映 目
标 实 现 的 概 率。
----例 如, 从 实 用 的 角 度 出 发, 我 们 可 以 选 择 下 面 一 组 管
理 目 标: 需 求 的 质 量、 产 品 的 质 量、 开 发 的 有 效 性、 测 试
的 有 效 性。
----这 组 目 标 既 反 映 软 件 产 品 的 质 量 属 性, 又 反 映 软 件 过
程 的 质 量 属 性。 模 型 的 目 标 必 须 能 通 过 一 组 属 性 来 测 量
, 以 帮 助 对 风 险 的 定 义 和 分 类。
风 险
----风 险 就 是 遭 受 损 失 的 可 能 性。 软 件 开 发 风 险 管 理 过 程
包 括 风 险 的 识 别、 评 估 和 排 序 及 风 险 的 监 控。
----对 大 多 数 项 目 而 言, 容 易 产 生 风 险 的 软 件 质 量 区 域 有
: 正 确 性、 可 靠 性、 可 维 护 性、 可 复 用 性 和 交 货 期。
----对 不 同 项 目 和 不 同 的 项 目 经 理, 上 述 风 险 区 域 的 顺 序
可 能 是 不 同 的。 进 行 风 险 管 理 对 质 量 模 型 提 出 了 两 点 要
求: 一 是 要 求 模 型 支 持 对 风 险 的 量 化 表 示; 二 是 要 求 模
型 支 持 对 整 个 项 目 的 风 险 评 估。 即 对 风 险 的 测 量 应 该 可
以 经 归 纳 汇 总 得 到 某 一 软 件 阶 段 或 整 个 项 目 所 面 临 的
风 险。
----当 项 目 的 风 险 被 识 别 和 量 化 以 后, 应 该 对 它 们 进 行 分
类。 如 可 以 按 采 取 措 施 的 不 同 进 行 分 级:
----低 级 按 当 前 趋 势 推 进, 非 常 可 能 实 现 其 目 标, 无 需 制
定 应 急 计 划;
----中 级 按 当 前 趋 势 推 进, 有 可 能 实 现 其 目 标, 需 要 制 定
应 急 计 划;
----高 级 按 当 前 趋 势 推 进, 很 难 实 现 其 目 标, 需 立 即 制 定
应 急 计 划。
----分 类 工 作 通 常 需 要 统 计 数 据 的 支 持, 且 应 由 有 经 验 的
分 析 员 来 完 成。
质 量 模 型 和 风 险 评 估
----一 旦 项 目 经 理 选 定 了 管 理 目 标, 且 定 义 了 相 关 的 质 量
属 性, 就 应 该 着 手 定 义 测 量 标 的。 这 些 测 量 标 的 适 用 于
整 个 软 件 生 命 周 期, 包 括 初 期 阶 段, 这 将 有 助 于 在 软 件
开 发 的 初 期 发 现 潜 在 的 问 题。
需 求 质 量
----1 . 需 求 质 量 及 其 风 险
----需 求 是 软 件 开 发 活 动 的 基 础, 与 需 求 相 关 的 质 量 属 性
包 括 明 确 性、 完 整 性、 可 理 解 性、 需 求 的 波 动 性、 可 跟 踪
性。
----软 件 需 求 定 义 包 括 功 能 需 求, 即 软 件 应 做 哪 些 工 作;
性 能 需 求, 即 做 多 少 和 做 多 快; 接 口 需 求, 即 软 件 与 谁
接 口、 如 何 接 口 和 怎 样 接 口。 如 果 需 求 不 明 确、 不 完 整 或
不 易 理 解, 就 会 出 现 最 终 产 品 不 能 满 足 需 求 的 风 险。
----2 . 需 求 的 质 量 属 性 及 其 测 量
---- (1) 明 确 性
----不 明 确 的 需 求 是 指 那 些 有 多 种 含 意 的 需 求, 这 类 需 求
在 实 现 时, 不 同 的 开 发 人 员 会 有 不 同 的 理 解。 有 两 组 测
量 数 据 可 以 用 来 评 估 需 求 文 档 的 明 确 性: 一 组 是 不 明 确
的 需 求 用 语, 一 组 是 不 确 定 的 需 求 用 语。
----不 明 确 用 语: 适 当 的、 合 适 的、 适 用 的、 不 限 于、 通 常
、 至 少、 不 时。
----不 确 定 用 语: 可 以、 也 许、 作 为 候 选。
----需 求 的 不 明 确 性 可 以 从 不 明 确 或 不 确 定 的 需 求 用 语
中 反 映 出 来。
----(2) 完 整 性
----完 整 的 需 求 文 档 要 求 对 需 求 的 描 述 足 够 详 细, 使 设 计
和 实 现 可 以 在 此 基 础 上 进 行。 用 于 评 估 需 求 完 整 性 的 测
量 标 的 可 以 选 择 文 档 中" 待 定" 或" 待 补 充" 等 用 语 的 数 目
, 这 些 地 方 往 往 是 需 求 需 要 补 充 或 修 改 的 地 方。
----(3) 可 理 解 性
----有 两 个 标 的 物 可 以 反 映 需 求 的 可 理 解 性: 一 个 是 需 求
文 档 的 编 号 结 构, 另 一 个 是 可 读 性 评 估。 通 常, 需 求 的
编 号 结 构( 即 其 深 度 和 广 度) 反 映 了 需 求 文 档 的 质 量; 另
外, 索 引 的 可 读 性 也 是 影 响 需 求 可 理 解 性 的 重 要 因 素 之
一。
----(4) 需 求 的 波 动 性
----需 求 的 波 动 性 是 指 需 求 的 变 化 频 率。 需 求 变 化 对 软 件
质 量 的 影 响 随 着 开 发 工 作 的 接 近 完 成 而 越 来 越 大, 波 动
性 的 测 量 标 的 是 在 某 一 时 间 段 里, 需 求 的 变 化 条 目 数 与
需 求 的 总 条 目 数 之 百 分 比。 对 变 化 条 目 的 统 计 应 来 自 项
目 的 配 置 管 理 系 统。
----(5) 可 跟 踪 性
----软 件 需 求 是 从 系 统 需 求 中 分 析 得 来 的, 系 统 需 求 应 对
其 进 行 跟 踪, 以 确 保 软 件 需 求 在 系 统 设 定 的 环 境 下 正 常
工 作。 软 件 需 求 也 须 对 其 设 计、 实 现 及 测 试 过 程 进 行 跟
踪, 以 确 保 其 作 为 软 件 一 部 分 的 正 确 性。 有 两 个 可 跟 踪
性 的 测 量 标 的 物, 一 是 没 有 对 系 统 需 求 进 行 跟 踪 的 软 件
需 求 条 目 数; 另 一 个 是 没 有 跟 踪 到 代 码 和 测 试 的 软 件 需
求 数。
----3 . 需 求 风 险
----已 被 公 认 的 一 点 是, 质 量 差 的 需 求 文 档 及 多 变 的 需 求
是 项 目 风 险 的 主 要 来 源。 需 求 的 波 动 性 是 风 险 的 一 个 重
要 因 素, 需 要 下 大 力 量 对 其 进 行 测 量, 以 减 少 其 影 响。
需 求 变 化 发 生 得 越 晚, 产 生 的 影 响 越 大, 风 险 也 越 大。 值
得 一 提 的 是, 对 需 求 风 险 的 测 量 应 贯 穿 整 个 软 件 生 命 周
期。
产 品 质 量
----1 . 产 品 质 量 及 其 风 险
----软 件 开 发 项 目 的 主 要 目 的 就 是 生 产 符 合 项 目 需 求 的
代 码 和 文 档。 因 此, 需 要 进 行 测 量 的 质 量 属 性 有: 体 系/
结 构、 复 用 性、 可 维 护 性 及 文 档 与 代 码 的 一 致 性。
----2 . 软 件 质 量 属 性 和 测 量 标 的
----体 系/ 结 构、 复 用 性 和 可 维 护 性 使 用 相 同 的 质 量 属 性,
包 括 复 杂 性、 程 序 大 小 及 两 者 的 关 系。
----(1) 复 杂 性
----人 们 已 经 普 遍 认 为, 高 复 杂 性 的 模 块 不 仅 难 以 理 解,
而 且 容 易 出 错。 因 此, 复 杂 性 对 软 件 质 量 及 可 维 护 性 和
复 用 性 有 着 直 接 的 影 响。
----对 复 杂 性 的 测 量, 有 许 多 种 类 型 的 标 的 物, 例 如:
----逻 辑 复 杂 性 线 性 无 关 的 测 试 路 径 数 目;
----数 据 复 杂 性 数 据 类 型 和 参 数 传 递 数 目;
----调 用 复 杂 性 从 模 块 进、 出 的 调 用 数 目;
----嵌 套 级 别 条 件 语 句 嵌 套 的 深 度。
----其 中, 逻 辑 复 杂 性 与 程 序 的 可 测 试 性 和 可 维 护 性 直 接
相 关。
----(2) 程 序 大 小
----对 程 序 大 小 的 测 量 主 要 是 计 算 代 码 行 数, 计 数 方 法 主
要 有: 代 码 行 数( 头 文 件、 定 义、 执 行 及 不 可 执 行 语 句)
、 非 注 释 行 及 非 空 代 码 行 数、 可 执 行 代 码 行 数 三 种。
----模 块 的 大 小 是 质 量 的 一 个 标 识, 一 般 的 工 业 标 准 是 每
个 模 块50 ~100 行 代 码。 更 大 的 模 块 将 难 以 理 解, 因 而 会
降 低 可 维 护 性 和 复 用 性。
----3 . 内 部 文 档
----文 档 是 代 码 内 容 的 说 明。 它 可 以 是 与 代 码 分 离 的 手 册
, 也 可 以 是 在 程 序 中 的 注 释。 对 内 部 文 档 的 测 量 标 的,
我 们 建 议 选 择 在 程 序 中 的 注 释。
----在 计 算 注 释 行 数 时, 在 线 和 非 在 线 的 注 释 行 数 都 应 该
统 计 在 内。 在 线 的 注 释 包 括 在 可 执 行 的 语 句 里 面, 许 多
工 具 都 忽 略 了 对 在 线 注 释 的 统 计。
实 现 有 效 性 及 其 风 险
----实 现 有 效 性 是 指 在 项 目 计 划 的 活 动 中, 最 大 限 度 地 发
挥 资 源 的 效 能。 与 这 一 目 标 相 关 的 属 性 及 其 测 量 标 的 有
:
----资 源 的 使 用 资 源 在 项 目 的 不 同 阶 段 的 使 用 情 况。 对 资
源 测 量 一 般 以" 人 · 时" 为 单 位, 测 量 通 常 针 对 在 生 命 周
期 不 同 阶 段 的 活 动 进 行, 这 些 活 动 是 由 项 目 定 义 的。 应
该 进 行 测 量 的 主 要 活 动 有: 需 求 分 析、 编 码、 测 试、 改 错
、 培 训 等。
----完 成 率 某 一 项 活 动 或 任 务 完 成 的 百 分 数。 任 务 和 产 品
部 件 的 完 成 率 是 一 个 项 目 能 否 按 期 交 付 产 品 的 标 识 物。
如 果 有 详 细 的 计 划, 完 成 率 是 可 以 测 量 的, 而 且 可 以 作
出 计 划 与 实 际 完 成 情 况 的 比 较 图。
----需 要 强 调 的 是, 资 源 的 使 用 率 和 任 务 的 完 成 率 不 应 该
用 来 计 算 开 发 人 员 的 生 产 率, 一 旦 如 此, 开 发 人 员 往 往
会 停 止 合 作。
----在 设 计 阶 段, 甚 至 在 实 现 阶 段, 如 果 把 大 量 的 精 力 花
在 与 需 求 有 关 的 活 动 上, 项 目 将 会 面 临 很 大 的 风 险。
测 试 的 有 效 性 及 其 风 险
----所 谓 有 效 测 试 的 目 的 是 查 找 并 修 改 软 件 中 的 错 误, 识
别 易 发 生 错 误 的 软 件, 按 时 完 成 测 试 工 作, 使 软 件 能 令
人 满 意 地 工 作。
----一 旦 代 码 通 过 单 元 测 试 之 后, 正 式 的 测 试( 包 括 系 统
测 试、 集 成 测 试 及 验 收 测 试) 就 开 始 了。 这 一 过 程 的 目
的 是 找 出 子 系 统 和 各 组 件 间 由 于 未 预 料 到 的 交 互 而 产 生
的 错 误, 同 时 确 认 系 统 提 供 了 需 求 中 所 描 述 的 功 能。
----测 试 有 效 性 的 属 性 及 测 量 标 的 是:
----正 确 性 在 这 里, 正 确 性 的 定 义 是 代 码 完 成 需 求 定 义 的
程 度, 其 含 意 之 一 是 软 件 必 须 是 没 有 错 误 的。 错 误 是 在
测 试 和 复 审 过 程 中 查 找 出 来 的。
----正 确 性 的 测 量 标 的 物 是 如 下 错 误 信 息: 检 测 日 期、 修
改 完 毕 日 期、 错 误 级 别、 测 试 案 例 号、 错 误 来 源、 修 改 错
误 影 响 到 的 代 码。
----通 过 统 计, 我 们 发 现 在 测 试 中 找 到 的 错 误 数 目 累 计 分
布 情 况 大 致 如 下:
----即 随 时 间 的 推 移, 错 误 的 累 计 数 将 会 达 到 某 一 极 限 值。
----正 确 性 就 是 报 告 发 现 的 错 误 数 量, 在 测 试 过 程 进 行 到
1/3 时, 根 据 经 验 曲 线, 预 测 总 的 错 误 数 目。
----通 过 代 码 模 块 和 子 系 统 发 生 的 错 误 数 可 以 预 测 风 险。
即 对 发 生 的 错 误 数 超 过 了 平 均 值 的 代 码 段 应 该 进 行 重
点 分 析, 看 是 否 应 进 行 返 工。
联 合 风 险 评 估
----对 有 些 风 险 的 评 估, 也 许 需 要 考 虑 其 他 质 量 目 标 的 测
量 结 果。 例 如, 高 需 求 波 动 率 仅 通 过 需 求 的 变 化 数 是 无
法 测 量 的, 还 必 须 在 需 求 阶 段 结 束 后 统 计 所 有 项 目 人 员
花 在 需 求 管 理 活 动 上 的 时 间。 一 个 很 有 意 义 的 测 量 标 的
是 花 在 每 一 个 需 求 改 变 上 的 平 均 时 间, 它 是 用 总 需 求 变
化 数 除 相 应 时 间 段 内 花 在 需 求 分 析 上 的 总 时 间。
----另 外 一 个 风 险 评 估 的 测 量 标 的 物 是 对 模 块 按 其 大 小
和 复 杂 性 进 行 风 险 分 级, 同 时 考 虑 在 模 块 中 发 现 的 关 键
错 误 的 数 目。 很 明 显, 模 块 越 大, 复 杂 性 越 高, 且 发 现 的
关 键 错 误 越 多, 该 模 块 产 生 风 险 的 概 率 也 越 大。
----以 上 介 绍 的 质 量 模 型 是 在 参 考 国 外 的 一 些 质 量 模 型
的 基 础 上, 根 据 我 公 司 多 年 软 件 开 发 的 经 验 建 立 起 来 的
, 它 具 有 下 列 特 点:
----(1) 模 型 是 动 态 的, 不 是 静 态 的, 它 可 以 反 映 开 发 过 程
中 的 多 个 顺 时 状 态, 模 型 产 生 的 数 据 可 用 来 在 项 目 的 各
里 程 碑 处 预 测 项 目 风 险。
----(2) 该 模 型 引 入 了 一 整 套 完 整 的 测 量 机 制, 包 括 质 量
目 标、 质 量 属 性 和 对 软 件 产 品 及 开 发 过 程 的 测 量 标 的。
----(3) 模 型 易 于 理 解, 同 时 也 很 实 用。 我 们 可 以 根 据 项 目
的 具 体 特 点 在 开 发 的 不 同 阶 段 引 入 适 当 的 质 量 目 标。 模
型 的 另 一 个 特 点 是 它 的 测 量 标 的 物 所 基 于 的 质 量 属 性
是 那 些 项 目 经 理 所 关 心 的 质 量 属 性。 模 型 包 括 了 对 数 据
分 析 方 法 的 指 南。
--