藤本聖,平鍋健児
XPは私たちに何をもたらすのか
ガイド
書誌
author | 藤本聖,平鍋健児 |
publisher | ソフトバンク |
year | 『C MAGAZINE 2002.2』p.51-67 |
履歴
editor | 唯野 |
2002.1.18 | 読了 |
2002.1.21 | 公開 |
2002.2.14 | 修正 |
2014.1.27 | 修正 |
2020.2.25 | 文字化け修正 |
このところ知名度も上がってきた XP (エクストリーム・プログラミング : eXtreme Programming)についての特集記事。関連書籍もちらほらと出てきているが、(多くの人がそうなのかもしれないけれども)私もまだ様子見という感じの手法である。そのため時期的にもちょうどよく、この入門記事はありがたかった。
感想としては以前から抱いていたのと同じで「要は新規の手法とかいうものではなく、既存のリファクタリングであるとかオブジェクト指向といった諸々の技術の集積」という印象が強い。つまり、それらを系統立てて実際の手法レベルとしてまとめたもの――ということである。
ただ、個人的にいって試験の自動化には強い関心がある。よくいわれるようにソフトウェア開発のコストのうち、その大部分はメンテナンスが占めるわけであるから、そこで更に大きな意味を持つテストの自動化は効果も大きいと思うからだ。また、それを足ががりにすることで、開発サイクルや既存の手法を見直すこと、つまり間接的な XP への接近ができればおもしろいと思う。そんなわけで私の場合は CppUnit の使い方というような辺りから接することができれば...という感じでいる。
なお、この記事では単なる手法の紹介というだけではなく、導入に対する位置付けとして「プログラマが XP で幸せになれるかどうか/プログラマに苦痛ではなく達成感を与えるための」という視点で解説がされている。この手の手法では割とこのような紹介のされ方が多いように思うが、「デスマーチプロジェクトの克服」を推し進めればこれも納得のいくアプローチだと思う。
しかし、後から気付いたことではあるのだが、個人的には実際の記事やこの要約より、文中でも紹介されている eXtreme Programmin FAQ という Web ページががよくまとまっておりおすすめである。(この記事の著者たちによるより詳しい説明がある。)
# 『リファクタリング』 と 『デスマーチ』 に関してはそれぞれの読書ノートをどうぞ。
# もちろんここでいう XP は Windows XP (eXperience) とは関係ありません :-)
抄録
XP の特徴
- 開発に対する変化を自然なものとして受け入れる
- テストを重視する。これは自動化されコーディングに先立って記述する
- 初期設計よりもリファクタリングによる再設計の重視
- 従うべき実践項目(プラクティス)の明確な提示
XP の生い立ち
XP は Smalltalk のコミュニティから Kent Beck と Ward Cunningham によって生まれた。彼らは 1996 に C3 (Chrysler Comprehensive Compensation) というプロジェクトで Martin Fowler らと共に XP を実践し 1999 年に最初の本が出版された。
XP での価値基準
- コミュニケーション 顧客を交えた積極的な推進
- シンプル 今現在に求められるものだけを実装
- フィードバック テストからコードへの、頻繁なリリースから顧客より
- 勇気 上記から得られる変更や取捨選択に対する勇気