無料ブログはココログ

« [#Agile] アジャイル開発はコミュニケーションで価値を実現するオブジェクト指向システム | トップページ | [#iPhone] ホームボタンがおかしくなった時に検討すべき事 »

[#TiDD] チケット駆動開発はアジャイルの仕組みを支援・強化する

ここまで、フロントローディング混乱の回避コミュニケーションといったアジャイルの仕組みを説明しました。チケット駆動開発はRedmineなどのチケットシステムのチケットをタスクカードとして用いる事で、これらの仕組みを支援し、強化します。では、具体的に見ていきましょう。

フロントローディング

チケットシステムは様々な可視化によってフロントローディングを支援します。タスクを記述したチケットにマイルストーン、あるいは、バージョンを設定する事で、必要なイテレーションの一覧をレポート(クエリ)として見る事ができます。また、複数イテレーションのロードマップを示して状況を確認する事ができます。

バージョンを用いる場合は、その使い方に気をつけてください。障害管理の場合は、不具合の原因となったテスト対象のバージョンを示す事が多いでしょう。しかし、タスクの場合は実装した成果物がリリースされるバージョンを示す事が多いので一覧を見る際には気をつけてください。

混乱を避ける

イテレーションの切れ目を変化の受け入れのタイミングとできるほか、カンバンとして運用すれば1日の始めや終わりに変化を受け入れる事ができます。チケットの更新は開発者の都合の良いタイミングで確認してチケットを受け入れれば良いので、日々のリズムが崩れない様にできます。

また、チケットの履歴によって過去の詳細情報を確認できます。自動テストの結果、バグの内容の確認、仕様の詳細が明確でない場合の議論、など多くの情報をチケットの履歴から知る事ができます。

さらに、ワークフローの機能を用いる事で、もれなく確認などの作業を追加する事ができます。繰り返しリリースをしていると、リリース済みのソースと開発中のソースの両方に修正が必要になる場合があります。このような場合も、ワークフローで確認作業用のステータスを定義する事で漏れなく実施できます。また、客先の要望をそのまま受けるのではなく窓口担当者を決めたい場合も、チケットの起票できる担当者のロールを限定すればうまくいくでしょう。

コミュニケーション

チケット駆動開発はコミュニケーションの向上のためにあるといっても過言ではありません。アジャイル開発のタスクボードはチケットの一覧であるレポート(クエリ)です。プロジェクト全体の状況だけでなく、個々の開発者の状況など特定条件の情報を簡単に知る事ができます。

チケットシステムは物理的にタスクボードが置けない場合や分散開発の場合に役立つでしょう。また、チケットの更新情報はメール、RSS、Eclipseプラグインで取得できますので、プロジェクトが佳境に入った際に役立つでしょう。

タスクボードの場合は、チケットは一定の粒度でそろえておいて、チームで共有する事が基本です。チケットシステムなら登録できるチケットに上限がありませんので、工数は少ない物の重要な作業をチケットとして残しておく事ができます。

しかし、あまりにもチケットが増えすぎると、状況を確認するだけでも大変です。共通の手順にできるような情報はWikiに書く、個人の備忘録などはプライベートチケットにするといった工夫も必要でしょう。

まとめ

チケット駆動開発はこのようにアジャイル開発の支援や強化をします。強化されたプロセス全体をチケット駆動開発とすれば、完全型のチケット駆動開発になります。また、既存のプロセスをベースにこれらの仕組みを一部だけ導入すれば、補完型のチケット駆動開発になります。補完型のうち、従来法の開発をベースにアジャイル要素を追加する場合は特に「アダプタブル・ウォーターフォール」と呼んでいます。

チケット駆動開発は細かな作業による混乱を防具と共にコミュニケーションを向上させる仕組みとして生まれ、アジャイル開発を支援する仕組みとして発展しました。その実践方法は多彩です。プロジェクトの状況に合わせて、ふさわしいチケット駆動開発を実践できるように工夫してください。

« [#Agile] アジャイル開発はコミュニケーションで価値を実現するオブジェクト指向システム | トップページ | [#iPhone] ホームボタンがおかしくなった時に検討すべき事 »

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

コメント

コメントを書く

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

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

« [#Agile] アジャイル開発はコミュニケーションで価値を実現するオブジェクト指向システム | トップページ | [#iPhone] ホームボタンがおかしくなった時に検討すべき事 »