FE EXAM

バグ管理図(信頼性成長曲線)

発見・修正したバグの件数を時間で追って品質を管理する図。

INTERACTIVE VISUALIZATION
発見バグ累積
修正バグ累積
経過週
0週
発見バグ累積
0件
修正バグ累積
0件
シナリオ
ステップ1 / 6
STEP 1/6テストを始める前まだテストを始めていない状態です。これからテスト工程の中で「発見したバグ」と「修正したバグ」の件数を週ごとに記録し、累積(足し上げ)して折れ線グラフにします。横軸は経過した週、縦軸は累積のバグ件数です。
018365472012345678経過週累積バグ件数
週ごとの累積記録
12345678
発見822405564697172
修正314304758656972
解説

📌
バグ管理図とは

時間(週)→横ばい=収束急増

バグ管理図とは、テスト工程の中で発見・修正したバグの件数を時間(週や日)に沿って記録し、品質の安定度を管理するグラフです。多くは累積件数を縦軸、経過時間を横軸にとった折れ線で表します。

身近な例で考えると、大掃除でゴミ袋がいっぱいになっていく様子に似ています。最初はどんどんゴミが出ますが、片付けが進むにつれて新しく出るゴミは減り、最後はほとんど出なくなります。その「出なくなった」状態を見て掃除を終える、という判断と同じです。

上のツールで▶ボタンを押すと、8週間のテストで累積バグが急増し、やがて横ばい(収束)に向かう様子を確認できます。

📈
信頼性成長曲線

累積バグ件数のグラフは、一般にS字(アルファベットのSを寝かせたような形)の曲線を描きます。これを信頼性成長曲線と呼びます。テストが進むほどソフトウェアの信頼性(=安定して動く度合い)が育っていく様子を表すからです。

曲線は3つの局面に分けて読むと分かりやすいです。
初期(急増):未発見のバグが多く残るため、発見件数が一気に増える(傾きが急)
中期(鈍化):見つけやすいバグが減り、増加がゆるやかになる
後期(横ばい):残りバグがほぼ尽き、新たな発見がまれになる

代表的なモデルにゴンペルツ曲線などがあります。いずれも「最終的にバグの総数は一定の値に落ち着く」という考え方に基づきます。上のツールの初期・中期・後期のステップで、傾きが急→ゆるやか→水平へと変わる様子を確認できます。

🏁
収束の判定

収束とは、グラフの傾きが十分に小さくなり、ほぼ横ばいになった状態のことです。これは「もう新しいバグがほとんど出てこない=品質が安定してきた」というサインで、テストを終えてよいかどうかの目安になります。

収束したと判断するときの主なチェックポイントは次のとおりです。
曲線が横ばい:直近の数週で発見件数がほとんど増えていない
発見と修正がほぼ一致:見つけたバグがきちんと直され、未修正がたまっていない
件数が想定の範囲内:あらかじめ見積もった総バグ数に近い

逆に、まだ傾きが急なままであればバグが残っている可能性が高く、テストを続ける必要があります。また、テストの手を抜いてバグが見つかっていないだけで横ばいになることもあるため、「テストの量(実施件数)」と合わせて見るのが大切です。上のツールの収束判定のステップで、発見と修正の2本がほぼ重なり横ばいに近づく様子を確認できます。

練習問題

🎯
基本情報技術者 練習問題

Q1.バグ管理図の説明として最も適切なものはどれか。
A.発見・修正したバグの件数を時間で追って品質を管理する図
B.入力範囲の境界付近の値を一覧にした図
C.プログラムの分岐の真偽を表した図
D.ネットワークの構成を表した図
Q2.バグの累積件数が一般に描くとされる曲線(信頼性成長曲線)の形として適切なものはどれか。
A.右肩下がりに減り続ける直線
B.最初はゆるやかで途中から急増し続ける曲線
C.初期に急増し後半で横ばいになるS字曲線
D.一定の傾きで増え続ける直線
Q3.バグ管理図で「収束した(テストを終えてよい)」と判断する目安として最も適切なものはどれか。
A.累積バグの曲線の傾きが急なまま増え続けている
B.曲線の傾きが十分小さくなり、ほぼ横ばいになった
C.発見件数が修正件数を大きく上回っている
D.テストを開始した直後である

関連コンテンツ