目的別のサービスが多数連携し動作するような大規模な分散型システムでは、障害時の挙動を予知することが困難である。 このようなシステムにおいて、ステージング環境や本番環境で意図的に障害を引き起こしてシステムの挙動を観察し、発見した問題を修正することを継続的に実施し、システムの耐久所外性及びシステム運用の信頼性を高めていく手法はどれか。
| ア | DevOps |
| イ | Infrastructure as Code |
| ウ | カオスエンジニアリング |
| エ | テスト駆動開発 |
答え ウ
【解説】
| ア | DevOpsは、システムの開発側と運用側がお互いに連携し合い、運用や本番移行を自動化する仕組みなどを積極的に取り入れ、新機能をリリースしてサービスの改善を行う取組です。(×) |
| イ | Infrastructure as Code(IaC)は、サーバやネットワークをはじめとするITインフラの構成や設定をコード化して管理し、構築の自動化を行うことです。(×) |
| ウ | カオスエンジニアリング(chaos engineering)は、ステージング環境や本番環境で意図的に障害を引き起こしてシステムの挙動を観察し、発見した問題を修正することを継続的に実施し、システムの耐久所外性及びシステム運用の信頼性を高めていく手法です。(〇) |
| エ | テスト駆動開発(Test-Driven Development、TDD)は、動作するソフトウェアを迅速に開発するために、テストケースを先に設定してから、プログラムをコーディングする開発手法です。(×) |
【キーワード】
・ステージング環境