---
title: "稼働率とは？直列構成・並列構成の計算方法【基本情報技術者試験】"
description: "稼働率を「システムが使える状態にある割合」として整理し、直列構成と並列構成の違い、稼働率の計算方法、パーセントを小数に直して比較する手順をFE試験向けに解説します。"
last_modified_at: "2026-07-25"
canonical_url: "https://stemtazoo.github.io/fe/system-availability-calculation/"
section: "fe"
---

## まず結論

稼働率とは、**システムが使える状態にある割合**です。

基本情報技術者試験では、直列構成と並列構成を次のように切り分けます。

| 構成 | 動く条件 | 計算の考え方 |
|---|---|---|
| 直列構成 | すべて動いている必要がある | 稼働率を掛ける |
| 並列構成 | どれか1つ動いていればよい | 全部止まる確率を1から引く |

同じ稼働率 `R` のシステムを `n` 個つなぐ場合は、次の式で計算します。

```text
直列構成：R^n
並列構成：1 - (1 - R)^n
```

特に、**並列構成は「全部止まったときだけ全体が止まる」** と考えるのがポイントです。

## 直感的な説明

稼働率は、機械やシステムが「どれくらい使えるか」を表す割合です。

例えば、稼働率が99%なら、

```text
100時間のうち約99時間は使える
```

というイメージです。

システムを複数つなぐときは、つなぎ方によって全体の稼働率が変わります。

### 直列構成のイメージ

直列構成は、1つでも止まると全体が止まる構成です。

```text
A → B → C
```

A、B、Cのすべてが動いていないと、システム全体は動きません。

電車の線路で、途中の1区間でも止まると全体として通れないイメージです。

そのため、直列構成では稼働率が下がりやすくなります。

### 並列構成のイメージ

並列構成は、どれか1つが動いていれば全体として使える構成です。

```text
A
B
C
```

A、B、Cのうち、1つでも動いていればよいと考えます。

予備機を用意しておくイメージです。

1台が故障しても別の1台が動けばよいので、並列構成では稼働率が上がりやすくなります。

## 定義・仕組み

稼働率は、システムが正常に使える割合を表します。

一般的には、次のような式で表されます。

```text
稼働率 = 平均故障間隔 ÷ (平均故障間隔 + 平均修復時間)
```

平均故障間隔は MTBF、平均修復時間は MTTR と呼ばれます。

```text
MTBF = Mean Time Between Failures
MTTR = Mean Time To Repair
```

ただし、FE試験では、システム構成の稼働率を計算する問題もよく出ます。

### 直列構成

直列構成では、すべてのシステムが稼働している必要があります。

2つのシステムの稼働率が `R1`、`R2` のとき、全体の稼働率は次のようになります。

```text
直列構成：R1 × R2
```

3つなら、

```text
直列構成：R1 × R2 × R3
```

同じ稼働率 `R` のシステムが `n` 個なら、

```text
直列構成：R^n
```

です。

### 並列構成

並列構成では、どれか1つでも稼働していれば、全体として稼働していると考えます。

そのため、直接「どれか1つが動く確率」を求めるより、先に **全部止まる確率** を考えます。

2つのシステムの稼働率が `R1`、`R2` のとき、停止率はそれぞれ `1 - R1`、`1 - R2` です。

全部止まる確率は、

```text
(1 - R1) × (1 - R2)
```

です。

したがって、並列構成の稼働率は、

```text
並列構成：1 - (1 - R1)(1 - R2)
```

になります。

同じ稼働率 `R` のシステムが `n` 個なら、

```text
並列構成：1 - (1 - R)^n
```

です。

