平成25年度春期 応用情報技術者試験 午前 問49

分野:システム開発技術(要件定義・設計・実装・テスト・レビュー・UML・オブジェクト指向・モジュール分割)|実際に出題されたIPA過去問題

ソフトウェアのリファクタリングの説明はどれか。

  1.  外部から見た振る舞いを変更せずに保守性の高いプログラムに書き直す。
  2.  ソースコードから設計書を作成する。
  3.  ソフトウェア部品を組み合わせてシステムを開発する。
  4.  プログラムの修正が他の部分に影響していないかどうかをテストする。
解答・解説を見る

正解:ア

AI解説

正解はア。リファクタリングとは、ソフトウェアの外部から見た振る舞い(機能・入出力)を変えずに、内部構造を整理して理解しやすく保守しやすいコードに書き直すことである。「外部仕様を変えない」+「内部品質の改善」の2点が定義の核心であり、XP(エクストリームプログラミング)のプラクティスとしても知られる。 ア: 正しい。外部から見た振る舞いを変更せずに、内部構造を改善して保守性の高いプログラムに書き直すのがリファクタリングである。 イ: 誤り。ソースコードから設計書などの上位成果物を作成するのはリバースエンジニアリングの説明である。 ウ: 誤り。ソフトウェア部品(コンポーネント)を組み合わせて開発するのは、部品化再利用・コンポーネントベース開発の説明である。 エ: 誤り。修正が他の部分に影響していないかを確認するテストは、リグレッションテスト(回帰テスト)の説明である。 💡 リファクタリングとリグレッションテストはセットで出る。「作り直しても動きは同じ=リファクタリング」「直した後に他が壊れていないか確認=リグレッションテスト」と対で覚える。

出典:平成25年度 春期 応用情報技術者試験 午前 問49 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「システム開発技術」分野の攻略ポイント

要件定義・設計・実装・テスト・レビュー・UML・オブジェクト指向・モジュール分割を扱います。テスト技法とモジュール結合度・凝集度は、定義を正確に押さえていれば計算も暗記も不要で確実に得点できます。

システム開発技術の攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(システム開発技術(要件定義・設計・実装・テスト・レビュー・UML・オブジェクト指向・モジュール分割))の過去問