無料ブログはココログ

« ひかりTV: PC-STB4の熱暴走=>PM700に交換 | トップページ | [TiDD]チケット駆動開発と見える化 »

[TiDD] チケット駆動開発とXPの共通点

あきぴーさんがチケット駆動開発(TiDD)をXP(eXtreme Programming)に適用された結果を元に、共著で論文を書いて外部発表をしています(SPESSQiP)。これらは、アジャイル開発を改善するためにTiDDを適用した論文ですが、なぜそのようなことが可能なのかを考えてみました。

実はチケット駆動開発とXPには共通点があります。それはXPの4つの価値です。それは、

- コミュニケーション
- シンプルさ
- フィードバック
- 勇気

です。この4つの価値がXPのプラクティスに影響を与えています。

TiDDの効果を考えると、このうち2つの価値を支援することがわかります。そもそもの提案者である、まちゅさんによるとTiDDの効果の一つは「開発メンバの仕事が把握しやすくなる」というものです。

全てのソース更新作業がチケットと関連付けられることで、どのような作業が残っているか、プロジェクト内で明確になります。これは、TiDDがプロジェクト内のコミュニケーションを改善するということです。

さらに、まちゅさんはもう一つの効果として「ソースコードのコミット単位が明確になる」とされています。これは、チケットなしのコミットを許さないことから来るもので、開発作業をシンプルにしたことによる効果です。

この二つの価値に対してXPでは、作業をタスクカードに割り当てるというシンプルなルールをつくり、そのタスクカードをタスクボードという掲示板に貼ることでプロジェクト内で情報を共有してコミュニケーションの向上を図っています(もちろん共同のプラクティスもコミュニケーションに重要です)。

ちなみに、フィードバックというのは、繰り返し(イテレーティブ)開発などによって、補正(フィードバック)をしつつ開発することができます。また、勇気というのは積極的な開発プラクティスの実施や担当作業のコミットメントなどによって実現されます。

このように考えるとTiDDはXPと矛盾しないだけでなく方向性が共通しています。繰り返し開発や開発プラクティスを導入すれば立派なアジャイル開発になりそうです。実際にXPJUG関西のTiDDの議論の中では「TiDDによってリズム感が生まれてアジャイルがわかった」という感想さえ出ていました。現実の現場では実現しにくかったXPが、より効果的に実現できるようになる、そんなパワーがTiDDにはあるようです。

« ひかりTV: PC-STB4の熱暴走=>PM700に交換 | トップページ | [TiDD]チケット駆動開発と見える化 »

ソフトウェア」カテゴリの記事

チケット駆動開発」カテゴリの記事

プログラミング」カテゴリの記事

私のアジャイル」カテゴリの記事

コメント

オープンソースソフトウェアの開発では、TiDDみたいなことはずいぶん昔から普通に行われてましたけどね。僕のプロジェクトでも2003年に立ち上げたときから、BTSにエントリのないコミットはしない原則を掲げてましたし。

コメントありがとうございます。
 オープンソースでなくとも、保守工程ではひとまず登録するという形では似たようなことは古くから行われていたと思います。でも、それを一つの方法論として提唱すると新しい議論を始められると思います。また、アジャイルと関連付けると、さらに議論ができるのではと考えています。
 似たようなお話で、コードリーディングという言葉が出てきたときに、UNIXでは普通だと思っていましたが、それから研究が進んだりしましたので、既にあるようなことでも新しい概念として議論することは大切だと思います。

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/138594/45745384

この記事へのトラックバック一覧です: [TiDD] チケット駆動開発とXPの共通点:

« ひかりTV: PC-STB4の熱暴走=>PM700に交換 | トップページ | [TiDD]チケット駆動開発と見える化 »