このテーマは、基本情報技術者試験の「システム構成要素」や「信頼性設計」と関係する内容です。公式の出題範囲やシラバスは、[IPA：基本情報技術者試験](https://www.ipa.go.jp/shiken/kubun/fe.html) から確認できます。

## 科目Aでどう出る？

科目Aでは、直列構成・並列構成の稼働率を計算して、どれが最も高いかを比較する問題が出やすいです。

まず、パーセントを小数に直します。

```text
70% → 0.7
80% → 0.8
90% → 0.9
99% → 0.99
```

次に、構成に合わせて計算します。

| 構成 | 使う式 |
|---|---|
| 直列 | 稼働率を掛ける |
| 並列 | 1 - 全部止まる確率 |
| 同じ稼働率Rをn個並列 | 1 - (1 - R)^n |
| 同じ稼働率Rをn個直列 | R^n |

例えば、稼働率80%のシステムを3つ並列にする場合は、次のように計算します。

```text
1 - (1 - 0.8)^3
= 1 - 0.2^3
= 1 - 0.008
= 0.992
```

つまり、全体の稼働率は 99.2% です。

比較問題では、最後に小数の大きさを比べます。

```text
0.992 > 0.9919 > 0.99
```

ここで、`0.992` と `0.9919` のように近い値が出ることがあります。

その場合は、桁をそろえて比べます。

```text
0.9920
0.9919
```

このように見ると、`0.9920` の方が少し大きいと分かります。

## どんな場面で使う？

問題文では、稼働率の式をそのまま選ぶより、冗長構成やシステム障害の説明を読ませる形で出ることがあります。

例えば、次のような構成です。

```text
現用機
予備機
```

現用機が止まっても、予備機に切り替えてサービスを続けられるなら、並列構成に近い考え方になります。

読むときは、次の点を確認します。

```text
1. 全部動かないと全体が動かないのか
2. どれか1つ動いていればよいのか
3. 稼働率を求めるのか
4. 停止率を使って考える必要があるのか
```

「1つでも止まると全体停止」なら直列構成です。

「どれか1つ動けば全体稼働」なら並列構成です。

また、システム構成図が出る場合は、直列部分と並列部分が混ざることもあります。

その場合は、まず小さなまとまりごとに稼働率を計算し、その結果をさらに組み合わせます。

```text
並列部分を先に計算
  ↓
その結果を直列部分と掛ける
```

というように、構成を分解して考えます。

## よくある誤解・混同

### 誤解1：並列なら単純に稼働率を足せばよいと思う

並列構成でも、稼働率を単純に足してはいけません。

例えば、稼働率80%のシステムを2つ並列にしても、

```text
0.8 + 0.8 = 1.6
```

とはなりません。

稼働率が100%を超えることはありません。

並列構成では、**全部止まる確率を1から引く** と考えます。

```text
1 - (1 - 0.8)^2
= 1 - 0.2^2
= 1 - 0.04
= 0.96
```

### 誤解2：直列構成でも稼働率が上がると思う

直列構成は、すべてが動いていないと全体が動きません。

そのため、部品やシステムを直列に増やすほど、全体の稼働率は下がりやすくなります。

例えば、稼働率90%のシステムを2つ直列にすると、

```text
0.9 × 0.9 = 0.81
```

になります。

1つのときよりも下がっています。

### 誤解3：停止率を使う理由が分からない

並列構成では、「どれか1つが動く」場合を直接数えると複雑になります。

そのため、逆の状態を考えます。

```text
全体が止まる
= 全部が止まる
```

全部止まる確率は計算しやすいので、

```text
1 - 全部止まる確率
```

で全体の稼働率を求めます。

### 誤解4：パーセントのまま計算してしまう

稼働率の計算では、パーセントを小数に直してから計算します。

```text
80% → 0.8
90% → 0.9
99% → 0.99
```

`80` のまま計算すると、結果が大きくずれてしまいます。

### 誤解5：近い値の比較で見間違える

稼働率の比較では、次のように近い値が出ることがあります。

```text
0.992
0.9919
0.99
```

この場合は、桁をそろえて比較します。

```text
0.9920
0.9919
0.9900
```

すると、どれが一番大きいか判断しやすくなります。

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

- 稼働率は、システムが使える状態にある割合
- 直列構成は、すべて動く必要があるので稼働率を掛ける
- 並列構成は、どれか1つ動けばよいので **1 - 全部止まる確率** で求める
- 同じ稼働率 `R` を `n` 個並列にすると `1 - (1 - R)^n`
- パーセントは小数に直し、近い値は桁をそろえて比べる
