平成21年度春期 エンベデッドシステムスペシャリスト試験 午前II 問25
【問題25】
ソフトウェアを保守するときなどに利用される技術であるリバースエンジニアリングの説明はどれか。
ソースプログラムを解析してプログラム仕様書を作る。
ソースプログラムを探索して修正箇所や影響度を調べる。
ソースプログラムを見直して構造化プログラムに変換する。
ソースプログラムを分かりやすい表現に書き換える。
【解説】
ア: ソースプログラムを解析してプログラム仕様書を作る。
正しい。リバースエンジニアリングは、ソースコードや実行ファイルなどの既存のソフトウェアを解析して設計や仕様を明らかにする技術です。これはソフトウェアの保守や再構築に役立ちます。
イ: ソースプログラムを探索して修正箇所や影響度を調べる。
誤り。これは影響度分析の説明であり、リバースエンジニアリングそのものの説明ではありません。
ウ: ソースプログラムを見直して構造化プログラムに変換する。
誤り。これはリファクタリングの説明に近く、リバースエンジニアリングではありません。
エ: ソースプログラムを分かりやすい表現に書き換える。
誤り。分かりやすい表現への変換は、コードのリファクタリングやドキュメントの整備に該当します。
【答え】
ア: ソースプログラムを解析してプログラム仕様書を作る。
出典:平成21年度 春期 エンベデッドシステムスペシャリスト試験 午前II 問25