平成27年度 プロジェクトマネージャ試験 午前II 問16
安全性と信頼性について,次の方針でプログラム設計を行う場合,その方針を表す用語はどれか。〔方針〕不特定多数の人が使用するプログラムには,自分だけが使用するプログラムに比べて,より多くのデータチェックの機能を組み込む。プログラムが処理できるデータの前提条件を文書に書いておくだけでなく,その前提条件を満たしていないデータが実際に入力されたときは,エラーメッセージを表示して再入力を促すようにプログラムを作る。
- ア フールプルーフ
- イ フェールセーフ
- ウ フェールソフト
- エ フォールトトレラント
解答・解説を見る
正解:ア
AI解説
正解はア。フールプルーフは、利用者が誤った操作や不正なデータ入力をしても、システムが異常動作しないように設計時点で誤りを想定して対策しておく考え方である。前提条件を満たさないデータにエラーメッセージを表示して再入力を促す設計は、人間の誤りを見越したフールプルーフの典型である。 ア: 正解。不特定多数の誤操作・誤入力を想定してデータチェックを組み込み、誤入力時に再入力を促すのはフールプルーフの方針である。 イ: フェールセーフは故障が発生したとき、システムを安全側の状態に導く設計(例:信号機の故障時は赤表示)であり、誤入力対策ではない。 ウ: フェールソフトは故障時に一部機能を切り離してでも縮退運転で稼働を継続する設計であり、誤入力対策ではない。 エ: フォールトトレラントは構成要素の冗長化などにより、故障が発生しても全体として正常に機能し続ける設計であり、誤入力対策ではない。 💡 「人の誤り対策=フールプルーフ」「故障時に安全側=フェールセーフ」「故障時も縮退で継続=フェールソフト」「冗長化で無停止=フォールトトレラント」。主語が「人のミス」か「機器の故障」かで、まずフールプルーフか否かを切り分けるのがコツである。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。