システム構成

【応用情報】システム信頼性設計について解説

この記事ではシステム信頼性設計についてIT初心者にも分かりやすく解説します。

フォールトアボイダンス

  • フォールトアボイダンスは、障害が発生しないようにする設計
  • フールプルーフはフォールトアボイダンスの1つで、利用者に誤操作をさせない設計、もしくは誤操作しても問題を発生させない設計

フォールトトレランス

  • フォールトトレランスは、障害が発生しても問題を最小限にする設計
  • フェールソフトは稼働を重視したフォールトトレランスの1つで、障害が発生した箇所を切り離して縮小稼働する設計
  • フェールセーフは安全を重視したフォールトトレランスの1つで、障害が発生した時に安全な状態に移行する設計
  • フォールトマスキングはいつも通りを重視したフォールトトレランスの1つで、障害が発生しても外部に影響を及ぼさないようにシステムを二重で稼働させるような設計

応用情報ではシステム信頼性設計に関する問題が出題されます。是非最後までご覧ください。

システムの信頼性とは

システムを開発する上で大切なことが2つあります。

1つ目は、障害が発生しにくい設計にすることです
高性能のシステムを開発してもすぐに故障してしまったら、信頼してシステムを使うことが出来ません。

2つ目は、障害が発生しても大きなトラブルにならない設計にすることです
どれだけ障害が発生しないように準備しても不測の事態で障害が起きることはあります。例えば、飛行機の一部システムが上空で故障した時に、システム全体が停止すると大事故になってしまいます。障害が発生しても大きなトラブルにならない設計にすることは大切です

システム信頼設計の説明

システムの信頼性を上げるための設計をシステム信頼設計と言います。

システム信頼性設計は以下の2つに大きく分類されます。

  1. フォールトアボイダンス
  2. フォールトトレランス

フォールトアボイダンス

フォールトアボイダンスとは、障害が発生しないようにする設計です。フォールトには「失敗」、アボイダンスには「回避」という意味があります。

フォールトアボイダンスの例を紹介していきます。

フールプルーフ

フールプルーフとは、人間が誤った使い方をしても危険が生じないようにする、もしくは、そもそも誤った使い方を出来ないようにすることです。フールには「愚か者」、プルーフには「防ぐ」という意味があります。

例えば、洗濯機は蓋が閉まっていないと動きません。洗濯機の蓋が開いた状態で洗濯すると、子供が中に入って大事故が発生する可能性があるので、そもそもそんなことが発生しないようにしているという訳です。

フォールトトレランス

フォールトトレランスとは、万が一障害が発生した時でも問題が大きくならない設計です。フォールトには「失敗」、トレランスには「耐える」という意味があります。

フォールトトレランスの例を紹介していきます。

フェールソフト

フェールソフトとは、障害が発生した時に故障した箇所を切り離す等して、システム全体を止めずに稼働し続けるようにする設計です。フェールソフトは「稼働重視」です。フェールには「故障」、ソフトには「柔軟」という意味があります。故障しても柔軟に稼働し続けるということですね。

例えば、飛行機はエンジンを複数搭載しており、1つが故障しても飛び続けることが出来ます。飛行機は飛び続けないと大事故に繋がるのでフェールソフトに基づく設計がされています。

フェールセーフ

フェールセーフとは、障害が発生した時に、周りに危険が及ばないように安全な状態へ移行する設計です。フェールセーフは「安全重視」です。フェールには「故障」、セーフには「安全」という意味があります。故障しても安全ということですね。

例えば、ガスコンロは地震が発生した時に勝手に火が消えます。また、電車はブレーキが故障した時に非常ブレーキが作動して停止します。障害が発生した時に安全な状態へ移行するのがフェールセーフです。

フォールトマスキング

フォールトマスキングとは、障害が発生しても、外部に影響をもたらさないようにする設計です。フォールトマスキングは「いつも通り重視」です。フォールトには「失敗」、マスキングには「隠す」という意味があります。障害が発生してもバレない様に稼働するということですね。

例えば、銀行では全く同じシステムが常に2つ動いており、1つに障害が発生しても問題なく稼働し続けることが出来ます。システムを完全に動かし続ける必要があるシステムにフォールトマスキングが適用されます。

応用情報技術者試験での出題例

令和6年度春期問12、令和4年度秋期問13

応用情報技術者
午前試験 令和6年度春期問12、令和4年度秋期問13

システムの信頼性設計に関する記述のうち,適切なものはどれか。

ア フェールセーフとは,利用者の誤操作によってシステムが異常終了してしまうことのないように,単純なミスを発生させないようにする設計方法である。

イ フェールソフトとは,故障が発生した場合でも機能を縮退させることなく稼働を継続する概念である。

ウ フォールトアボイダンスとは,システム構成要素の個々の品質を高めて故障が発生しないようにする概念である。

エ フォールトトレランスとは,故障が生じてもシステムに重大な影響が出ないように,あらかじめ定められた安全状態にシステムを固定し,全体として安全が維持されるような設計方法である。

正解と解説

正解は”ウ”。フォールトアボイダンスは故障が発生しないようにする設計です。

ア:「フールプルーフ」の説明です。
イ:「フォールトマスキング」の説明です。
エ:「フェールセーフ」の説明です。

令和5年度春期問15

応用情報技術者
午前試験 令和5年度春期問15

コンピュータシステムの信頼性を高める技術に関する技術として,適切なものはどれか。

ア フェールセーフは,構成部品の信頼性を高めて、故障が起きないようにする技術である。

イ フェールソフトは,ソフトウェアに起因するシステムフォールトに対処するための技術である。

ウ フォールトアボイダンスは,構成部品に故障が発生しても運用を継続できるようにする技術である。

エ フォールトトレランスは,システムを構成する重要部品を多重化して,故障に備える技術である。

正解と解説

正解は”エ”。フォールトトレランスは故障が発生した時に備える設計です。

ア:「フォールトアボイダンス」の説明です。
イ:「フェールソフト」はソフトウェアでは無く、ハードウェアに起因する障害に対処します。
ウ:「フェールソフト」の説明です。

令和3年度秋期問13

応用情報技術者
午前試験 令和3年度秋期問13

信頼性設計においてフールプルーフを実現する仕組みの一つであるインタロックの例として,適切なものはどれか。

ア ある機械が故障したとき,それを停止させて代替の機械に自動的に切り替える仕組み

イ ある条件下では,特定の人間だけが,システムを利用することを可能にする仕組み

ウ システムの一部に不具合が生じたとき,その部分を停止させて機能を縮小してシステムを稼働し続ける仕組み

エ 動作中の機械から一定の範囲内に人間が立ち入ったことをセンサが感知したとき,機械の動作を停止させる仕組み

正解と解説

正解は”エ”。人間が誤った行動を取っても障害を発生させないようにするのがフールプルーフです。

インタロックの意味を知らなくても、「人間の誤りに対処するのがフールプルーフである」と知っていれば解ける問題です。