練馬のみなさまへ 協業のお願い!

情報処理技術者試験にでてくるシステムの信頼性について

システム・プログラミング系記事のキャッチ画像

基本情報技術者試験・応用情報技術者試験などの情報処理技術者試験には、フォールトトレランス・フォールトアボイダンスなどのシステムの信頼化に関する問題が頻出します。
今回はシステムの信頼化についてまとめました。

システムの信頼性をあげるには

情報処理技術者試験ではシステムの信頼性に関する問題が頻出します。
システムに「信頼性」という言葉を使う場合、多くの場合「どれだけ故障しにくいか?」「どれだけすぐに復旧するのか?」というような意味が含まれています。
故障しにくいシステムを構築し、信頼性を上げようとする考えをフォールトアボイダンスと呼び、故障しても被害を抑え、必要な機能を維持させようとする考えをフォールトトレランスと呼びます。

フォールトアボイダンス(故障排除)

フォールトアボイダンス(fault avoidance)を直訳すると「欠陥の忌避」となります。
システム構築に際し、設計を厳密にして故障が発生しないような開発を行うことや、トラブルが発生しないような運用を行うことで故障の発生を防ぎます。

フォールトトレランス(耐故障)

フォールトトレランス(fault tolerance)を直訳すると「欠陥の耐性」となります。
上述の通り、フォールトトレランスは故障しても必要な機能を維持しようとするアイデアですが、その中でも重要な考えがあります。
以下、その考えをまとめていきます。

フェールソフト

フェールソフトとは、装置の一部が故障しても、システムの全面的なサービス停止にならないようにする考えです。
Webサイトではサーバーを2台体制にして、サーバーが1台故障したとしても、片方のサーバーが稼働していればWebサイトが表示されるようにします。

フェールセーフ

フェールセーフとはシステムの一部に故障や異常が発生したとき、データの消失、装置の損傷やオペレータに対する危害が及ばないように安全な状態に保つことです。
例えばWebサイトにウィルスの埋め込みなどが検知された際には、Webサイトを一時非表示にしたり、メンテナンス画面を表示させたりする対応はフェールセーフに該当します。

フールプルーフ

フールプルーフとは、システムの使用者や運用に関わる人が誤操作を起こしにくくするために、決められた手順でしか情報を入力できないようにしたり、エラーメッセージを出して処理をやり直させたりする考え方です。
例としては、Webサイトのお問合せフォームのエラーメッセージが挙げられます。