正答4
解説
正解は4です。
ソフトウェア工学のエンジニアリング手法の用語を問う問題です。
通常の開発は設計からプログラムを作りますが、本問はプログラムから設計図(クラス図)を作る逆の流れです。
【選択肢別解説】
1:× バックトラッキングは、探索の途中で行き詰まったら一つ前の分岐点に戻って別の道を試す、アルゴリズムの手法です。
設計情報を作ることとは関係ありません。
2:× フォワードエンジニアリングは、設計書やモデルからプログラムを作る、通常の向きの開発です。
プログラムからクラス図を作るのは逆向きです。
3:× リエンジニアリングは、既存のソフトウェアを解析して設計を取り出し、それを改良して作り直す一連の工程です。
プログラムからクラス図を生成すること自体を指す用語ではありません。
4:○ リバースエンジニアリングは、既存のプログラムを解析して、仕様や設計情報を取り出すことです。
プログラムからUMLのクラス図を生成するのは、その典型例です。
【ポイント】
リエンジニアリング=リバースエンジニアリング+フォワードエンジニアリング、と整理すると覚えやすくなります。
他社製品のリバースエンジニアリングは、契約や法律で制限される場合があります。