フールプルーフの具体例はどれ?似た用語との違いを整理
ITパスポート試験 令和5年度 問93 / システム構成要素 › システムの評価指標
過去問にチャレンジ
フールプルーフの考え方を適用した例として,適切なものはどれか。
- ア
HDDをRAIDで構成する。
- イ
システムに障害が発生しても,最低限の機能を維持して処理を継続する。
- ウ
システムを二重化して障害に備える。
- エ
利用者がファイルの削除操作をしたときに,“削除してよいか”の確認メッセージを表示する。
会話形式の解説
講師今回は信頼性設計の用語の問題です。フールプルーフが何に対する備えなのかを押さえておけば、選択肢を二つのグループに分けられます。
受験者フールプルーフ、フェールソフト、フォールトトレランスは、どれもカタカナで似ているので混ざってしまいます。どれも「システムを止めない工夫」くらいにしか覚えていませんでした。
講師そう覚えている人は多いです。フールプルーフは、使う人がうっかり間違えても、それが事故や誤動作にならないようにしておく考え方です。守る相手は「人の操作ミス」です。
受験者人のミスが相手なら、ファイルを消す前に「削除してよいか」と聞いてくる確認メッセージが当てはまりそうです。間違ってボタンを押しても、そこで止められます。
講師その通りです。いったん立ち止まって取り消せる場面を用意しているので、フールプルーフの代表的な例になります。ほかの三つは何を守っているか考えてみてください。
受験者HDDをRAIDで組むのは、ディスクが壊れたときのための仕組みだと思います。でも、データを守るという意味では人のミス対策にもなりませんか。
講師RAIDは複数のディスクを組み合わせて、性能や故障への強さを高める技術です。冗長性を持たせた構成なら一部のディスクが壊れても動き続けられますが、相手はあくまで機器の故障です。操作ミスで消したファイルを防ぐものではないので、フォールトトレランス側に入ります。
受験者システムを二重化するのも、片方が壊れたら予備に切り替えるという話なので、同じグループですね。
講師はい。二重化は冗長化、つまり予備をあらかじめ用意しておく方法で、フォールトトレランスの代表的な手段です。
受験者障害が起きても最低限の機能で処理を続けるという選択肢は、二重化と何が違うのでしょうか。
講師そこが一番紛らわしいところです。これはフェールソフトで、全部の機能は守れなくても、機能を絞って動かし続けることを目指します。予備に切り替えて普段どおり動かすのとは考え方が違います。ただ、障害への備えであって、人のミスを相手にしていない点は同じです。
受験者まず「人のミス」か「機器の故障」かで分けて、故障の側をさらに「機能を絞って続ける」フェールソフトと「冗長化で耐える」フォールトトレランスに分ける、という順番で考えればよいですね。
講師その整理で大丈夫です。フールプルーフの例はほかにも、入力値のチェック、エラーメッセージの表示、間違った向きでは差し込めない形のコネクタなどがあります。似た名前の用語と入れ替えて問われることがあるので、それぞれの目的を対にして覚えておくと迷いにくくなります。
まとめ
フールプルーフは、利用者が操作を誤っても事故や誤動作が起きないようにしておく設計の考え方です。ファイル削除の前に確認メッセージを出すのは、うっかりした操作を止める機会をつくるので、その典型的な例です。RAIDやシステムの二重化は冗長化によって機器の故障に耐えるフォールトトレランス、機能を絞って処理を続けるのはフェールソフトに当たります。用語を見分けるときは、まず対策の相手が「人のミス」か「機器の故障」かを考えると判断しやすくなります。
解答・解説
正解はエです
この問題のテーマ
信頼性設計に関わる用語のうち、フールプルーフの考え方を具体例と結び付けられるかを問う問題です。フェールソフトやフォールトトレランスとの区別がポイントになります。
解き方の考え方
最初に、フールプルーフは「人の誤操作によるミスや事故を防ぐ」考え方だと確認します。次に、各選択肢の目的が「人の操作ミスを防ぐこと」なのか「機器の故障や障害に備えること」なのかで分けます。故障や障害への備えに当たるRAID、機能を縮退して処理を続けること、二重化は、別の用語に分類されます。残る削除確認メッセージだけが誤操作を防ぐ仕組みなので、これが正解です。
選択肢ごとの解説
- ×ア HDDをRAIDで構成する。アのHDDをRAIDで構成するという例は、複数のHDDを組み合わせて耐障害性や性能を高める技術です。一部のディスクが故障しても稼働を続けられるようにするもので、フォールトトレランスの考え方に当たります。利用者の誤操作を防ぐものではないため、フールプルーフの例ではありません。
- ×イ システムに障害が発生しても,最低限の機能を維持して処理を継続する。イの、障害が起きても最低限の機能を維持して処理を続けるという説明は、フェールソフトの考え方です。機能を縮退させてでもシステムを止めないことが目的で、利用者の操作ミスを防ぐことを狙った仕組みではありません。
- ×ウ システムを二重化して障害に備える。ウのシステムを二重化して障害に備えるという例は、冗長化に当たります。冗長化はフォールトトレランスの代表的な方法で、片方が故障しても予備系で稼働を続けることを目指します。故障への対策であり、フールプルーフには分類されません。
- ○エ 利用者がファイルの削除操作をしたときに,“削除してよいか”の確認メッセージを表示する。エの、ファイル削除の前に確認メッセージを表示するという例は、うっかり削除してしまうことを防ぐ仕組みです。利用者に操作を取り消す機会を与えるので、人の誤操作による事故を防ぐフールプルーフの典型例です。
補足
フールプルーフは、不特定多数の人が操作するシステムで特に重要になります。ほかに、誤った向きでは差し込めない形状にするといった工夫も、よく挙げられる例です。試験では、名前の似たフェールソフトやフォールトトレランスと入れ替えて出題されることが多いので、それぞれの目的をセットで覚えておくと安心です。
POINT
- フールプルーフは、人の誤操作やミスがあっても誤動作や事故につながらないようにする設計の考え方です。
- 重要な操作の前の確認メッセージ、入力値のチェック、エラーメッセージの表示は、いずれもフールプルーフの例です。
- フェールソフトは、障害が起きたときに機能を縮退させて最低限の処理を続ける考え方です。
- フォールトトレランスは、二重化やRAIDなどの冗長化によって、一部が故障しても稼働を続けられるようにする考え方です。
- 用語を区別するときは、対策の対象が「人のミス」なのか「機器の故障」なのかを見ると判断しやすくなります。
