問題
マネジメント系
問49 リファクタリングの説明として,適切なものはどれか。
選択肢
- アソフトウェアが提供する機能仕様を変えずに,内部構造を改善すること
- イソフトウェアの動作などを解析して,その仕様を明らかにすること
- ウソフトウェアの不具合を修正し,仕様どおりに動くようにすること
- エ利用者の要望などを基に,ソフトウェアに新しい機能を加える修正をすること
解説
正解:ア
概要
この問題は、ソフトウェア開発におけるリファクタリングの意味について問う問題です。リファクタリングは機能を変えずに内部構造を改善し、保守性や可読性を高める手法です。
正解の理由
正解のアは、リファクタリングの定義に沿っており、ソフトウェアの外部仕様を維持しながら内部構造を改善する作業を指します。他の選択肢は、仕様解析やバグ修正、新機能追加などであり、リファクタリングとは異なる目的を持っています。
各選択肢の解説
ア(〇): リファクタリングはソフトウェアの機能を変更せずにコードや構造を改善する作業であり、保守性や可読性の向上を目的とするため正解です。
イ(×): ソフトウェアの動作を解析して仕様を明らかにする行為はリバースエンジニアリングに該当し、リファクタリングではないため不正解です。
ウ(×): 不具合を修正して仕様どおりに動かす作業はバグ修正であり、リファクタリングとは目的が異なるため不正解です。
エ(×): 新しい機能を追加する修正は機能拡張であり、リファクタリングの「機能を変えずに改善する」という定義に当てはまらないため不正解です。
ポイント
リファクタリングは「機能を変えずに内部構造を改善すること」を覚えておくことが重要で、バグ修正や新機能追加とは区別して理解する必要があります。