---
title: "修正費用の期待値とは？不良率と発見率から求める計算手順【基本情報技術者試験】"
description: "プログラム規模、不良率、発見率、影響度別割合、1件当たり修正費用から修正費用の期待値を求める手順を、単位と対象の絞り込みに注目してFE試験向けに解説します。"
last_modified_at: "2026-07-31"
canonical_url: "https://stemtazoo.github.io/fe/defect-repair-cost-expected-value/"
section: "fe"
---

## まず結論

プログラムの修正費用の期待値は、**全体の不良数から修正対象だけを段階的に絞り込み、最後に1件当たりの費用を掛けて求めます。**

基本情報技術者試験では、次の流れに分けると計算しやすくなります。

```text
プログラム規模 × 潜在不良率
→ 総不良数

総不良数 × 発見率
→ 発見される不良数

発見数 × 修正対象の割合
→ 修正する不良数

修正対象数 × 1件当たり修正費用
→ 修正費用の期待値
```

大切なのは、問題文に出てくる数値を全部使うことではありません。

**「実際に修正する対象はどれか」**を確認してから計算します。

## 直感的な説明

このタイプの問題は、箱の中から対象を順番に絞り込むイメージです。

例えば、プログラム全体に80件の不良が潜んでいるとします。

```text
潜在する不良　80件
```

そのうち、初年度に見つかるのが20%なら、対象は16件になります。

```text
80件 × 20% = 16件
```

さらに、その16件のうち影響度大が20%なら、修正対象は3.2件です。

```text
16件 × 20% = 3.2件
```

影響度大の不良1件当たりの修正費用が200万円なら、期待される修正費用は次のようになります。

```text
3.2件 × 200万円
= 640万円
```

途中で3.2件という小数が出ても問題ありません。

期待値は、同じ条件を何度も繰り返したときの平均的な見込みを表すためです。

## 定義・仕組み

### 期待値とは

期待値は、起こり得る結果を、その発生確率で重み付けした平均的な値です。

今回のような修正費用の問題では、次の2つを掛け合わせます。

```text
発生すると見込まれる件数
×
1件当たりの費用
```

不良が実際に3.2件発生するという意味ではありません。

多数の同じようなプロジェクトを考えたとき、平均して3.2件分の修正費用が必要になるという意味です。

### kステップとは

`kステップ`の`k`は、1,000を表します。

```text
1kステップ = 1,000ステップ
```

ただし、問題文でプログラム規模と不良率の両方が`kステップ`単位で示されている場合、単位を変換せずにそのまま掛けられます。

```text
2,000kステップ
× 0.04件 / kステップ
= 80件
```

`kステップ`が分子と分母で打ち消され、単位は件になります。

### 単位を付けて考える

計算式に単位を付けると、掛ける数値を間違えにくくなります。

```text
2,000 kステップ
× 0.04件 / kステップ
= 80件
```

次に、割合を掛けても単位は件のままです。

```text
80件 × 0.2 = 16件
16件 × 0.2 = 3.2件
```

最後に、1件当たりの費用を掛けます。

```text
3.2件 × 200万円 / 件
= 640万円
```

