平成29年度 春期 データベーススペシャリスト試験 午前Ⅱ 問25
テクノロジ/開発技術ソフトウェアのリファクタリングの説明はどれか。
出典:平成29年度 春期 データベーススペシャリスト試験 午前Ⅱ 問25
- ア外部から見た振る舞いを変更せずに保守性が高いプログラムに書き直す。
- イソースコードから設計書を作成する。
- ウソフトウェア部品を組み合わせてシステムを開発する。
- エプログラムの修正が他の部分に影響していないかどうかをテストする。
正解:ア
解説
リファクタリングとは,ソフトウェアの外部から見た振る舞い(機能)を変更せずに,内部構造だけをより理解しやすく保守性の高い形に書き直す作業のことです。動作を変えずに設計・実装の質を高める点が特徴で,エクストリームプログラミングなどのプラクティスの一つとしても知られています。
選択肢ごとの解説
- ア正しい。外部から見た振る舞いを変更せずに,保守性が高いプログラムへ書き直すことが,リファクタリングの説明です。
- イ誤り。ソースコードから設計書を作成する作業はリバースエンジニアリングの説明であり,リファクタリングの説明ではありません。
- ウ誤り。ソフトウェア部品を組み合わせてシステムを開発する手法は,コンポーネントベース開発(部品の再利用による開発)の説明であり,リファクタリングの説明ではありません。
- エ誤り。プログラムの修正が他の部分に影響していないかを確認するテストは,回帰テスト(リグレッションテスト)の説明であり,リファクタリングそのものの説明ではありません。