×
開発技術と開発管理

XP(エクストリームプログラミング)は、1990年代後半にケント・ベック氏らによって提唱されたアジャイル手法の一つです。XPは、開発現場における技術的プラクティスを「極限(Extreme)」まで高めて実践することを推奨しています。XPの根底には「コミュニケーション」「シンプル」「フィードバック」「勇気」「リスペクト」という5つの価値観があります。これらを実践するための具体的な仕組みとして、19個のプラクティスが定義されています。代表的なものには、2人で1つのPCを共有して品質の高いコードを書く「ペアプログラミング」、プログラムを書く前に自動テストを作成する「テスト駆動開発」、常にコードを綺麗に保つ「リファクタリング」、ソースコードの所有権を全員が持ち誰でも修正可能とする「共同コード所有」、過度な残業を避けて健康的に持続可能なペースで働く「週40時間労働」などがあります。これらを組み合わせることで、高品質なコードを維持しつつ、急激な仕様変更にも即座に対応できるチームを作り上げます。

試験でのポイント

試験においては、XPの具体的なプラクティスの名前とその意味が正しく結びついているかが頻繁に問われます。例えば、2名の役割である「ドライバー(実際にコードを書く人)」と「ナビゲーター(俯瞰してチェックする人)」が協力する「ペアプログラミング」の特徴やメリット、またプログラムの動作(外部から見た仕様)を変えずにソースコードの内部構造を整理する「リファクタリング」の定義が問われます。さらに、システムの動作保証のためにテストを先に書く「テスト駆動開発(TDD)」や、コードが変更されるたびに自動ビルドと自動テストを繰り返す「継続的インテグレーション」といった技術的プラクティスをXPが重視している点がポイントとなります。

関連する用語

XPはアジャイル開発の手法の一つであり、チームの管理フレームワークであるスクラムと相補的に使われます。また、XPで実践される技術はテスト駆動開発やCI/CD、バージョン管理の基盤と深く結びついています。