PMプロジェクトマネージャ試験 午前Ⅰ
令和5年度秋期 プロジェクトマネージャ 午前Ⅰ 問5
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- アインフラストラクチャの自律的なシステム運用を実現するために、インシデントへの対応手順をコードに定義すること
- イ各種開発支援ツールを利用するために、ツールの連携手順をコードに定義すること
- ウ継続的インテグレーションを実現するために、アプリケーションの生成手順や試験の手順をコードに定義すること
- エソフトウェアによる自動実行を可能にするために、システムの構成や状態をコードに定義すること
解き方のヒントを見る
手法の目的と効果の対応を確かめる
インフラの構築や運用管理に関する手法は、それぞれ解決したい課題と狙う効果を持っています。記述の適否を考える際は、述べられている効果や性質が、その手法の本来の目的から自然に導かれるものかどうかを一つの軸として落ち着いて検討してみましょう。
この問題で問われていること
問われているのは、手法の名称や用語だけでなく、その手法が何のために使われるのかという目的と、記述で述べられている内容が整合しているかどうかです。目的を自分の言葉で言えるかを確かめてから、記述との対応を丁寧に照らし合わせてください。
視点
構築や運用管理の手法は、どれも何らかの課題を解決するために生まれています。その手法がどんな課題を解決するために生まれたのかを先に整理しておくと、述べられている効果がその目的の延長線上にあるのか、目的とは関係のない性質が付け加えられているのかを見分けやすくなります。名称の印象や言葉の響きで判断せず、目的と効果の因果関係が成り立つかという一つの観点で見ることが大切です。
確認ポイント
- 登場する手法が、どのような課題を解決するために使われるのかを自分の言葉で説明できるか
- 述べられている効果や性質が、その目的から論理的に導かれるものになっているか
- 名称や用語の印象だけで判断せず、目的と内容のつながりを根拠にして適否を考えているか
正解と解説を見る
正解
エ
解説
IaCは、サーバやネットワークなどシステムの構成や状態をコードとして定義する考え方だよ。そのコードをソフトウェアが読み取って自動実行することで、環境の構築や変更を行えるようにするんだ。だから正解はエだよ。
理由
IaC(Infrastructure as Code)は、インフラストラクチャを含むシステムの構成や状態をコードに記述する考え方だよ。構成管理ツールなどのソフトウェアがそのコードを読み取り、環境の構築や変更を自動で実行するんだ。手作業による設定のばらつきを減らせるし、バージョン管理やレビュー、同じ環境の再現もしやすくなるよ。エの「ソフトウェアによる自動実行を可能にするために、システムの構成や状態をコードに定義すること」は、この考え方と一致しているね。
比較
アはインシデントへの対応手順、イは開発支援ツールの連携手順、ウはアプリケーションの生成手順や試験手順をコード化する記述だよ。どれも何かをコードに定義する点ではIaCと似て見えるね。でもコード化する対象がシステムの構成や状態ではないから、IaCの説明としては最も適切とはいえないんだ。特にウは継続的インテグレーション(CI)の説明だよ。
選択肢ア
これは不正解だよ。インシデントへの対応手順をコード化して自律的な運用を目指すのは、運用手順の自動化(ランブック自動化など)に近い記述だね。IaCの中心は、障害が起きたときの対応手順を書くことではないよ。サーバやネットワークなど、システムの構成や状態そのものをコードとして定義することなんだ。だから、最も適切な記述とはいえないよ。
選択肢イ
これは不正解だよ。開発支援ツール同士の連携手順をコードに定義するという記述は、ツールチェーンの連携設定やワークフロー定義の説明に近いね。IaCが対象にするのはツールの連携手順ではなく、インフラストラクチャを含むシステムの構成や状態だよ。それをコードに書いて、ソフトウェアが自動で構築・変更できるようにするのが要点なんだ。
選択肢ウ
これは不正解だよ。アプリケーションの生成(ビルド)手順や試験手順をコードに定義して継続的インテグレーションを実現する、というのはCIパイプラインの説明だね。CIはIaCと一緒に使われることも多いよ。でもコード化の対象はアプリケーションの生成と試験で、システムの構成や状態を定義するIaCとは別の概念なんだ。
選択肢エ(正解)
これは正解だよ。IaCは、サーバ、ネットワーク、ストレージなどのシステムの構成や状態をコードとして定義する考え方だよ。構成管理ツールなどのソフトウェアがそのコードを読み取り、自動実行して環境を構築・変更するんだ。手作業による設定のばらつきを減らし、バージョン管理や同じ環境の再現をしやすくするのが狙いで、この記述と一致しているよ。
学習のポイント
IaCと、CI(継続的インテグレーション)や運用手順の自動化との違いを、コード化する対象の違いで区別できるようにしよう。
出典:独立行政法人 情報処理推進機構(IPA)令和5年度秋期 プロジェクトマネージャ試験 午前Ⅰ 問5(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針