软考计算题 · 软件测试 · 缺陷度量

缺陷密度怎么计算?

缺陷密度题不难,但很容易因为单位掉坑。题目通常给缺陷数和代码规模,问每千行代码有多少缺陷。关键是先把代码规模换成 KLOC。

计算题专题 软考题库编辑部 持续更新

缺陷密度不是缺陷总数

缺陷总数只能说明发现了多少个问题,但不能直接比较两个规模不同的系统。一个 1 万行代码的系统有 20 个缺陷,和一个 20 万行代码的系统有 20 个缺陷,质量含义完全不一样。

缺陷密度就是把缺陷数放到同一个规模口径下比较,常见口径是每千行代码缺陷数,也就是 defects/KLOC。

KLOC千行代码,1000 行代码 = 1 KLOC
缺陷密度缺陷数 / KLOC
例子50 个缺陷、10 KLOC,缺陷密度 = 5 个/KLOC

先统一代码规模单位

题目如果给的是 20000 行代码,不要直接用缺陷数除以 20000。要先换成 20 KLOC,再计算每 KLOC 的缺陷数。

如果题目给的是 15 KLOC,那就可以直接用缺陷数除以 15。计算题常见陷阱就在这里:行数和千行代码混在一起。

题目给法先做什么再怎么算
10000 行代码换成 10 KLOC缺陷数 / 10
25 KLOC单位已统一缺陷数 / 25
两个模块比较都换成同一口径比较缺陷密度,不只比较缺陷总数
问质量趋势看密度变化还要结合测试强度和发现阶段

指标要会算,也要会解释

缺陷密度高,通常说明单位规模内发现的缺陷更多,但它不是唯一质量指标。测试越充分,短期内发现的缺陷也可能更多;代码复杂度、模块重要性、缺陷严重程度也要一起看。

考试选择题一般不会让你展开这么多,但如果题干问“为什么不能只看缺陷总数”,答案通常就在规模归一化和指标解释上。

相关题目解析

下面这些题目和本专题的判断方法关联较强,适合读完概念后回到具体题干里校验理解。