システム開発・マネジメント定義問題

ソフトウェア開発における「リファクタリング」とは何か。最も適切なものを選べ。

A.既存のシステムを新しい技術スタックで一から作り直すこと
✗ 一から作り直すことは「再構築(リビルド)」と呼ばれます。リファクタリングは既存コードの改善を指します。
B.プログラムの外部から見た振る舞いを変えずに、内部の構造を改善すること← 正解
✓ 正解です。リファクタリングは外部の動作を変更せずにコードの可読性・保守性・設計を改善する活動です。
C.テスト工程で発見したバグを修正してシステムの品質を高めること
✗ バグ修正はデバッグであり、リファクタリングとは目的が異なります。リファクタリングは不具合修正ではありません。
D.要件定義の変更に合わせてシステムの機能を追加・変更すること
✗ 機能の追加・変更は機能拡張であり、外部仕様を変えないリファクタリングとは区別されます。

基本情報技術者試験 の問題一覧