ITパスポート 令和3年度 問48
システム開発技術
既存のプログラムを,外側から見たソフトウェアの動きを変えずに内部構造を改善する活動として,最も適切なものはどれか。
- ア テスト駆動開発
- イ ペアプログラミング
- ウ リバースエンジニアリング
- エ リファクタリング
答えと解説
✓ これが正解エ リファクタリング
解説
リファクタリングは、外の動きを変えずに内部だけを整えます。
リファクタリングは、外から見たときのソフトウェアの振る舞いをそのままに保ちながら、中身の作りだけを整え直す活動です。長くなりすぎた処理を分ける、分かりにくい名前を付け直す、同じ記述の重なりをまとめる、といった手当てを行います。働きが変わらないので利用者から見た違いはありませんが、次に手を入れるときの読みやすさと直しやすさが上がり、間違いも入りにくくなります。外から見た動きが変わらないことが条件なので、直した後に前と同じ結果になるかを確かめられる試験を用意しておくことが欠かせません。機能を足したり不具合を直したりする作業と混ぜないことも大切で、混ぜてしまうと、動きが変わったのが整え直しのせいなのか改修のせいなのか分からなくなります。よって最も適切なのは、リファクタリングということになります。
ほかの選択肢の解説
- ア テスト駆動開発:テスト駆動開発は、先に試験を書いてから、それを通すように本体を書き進める作り方です。作る順序についての進め方であって、すでにあるプログラムの内部を整え直す活動そのものを指す言葉ではありません。先に試験を書く順序の工夫です。
- イ ペアプログラミング:ペアプログラミングは、二人が一台の画面を見ながら交代で書き進めるやり方です。誰がどう作業するかという進め方の工夫なので、内部の構造を改善するという活動の名前ではありません。二人で書くという進め方の工夫です。
- ウ リバースエンジニアリング:リバースエンジニアリングは、できあがったものを調べて、その設計や仕様を逆にたどって明らかにする作業です。中身を読み解く行為であり、読み解いた先で構造を書き換えて整えるところまでは含んでいません。読み解くところまでです。
関連用語
- リファクタリング外から見た動きを変えないまま、プログラムの内部を整理して読みやすくすることです。
- テスト
駆動開発 プログラムを書く前にテストケースを作り、合格するコードを書いて進める開発の方法です。 - ペアプログラミング二人が一台の画面を見ながら、交代でプログラムを書き進めるやり方です。
- リバースエンジニアリング既存の製品を分解して構造を解明し、どう作られているかを調べる手法です。
出典:令和3年度 ITパスポート試験 問48
解説は当サイト独自のもので、IPA(独立行政法人情報処理推進機構)とは関係ありません。
関連問題
- 令和8年度 問43
(リバースエンジニアリング) - 令和5年度 問49:
リファクタリングの 説明 (リファクタリング) - 令和5年度 問40:
DevOpsに 関する 記述 (ペアプログラミング) - 令和5年度 問39
(リファクタリング) - 令和4年度 問42
(テスト 駆動開発)
同じ分野の問題
誤りを見つけたら報告する