XP(エクストリームプログラミング)とは?えっくすぴー
XP(エクストリームプログラミング)とは、コミュニケーション、シンプルさ、フィードバック、勇気、尊重の5つの価値を掲げるアジャイル開発手法。ペアプログラミング、テスト駆動開発、リファクタリング、継続的インテグレーション、ソースコードの共同所有、小さなリリース、オンサイト顧客、計画ゲーム、持続可能なペースといったプラクティスの組で構成される。
最終更新:2026-10-06
この語が出る過去問を解く →背景
要求が固まらないまま長期の計画を立て、変更を逸脱として抑え込む進め方は、変化の速い領域では実態と合わなかった。変更が来ることを前提に、周期を短くしてフィードバックを何度も受ける方向へ振り切ったのがXPである。プラクティスは互いを支え合う設計で、自動テストなしのリファクタリングや、共同所有なしの継続的インテグレーションは成立しにくい。
具体例
提唱者はKent Beckで、五つの価値とプラクティスの体系は書籍として公開されている。継続的インテグレーションはJenkinsやGitHub Actionsが担い、変更のたびに自動テストとビルドを回す。ペアプログラミングは常時レビューとして働き、危うい実装をその場で止められるため、セキュアコーディングの徹底手段としても位置づけられる。
試験での引っ掛け
「詳細設計書をすべて固めてから実装する」「モジュールは担当者だけが触る」はどちらもXPの逆で、後者はソースコードの共同所有と正面から反する。スクラムと混ぜた選択肢も多く、スプリント・プロダクトオーナー・スクラムマスターはスクラム側の用語。文書を一切書かない手法という理解も誤りで、削るのは価値を生まない中間成果物であって記録そのものではない。
関連用語
出た過去問
出典:平成30年度 春期 情報処理安全確保支援士試験 午前Ⅱ 問23(IPA)
エクストリームプログラミング(XP: eXtreme Programming)における“テスト駆動開発”の特徴はどれか。
正解:プログラムを書く前にテストケースを作成する。
要点:テスト駆動開発は実装前にテストを書いて設計を導く
テスト駆動開発は、実装したい振る舞いを先にテストコードとして書き、失敗することを確かめてから、それを通す最小限の実装を書き、最後にリファクタリングするという短い周期を繰り返す手法である。テストが仕様の記述と設計の指針を兼ねる点が特徴で、バグの網羅的な摘出やカバレージの最大化そのものを目的とはしない。
出典:令和3年度 春期 情報処理安全確保支援士試験 午前Ⅱ 問23(IPA)
エクストリームプログラミング(XP: eXtreme Programming)における"テスト駆動開発"の特徴はどれか。
正解:プログラムを書く前にテストコードを記述する。
要点:テスト駆動開発は実装より先にテストを書く
テスト駆動開発は、実装に先立って期待する振る舞いをテストコードとして書き、それを通すように最小限の実装を進める手法である。テストが仕様の役割を果たすため、設計が明確になり、変更時の退行も検出しやすくなる。
出典:令和6年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問23(IPA)
エクストリームプログラミング(XP:Extreme Programming)における“テスト駆動開発”の特徴はどれか。
正解:プログラムコードを書く前にテストコードを書く。
要点:テスト駆動開発は実装より先にテストを書く
テスト駆動開発は、実装コードより先にテストコードを書き、失敗するテストを通すために最小限の実装を行い、その後にリファクタリングする、という短い周期を繰り返す手法である。テストを先に書くことで、外部から見た仕様が先に確定し、実装が仕様から離れにくくなる点に狙いがある。
出典・参考
公式シラバスの4 開発技術 > 1. 開発プロセス・手法 > (1) ソフトウェア開発手法に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。