令和6年度 秋期 情報処理安全確保支援士試験 午前 II 問題 問23
テクノロジ開発プロセス
この問題は2024(R6)秋 情報処理安全確保支援士 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。
本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。
エクストリームプログラミング(XP:Extreme Programming)における“テスト駆動開発”の特徴はどれか。
解答・解説を読む
正解: 選択肢エ
正解の根拠
テスト駆動開発(TDD: Test-Driven Development)は、アジャイルソフトウェア開発手法の一つであるエクストリームプログラミング(XP: Extreme Programming)における代表的なプラクティスです。
その最大の特徴は、プログラムコードを書く前にテストコードを書くこと(テストファースト)です。実装前にテストを書くことで、開発する機能の仕様や要件が明確になり、設計の改善やバグの早期発見につながります。したがって、正解はエとなります。
各選択肢の解説
- ア: テスト駆動開発の主な目的は、最初のテストで多くのバグを摘出することではなく、仕様をテストとして定義し、実装を適切に進めることです。バグを摘出するのは一般的なテスト工程の目的です。
- イ: テスト駆動開発では「テスト作成 実装 リファクタリング」という短いサイクルを繰り返しますが、「テストケースの改善を繰り返す」こと自体が最も重要な特徴を表しているわけではありません。
- ウ: テスト駆動開発を行う結果としてコードのテストカバレージ(網羅率)は高くなる傾向がありますが、カバレージを高めること自体が目的ではありません。主な目的は、要求通りに動く保守性の高いコードを書くことです。
- エ: 正解。テスト駆動開発の最も根本的な特徴である「プログラムコードを書く前にテストコードを書く」ことを正しく説明しています。