平成21年度 プロジェクトマネージャ試験 午前II 問16

分野:テクノロジ|実際に出題されたIPA過去問題

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

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

正解:ア

AI解説

リバースエンジニアリングは,既存のソフトウェア(ソースプログラムなど)を解析して,設計書や仕様書といった上流の設計情報を導き出す技術である。開発の通常の流れ(仕様→プログラム)と逆方向(プログラム→仕様)であることが名前の由来であり,仕様書が失われた古いシステムの保守などで利用される。 ア: 正解。ソースプログラムを解析してプログラム仕様書という上流成果物を作り出すのは,まさにリバースエンジニアリングである。 イ: ソースを探索して修正箇所や影響範囲を調べるのは,保守における影響分析(影響調査)の説明である。 ウ: プログラムの外部的な振る舞いを変えずに構造化された形に変換するのは,リストラクチャリングの説明である。 エ: 振る舞いを変えずにソースを分かりやすい表現に書き換えるのは,リファクタリング(リストラクチャリング)の説明であり,仕様の導出ではない。 💡 「下流成果物から上流成果物を導く=リバース」,導いた仕様から再構築まで行えば「リエンジニアリング」。書換え系(リストラクチャリング/リファクタリング)との区別が定番のひっかけ。

出典:平成21年度 秋期 プロジェクトマネージャ試験 午前II 問16 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・904問収録)

「テクノロジ系(総合)」分野の攻略ポイント

高度共通 午前Iのテクノロジ系は、基礎理論からネットワーク・セキュリティ・開発技術まで広く浅く問われます。午前Iは60分30問で全分野から出るため、深追いよりも各分野の頻出パターンを取りこぼさないことが通過の鍵です。

テクノロジ系(総合)の攻略ポイントをすべて見る(要点5項目・ひっかけ2項目)→

同じ分野(テクノロジ)の過去問