正式名称:eXtreme Programming
読み:エクストリーム プログラミング
Kent Beck氏らが考案し、提唱しているソフトウェア開発手法。
アジャイルソフトウェア開発手法と総称される一連の手法の先駆けとなったもので、1999年に同氏が著した「Extreme Programming Explained - Embrace Change」という書籍で世間の注目を集めた。
従来の「重厚な」開発方法論と比較して、思想面も実践方法も開発現場の問題意識に根ざしたものになっており、プログラマの広い支持を受けている。
開発の初期段階の設計よりもコーディングとテストを重視しており、また、各工程を順序立てて順番に積み上げていくことよりも、常にフィードバックを行なって修正・再設計していくことを重視している。
XPでは、開発チームが共有すべき4つの価値が示されている。
すなわち、顧客と開発者の、もしくは開発者間の円滑な「コミュニケーション」(communication)、必要最小限の設計しか行なわない「シンプルさ」(simplicity)、頻繁なテストによる「フィードバック」(feedback)、大胆な設計変更に立ち向かう「勇気」(courage)の4つである。
その上で、経験に基づいた具体的な実践項目(「プラクティス」と呼ばれる)が12個挙げられている。
余計な複雑さを排除する「シンプルデザイン」(simple design)、動作を変えることなくプログラムを書き直す「リファクタリング」(refactoring)、1台の開発マシンを2人で共有して常に共同でコードを書く「ペアプログラミング」、小規模な改良を頻繁に行なう「スモールリリース」(small releases)、週40時間以上働かない「40時間労働」(40-hour work)、顧客を常に開発チームに参加させる「オンサイト顧客」などである。
XPは10人程度くらいまでの小チームに適用するのがもっとも適していると言われ、小〜中規模のソフトウェアの開発に向いた手法とされている。 |
|