PMプロジェクトマネージャ試験 午前Ⅱ

平成21年度春期 プロジェクトマネージャ 午前Ⅱ 問16

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

ソフトウェアを保守するときなどに利用される技術であるリバースエンジニアリングの説明はどれか。

選択肢

  1. ア
    ソースプログラムを解析してプログラム仕様書を作る。
  2. イ
    ソースプログラムを探索して修正箇所や影響度を調べる。
  3. ウ
    ソースプログラムを見直して構造化プログラムに変換する。
  4. エ
    ソースプログラムを分かりやすい表現に書き換える。
解き方のヒントを見る

解析工程の前提を整理する視点

解析工程を扱う設問では、対象となる活動の目的、入力と成果物、前後の工程との関係を整理し、用語の役割を区別して考えることが重要です。各選択肢は同じ観点で確認しましょう。

この問題で問われていること

一つの確認軸として、各工程が何を明らかにするための活動か、その結果が次の判断や作業にどう引き継がれるかを、設問中の表現に沿って丁寧に整理してください。

視点

工程名だけで判断せず、その活動の目的と、前後の作業とのつながりを対応づけて整理します。似た用語は役割や扱う対象の違いに着目して比べましょう。

確認ポイント

  • 各工程の目的が設問の状況と対応しているか
  • 工程の境界と、前後で受け渡される内容を整理できているか
  • 似た用語を役割や対象の違いで区別できているか
正解と解説を見る

正解

ア

解説

リバースエンジニアリングは、既存のソースプログラムを解析し、プログラムの仕様や設計に関する情報を明らかにする技術です。保守時の理解や改修判断に利用される。

理由

リバースエンジニアリングは、完成済みのソフトウェアを調査・解析して、仕様書や設計情報などを得る活動です。ソースプログラムしか資料が残っていない場合でも、保守に必要な理解を補える。

比較

修正箇所や影響度を調べることは保守作業における影響分析であり、構造化への変換や読みやすい表現への書換えはプログラム変換・改善に当たる。これらはリバースエンジニアリングそのものの説明ではありません。

選択肢ア(正解)

これは正解だよ。ソースプログラムを解析して、そこからプログラムの仕様や設計に関する情報を明らかにし、仕様書として整理する活動は、既存ソフトウェアを調査して理解するリバースエンジニアリングの説明に合致する。

選択肢イ

これは不正解だよ。ソースプログラムを調べて修正箇所や影響度を確認することは、保守作業における影響分析や変更範囲の調査に当たる。既存プログラムから仕様を復元する技術の説明とは異なる。

選択肢ウ

これは不正解だよ。ソースプログラムを見直して構造化プログラムに変換することは、プログラムの構造改善や再構成に関する作業である。既存ソフトウェアを解析して仕様を明らかにする活動とは目的が異なる。

選択肢エ

これは不正解だよ。ソースプログラムを分かりやすい表現に書き換えることは、可読性を高めるための整形や改善に当たる。リバースエンジニアリングは、表現を書き換えることではなく、既存プログラムを解析して情報を得る技術である。

学習のポイント

解析によって既存ソフトウェアの仕様を明らかにする点を押さえる。

出典:独立行政法人 情報処理推進機構(IPA)平成21年度春期 プロジェクトマネージャ試験 午前Ⅱ 問16(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針