チケット管理システムでは、従来のBTS(Bug Tracking System:バグ管理システム)のように解決すべきバグや問題(Issue:イシュー)だけでなく、達成すべきタスクをもチケットとして登録・管理でき、チケット駆動と呼ばれる開発手法(Ticket Driven Development:TiDD)も広まりをみせている。本セッションは、日本で人気のある3製品によるパネルディスカッションで、チケット管理の導入を検討している開発者にとってはまたとない機会となった。
主要チケット管理システムの特徴
パネラーとして迎えられたのは、JIRAユーザーを代表してITアーキテクトの鈴木雄介氏、XPJUG関西から『Redmineによるタスクマネジメント実践技法』の著書もある小川明彦氏、Shibuya.tracからアジャイルコーチの吉羽龍太郎氏。モデレーターは、JIRAの開発元アトラシアンの大澤俊介氏である。
最初のテーマは、なぜチケット管理が必要なのか、そしてそれぞれのソフトウェアを選んだ理由について。
吉羽氏は、同時進行する複数プロジェクトの全体状況を把握するために必要になったという。スプレッドシートとメールではとても管理し切れず、プライオリティ付けもできない。また、障害対応などナレッジの蓄積・活用も要因にあるという。Tracは、当時ほかに選択肢がなかったこともあるが、インストールの簡単さやプラグインの多彩さなどをメリットとして挙げた。
小川氏は、頻繁な変更への対応を挙げた。開発状況の管理・把握にガントチャートが利用されるが、変更が多くなると齟齬が起きやすいと感じていた。プロジェクト管理ツールの選択では、ツールをいくつかトライし、Redmineでアジャイル開発のイテレーションの考え方や、構成管理パターンが理解でき、上手くハマったという。そのほか利点としてチケット集計表示による進捗管理機能が優れていることを挙げた。
鈴木氏は、コミュニケーションコストの削減を挙げた。開発者全員の真ん中にチケットを入れる箱ができるので、そこを見ていれば大丈夫。見えないコスト、無駄なコストが減り、とくに大きなプロジェクトになるほど実感できるという。JIRAは、Redmineなどと比べると機能がシンプルで、見た感じのままシンプルに使い始められる。その代わり周辺のコミュニケーションツールが充実している。
導入するだけでなく効果が上がるような運用を
開発時のコミュニケーションについては、一過性のやりとりまでチケットを切ることの弊害が吉羽氏から指摘された。鈴木氏もこれに同意し、「楽しくなってやたらチケットを切る人がいる(会場笑い)。チーム内で調整し、どの粒度だったらチケットを切るか共有できると、いい感じで回ります」とコメントした。
最後に、チケット管理を導入した効果などをテーマに、トークが進められた。鈴木氏は、コミュニケーション精度が向上したことを挙げる。起票からデプロイまでの流れが明確になるので、チーム間の齟齬がなくなる。また負荷分散にも役立つ。エンドユーザーや情報システム部も同じJIRAを利用することも効率化につながっている。
小川氏は、Redmineを導入したことについて開発者の評判は上々という。リーダーと開発者が見ている状態が同じであること、またイテレーションが自然に定着し、チームに合ったリリース・サイクルが生まれたという。仕様書とWikiの使い分けが分からないという意見が出たが、仕様書はSubversionに入れ、構成管理しない共有情報はWikiで使い分ける運用を行っている。
吉羽氏も、顧客まで公開するほうが圧倒的に良いという。効果を出すならプロジェクトのはじめから使い、全部の機能を使う必要はないが、使い方をチームで決め、最初は教育も必要だという。また、使い方を継続的に改善することも重要で、チケットが放置されてチケット管理システムがただのゴミ箱にならないよう、定期的な棚卸しも必要だとした。
まとめとして、開発のボトルネックになるスプレッドシートより、チケット管理システムは効果が高い。ただし、複数のツールについて理解しているひとは少ないので、今回のパネルをきっかけに情報の共有が進むことが期待される。