IPA過去問ドリル

平成21年度 春期 データベーススペシャリスト試験 午前Ⅱ 問24

テクノロジ/開発技術

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

出典:平成21年度 春期 データベーススペシャリスト試験 午前Ⅱ 問24

正解:ア

解説

リバースエンジニアリングとは,既存のソースプログラムを解析することによって,そのプログラムの仕様(設計情報)を再構築し,プログラム仕様書などのドキュメントを作成する技術です。ソフトウェア保守において,仕様書が失われている,あるいは現状と一致しないソースコードの内容を明らかにするために利用されます。

選択肢ごとの解説

  • 正しい。ソースプログラムを解析してプログラム仕様書を作ることが,リバースエンジニアリングの説明である。
  • 誤り。ソースプログラムを探索して修正箇所や影響度を調べることは,保守における影響分析の説明であり,リバースエンジニアリングそのものの定義とは異なる。
  • 誤り。ソースプログラムを見直して構造化プログラムに変換することは,リストラクチャリング(構造化保守)の説明であり,リバースエンジニアリングとは異なる。
  • 誤り。ソースプログラムを分かりやすい表現に書き換えることは,リファクタリングやコードの可読性向上の説明であり,リバースエンジニアリングとは異なる。
データベーススペシャリストの過去問を演習モードで解く