【けっかんみつど】
欠陥密度 とは?
最終更新:
💡 見つかった欠陥を、同じ規模の単位で比べる
発見した欠陥数をソフトウェアの規模で割った指標。KLOCを使った計算例、比較に必要な条件、テスト不足や欠陥の重大度によって数字の解釈が変わる理由を解説します。
📌 このページのポイント
- 発見した欠陥数を、コード量などの規模で割る
- 1,000行を1 KLOCとすると、20件÷10 KLOCは2件/KLOC
- 同じ計測範囲・工程・数え方・規模の単位をそろえて比較する
- 数値だけで品質の良否や、未発見の欠陥数は決められない
欠陥密度は、どう計算するの?
見つかった欠陥数を、対象のソフトウェアの規模で割るんだ。コード行数を使うなら、1,000行を1 KLOCとして計算できる。1万行で20件を発見した例なら、20÷10=2件/KLOCになるよ。
行数で割ったら、20÷10,000じゃない?
それは1行あたりの値で、0.002件/行だよ。同じ結果を1,000行あたりに直すと2件/KLOCになる。分母が行数なのかKLOCなのか、単位を書かないと1,000倍の違いが出るんだ。
数字が小さいほど、品質が高い?
それだけでは決められないよ。テストが不十分で欠陥を見つけられていない場合もある。逆に、よく調べたために発見数が増える場合もある。テストの量や内容、どの工程で見つかった欠陥かも確認しよう。
ほかのチームの数値と比べてもよい?
コードの数え方、言語、対象範囲、欠陥の数え方、計測する工程などをそろえる必要があるよ。同じ現象を複数件で数えた値と、原因を1件として数えた値を混ぜると、比較の意味が変わってしまう。
品質を良くするためには、どう使う?
似た条件のモジュールや過去の案件と比べ、追加のテストや原因調査が必要そうな部分を探す手掛かりにするんだ。重大な障害と小さな表示ミスを同じ1件として数える指標なので、重大度や未修正の欠陥も別に見よう。
もっと詳しく知りたい人へ
「何件/KLOC以下なら合格」という共通の基準はある?
すべての言語・工程・製品にそのまま適用できる一律の合格値として扱うことはできません。類似案件の実績、求める信頼性、テストの方法などを使って、自分たちの判断基準を定めます。外部の統計を参照する場合も、計測条件と対象が合うかを確認します。
欠陥密度が0なら、欠陥は残っていない?
観測した範囲で欠陥を発見しなかったことと、未発見の欠陥が存在しないことは違います。検出した欠陥数を使った密度と、残っている欠陥数を推定した密度も区別します。コード行数以外の規模で割る場合は、その尺度と単位を明記します。
まとめ:ざっくりこれだけ覚えればOK!
「欠陥密度」って出てきたら「見つかった欠陥を規模あたりで見る指標」と思えばだいたいOK!
📖 おまけ:英語の意味
「Defect Density」 = 欠陥の密度
💬 欠陥数を規模の単位で割るため、密度と呼びます。KLOCなら1,000行あたりの件数です。規模にはコード行数以外の尺度を使う場合もあります。