応用情報技術者 2010年 春期 午前2 問47
問題文
表は、現行プロジェクトのソフトウェアの誤りの発生、除去の実績及び次期プロジェクトにおける誤り除去の目標を記述したものである。誤りは、設計とコーディングの作業で埋め込まれ、デザインレビュー、コードレビュー及びテストですべて除去されるものとする。次期プロジェクトにおいても、ソフトウェアの規模と誤りの発生状況は変わらないと仮定したときに、テストで除去すべきソフトウェア誤りの比率は全体の何%となるか。

選択肢
ア:17.5
イ:25
ウ:30
エ:32.5(正解)
🔒 解説は解答すると表示されます
工程別誤り除去率の計算【午前2解説】
正解の理由
次期プロジェクトでは、設計で埋め込まれる誤りが全体の50%、コーディングで埋め込まれる誤りが全体の50%である点は変わりません。レビューの目標は現行実績の1.5倍の除去率を達成することです。現行の除去率は設計レビューで設計誤りの50%を除去、コードレビューでコーディング誤りの40%を除去しています。したがって次期の除去率はそれぞれ (75%)と (60%)になります。各工程でレビュー後に残る誤りの比率は
- 設計由来のテスト行き = (12.5%)
- コーディング由来のテスト行き = (20%)
合計するとテストで除去すべき誤りは となり、選択肢エが正しいです。
解法ステップ
- 各工程の誤り埋め込み比率を確認:設計 50%、コーディング 50%。
- 現行レビュー除去率を確認:設計レビュー 50%、コードレビュー 40%。
- 次期の目標除去率を計算:各現行値に1.5倍を乗ずる。
- 設計レビュー目標 =
- コードレビュー目標 =
- レビュー後に残る各工程の誤りを計算:
- 設計残り =
- コーディング残り =
- テストで除去すべき合計 = 。
選択肢別の誤答解説
- ア: 17.5
典型的な誤りの一例として、コードレビューの改善率(1.5倍)を二重に適用してしまう誤りがあります。例えば設計は正しく とし、誤ってコードレビューの1.5倍をさらに掛けて (5%)とすると合計 になります。しかし1.5倍は「現行の除去率を1.5倍にする」ことを意味し、二乗して適用する根拠はありません。よってこの17.5%は誤った乗算の結果です。 - イ: 25
25%は、設計とコーディングの両方に設計レビュー側の改善(75%)だけを誤って適用した場合に生じ得ます。すなわち両方とも残りが になったとして合計 と計算する誤りです。実際にはコードレビューの現行除去率は40%であり、設計レビューの50%と入れ替えて適用する理由はありません。 - ウ: 30
30%は、「設計レビューの改善を適用しなかった(設計残りが現行の25%のまま)」かつ「コードレビューの改善を誤って二重適用して残りが5%になった」などの混合ミスで生じます(例:)。要するに一方の工程に改善を反映せず、他方に過剰適用するなどの手順ミスによる値です。正しい手順では両工程とも指定どおり1.5倍を適用します。
よくある誤解
- 「1.5倍」を「+50ポイント」で理解する誤り
例:40% を 40% + 50% = 90% としてしまうと極端に大きな除去率になり不合理です。倍率として扱い と計算するのが正解です。 - 改善率を「残り(テスト行き)」に掛ける誤り
改善はレビューの除去率に掛ける(除去率が増える)ので、計算は「残り = 埋め込み比 × (1 − 除去率×改善倍率)」で行います。除去率と残りを混同すると誤答になります。
補足コラム
一般化すると、工程 i に埋め込まれる誤り比率を 、現行レビュー除去率を 、改善倍率を (ここでは1.5)とすると、レビュー後にテストへ行く誤り比率は
です。各項は 0 以下にならない(除去率が1を超える理論上の値は100%で頭打ち)という点に注意してください。
FAQ
Q: 除去率が100%を超える場合はどうする?
A: 実務では除去率は最大100%(すべて除去)で頭打ちと考えます。今回の数値ではどちらも100%を超えないためそのまま計算できます。
A: 実務では除去率は最大100%(すべて除去)で頭打ちと考えます。今回の数値ではどちらも100%を超えないためそのまま計算できます。
Q: 「現行実績の1.5倍」はどの値に掛ける?
A: レビューによる「除去率」(現行の%)に掛けます(例:40%→60%)。残り(テスト行き)に直接掛けない点に注意してください。
A: レビューによる「除去率」(現行の%)に掛けます(例:40%→60%)。残り(テスト行き)に直接掛けない点に注意してください。
関連キーワード: レビュー除去率、設計レビュー、コードレビュー、テスト残存率、欠陥分布、ソフトウェア品質向上、改善倍率

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

