運用中のソフトウェアの仕様書がないので, ソースコードを解析してプログラムの仕様書を作成した。この手法を何というか。
令和5年度 ITパスポート試験 問39
This question's explanation and your answers so far.
問 39
Incorrectア
Code review is an activity in which several people read through the written source code together to detect errors and quality problems. It is not a technique for recovering a specification document from existing code, so it is wrong.
Incorrectイ
Design review is an activity in which stakeholders verify the deliverables of the design process (such as design documents) to detect defects early. Its purpose differs from creating a specification by analyzing source code, so it is wrong.
- ウ
正解 Reverse engineering (option ウ) is a technique of disassembling and analyzing an existing product or software to recover its internal information such as structure, design, and specifications. In this question, because the software in operation has no specification document, the completed source code is analyzed to create the specification in reverse. This is exactly the process of tracing design information back from a product, so it corresponds to reverse engineering.
Incorrectエ
Refactoring is the work of improving and reorganizing the internal structure of a program without changing its externally observable behavior. It is not a technique for creating a specification document; its purpose is to improve code maintainability, so it is wrong.
- Reverse engineering = a technique that analyzes a finished product or software to recover internal information such as design and specifications in reverse.
- Distinguish its purpose from refactoring (improving internal structure) and code review / design review (verifying deliverables).