平成30年度 秋期 午前Ⅱ 問25
ソフトウェア開発管理技術
リファクタリングの説明
ソフトウェアのリファクタリングの説明はどれか。
- ア外部から見た振る舞いを変更せずに保守性が高いプログラムに書き直す。
- イソースコードから設計書を再作成する。
- ウソフトウェア部品を組み合わせてシステムを開発する。
- エプログラムの修正が他の部分に影響していないかどうかをテストする。
答えと解説を見る
✓ これが正解ア外部から見た振る舞いを変更せずに保守性が高いプログラムに書き直す。
解説
リファクタリングは、振る舞いを変えずに保守性の高い形へ書き直すことです。
リファクタリングは、プログラムの外部から見た振る舞い、つまり入力に対する出力や機能を変えずに、内部の構造を整理して読みやすく、直しやすくすることです。重複したコードをまとめたり、分かりにくい名前を付け直したりして、保守性の高いプログラムに書き直します。振る舞いが変わっていないことを確かめるため、テストを繰り返しながら進めるのが一般的です。リファクタリングは、外から見た動きは同じで中だけをきれいにする作業、と覚えておくと、設計書の再作成やテストと区別しやすくなります。
ほかの選択肢はなぜ違うのか
- イソースコードから設計書を再作成する。:ソースコードを解析して設計書などを作り直すのは、リバースエンジニアリングです。既存のプログラムから設計の情報を取り出す作業で、プログラム自体を書き直すものではありません。
- ウソフトウェア部品を組み合わせてシステムを…:ソフトウェア部品を組み合わせてシステムを開発するのは、コンポーネントを再利用する開発の進め方です。既存のプログラムの内部構造を整理する作業ではありません。
- エプログラムの修正が他の部分に影響していな…:プログラムの修正が他の部分に影響していないかを確かめるテストは、回帰テスト(リグレッションテスト)です。リファクタリングの際にも行いますが、書き直しの作業そのものではありません。
この問題の用語
- 保守動いているシステムを使い続けられるように、点検や修正、更新を続ける作業です。障害の修正だけでなく、環境の変化に合わせた手直しも含みます。
- ソースコード人が読み書きできる形で書かれた、プログラムそのものです。コンパイラなどで、コンピュータが実行できる形に変換して使います。
- テスト決めたとおりに動くかを、実際に動かして確かめる作業のこと。何を確かめるかによって移行テスト、システムテストなどと呼び分けます。
出典:平成30年度 秋期 ネットワークスペシャリスト試験 午前Ⅱ 問25
同じ用語が出る問題
- 令和7年度 春期 午前Ⅱ 問25:ステージング環境の説明(テスト)
- 令和6年度 春期 午前Ⅱ 問25:バグトラッキングシステムの説明(ソースコード)
- 令和3年度 春期 午前Ⅱ 問25:リバースエンジニアリングの問題(保守)
- 平成30年度 秋期 午前Ⅱ 問24(保守)
- 平成26年度 秋期 午前Ⅱ 問25:リバースエンジニアリングの説明(ソースコード)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)