このテーマは、基本情報技術者試験のソフトウェア品質やプロジェクト管理に関係する内容です。公式の出題範囲やシラバスは、[IPA：基本情報技術者試験](https://www.ipa.go.jp/shiken/kubun/fe.html)から確認できます。

## 科目Aでどう出る？

科目Aでは、プログラム規模、不良率、発見率、重大度別割合、修正費用などが与えられ、費用の期待値を選ぶ問題として出題されます。

### 基本の計算手順

次の条件を例に考えます。

```text
プログラム規模：2,000kステップ
潜在不良率：0.04件 / kステップ
年間発見率：20%
影響度大の割合：20%
影響度大の修正費用：200万円 / 件
修正するのは影響度大だけ
```

#### 1. 総不良数

```text
2,000 × 0.04
= 80件
```

#### 2. 初年度に発見される不良数

```text
80 × 0.2
= 16件
```

#### 3. 影響度大の不良数

```text
16 × 0.2
= 3.2件
```

#### 4. 修正費用の期待値

```text
3.2 × 200万円
= 640万円
```

したがって、修正費用の期待値は640万円です。

### 一つの式にまとめる

慣れたら、次のように一つの式にまとめることもできます。

```text
2,000 × 0.04 × 0.2 × 0.2 × 200万円
= 640万円
```

ただし、最初から一行にすると、どの割合を掛けたか分からなくなりやすいです。

試験では、次のように途中の対象を書きながら進める方が安全です。

```text
総不良数　　　80件
発見される数　16件
影響度大　　　3.2件
修正費用　　　640万円
```

### 問題文の数値を全部使わない

例えば、影響度小について次の条件が書かれている場合があります。

```text
影響度小：80%
修正費用：50万円 / 件
```

しかし、問題文に「修正するのは影響度大だけ」と書かれていれば、影響度小の条件は使いません。

```text
問題文に数値がある
≠
必ず計算に使う
```

まず、修正対象を確認することが重要です。

## どんな場面で使う？

修正費用の期待値は、ソフトウェア保守や品質管理の費用を見積もる場面で使います。

例えば、次のような判断に役立ちます。

- 初年度の保守予算を見積もる
- 品質改善に掛ける費用と修正費用を比較する
- 重大な不良を優先して修正する
- テスト強化による費用削減効果を検討する

期待値は、実際の費用を必ず正確に予言するものではありません。

実際のプロジェクトでは、不良の偏りや修正難易度によって費用が変わります。

それでも、複数の案件を計画したり、予算を比較したりするときの目安になります。

## よくある誤解・混同

### 割合を足してしまう

発見率20%と影響度大20%を、40%として扱ってはいけません。

影響度大20%は、発見された不良の中の20%です。

```text
80件 × 0.2 × 0.2
= 3.2件
```

全体から見ると、次の割合です。

```text
0.2 × 0.2 = 0.04
```

つまり、総不良数の4%が初年度に発見される影響度大の不良です。

### 途中の小数を整数に丸める

期待値では、途中で3.2件のような小数が出ることがあります。

これを3件へ丸めると、期待値が変わってしまいます。

```text
3.2件 × 200万円 = 640万円
3件 × 200万円 = 600万円
```

問題文に丸めの指示がなければ、途中では丸めません。

### 発見率を掛け忘れる

潜在している不良が、初年度にすべて見つかるとは限りません。

```text
潜在不良数
≠
初年度の修正対象数
```

年間発見率が指定されている場合は、必ず掛けます。

### 影響度小の費用も加える

修正対象が影響度大だけなら、影響度小の費用は使いません。

```text
修正対象を確認
↓
必要な割合と費用だけ使う
```

### kステップをもう一度1,000倍する

プログラム規模が`2,000kステップ`、不良率が`0.04件/kステップ`なら、そのまま掛けられます。

```text
2,000 × 0.04 = 80件
```

両方の単位が対応しているため、さらに1,000倍する必要はありません。

## まとめ（試験直前用）

- 修正費用の期待値は、対象を段階的に絞って求める
- プログラム規模 × 不良率で総不良数を求める
- 総不良数 × 発見率で発見される不良数を求める
- 発見数 × 対象割合で修正対象数を求める
- 修正対象数 × 1件当たり費用で修正費用を求める
- 複数の割合は足さずに順番に掛ける
- 問題文に出た数値をすべて使うとは限らない
- 期待値では途中の小数を勝手に丸めない
- `kステップ`同士で単位が対応していれば、そのまま掛ける

```text
規模 × 不良率
→ 総不良数

× 発見率
→ 発見数

× 修正対象割合
→ 修正対象数

× 1件当たり費用
→ 修正費用の期待値
```
