チケット駆動開発がWF型開発と相性が悪い理由
「SIの現場で使えるチケット駆動開発|セミナー|Growth xPartners Corporate Site」セミナーをUStreamで聞いて、思ったことをメモ書き。
【元ネタ】
2013/08/24(土)「SIの現場で使えるチケット駆動開発」セミナー #gxptech - Togetter
【1】Excelによるプロジェクト管理は、計画作成時はまだしも、その後の実績管理の運用では、利点よりもたくさんの弊害の方が出てくると思う。
しかし、最近はRedmineを導入したものの、思ったような効果が出ていない事例をよく聞く。
話を聞くと、Redmineによるチケット駆動開発をそのままWF型開発を当てはめようとして、うまくいっていないという事例が多い。
【2】Redmineのガントチャートでタスク管理しようとする場合、MSProjectと異なる点は、チケットの粒度が異なる点と予実管理ができない点があげられる。
顧客やプロマネの観点と開発者の観点でチケットの粒度が異なる理由は、以下に既に書いた。
チケット駆動開発は進捗報告作りをどのように解決しようとするか?: プログラマの思索
予実管理がRedmineではやりにくい理由は、Redmineチケットに、予定の開始・終了日と実績の開始・終了日が区別されておらず、実績管理しかできないように機能実装されているからだ。
つまり、Redmineでは、本来チケット管理で予実管理を厳密に運営することは想定されていない設計思想で作られている。
だから、WF型開発でチケット駆動開発をやろうとすると、予定に合わせるようにタスクを調整するマネジメント手法が正直使いづらい。
WF型開発は、当初の計画で決められた予定をベースラインとして、実績として発生したタスクを合わせようとして、変化を抑えこむやり方。
計画で作成された予定作業がコロコロ変わると、ベースラインとして意味がなくなってしまう。
予実管理によって、予定よりも遅れたタスクに注目して是正対策を取る。
チケット駆動開発では、ロードマップのビューを主に使って、決められた期限までにどれだけのタスクを実現するか、という観点で、スコープ管理する発想。
タイムボックスという箱に、状況に合わせてチケットを詰め込むやり方。
だから、チケットという作業スコープに着目して、チケット管理していく。
チケット駆動開発では、チケットに予定日を入れたとしても、ロードマップに当てはまるように随時調整するため、予定日は意味をなさない。
つまり、チケット駆動開発はアジャイル開発と同様に、計画と実績の偏差(ばらつき)に着目して、タイムボックスに入るようにタスクを調整する。
つまり、プロジェクト管理におけるWF型開発のやり方とチケット駆動開発のやり方は全く発想が違う。
他にもWF型開発に囚われすぎたアンチパターンについては以前まとめた。
WF型開発にとらわれすぎたTiDDのアンチパターン #tidd: プログラマの思索
【公開】RedmineのFAQとアンチパターン集 #Rxtstudy: プログラマの思索
このようなアンチパターンが発生する原因は、BTSから生まれたチケット駆動開発が当初の利用範囲から外れた箇所に適用されたためだろうと思っている。
【2】では、WF型開発にチケット駆動開発を適用するには、どんな手法が必要か?
チケットで予実管理をやりたいならば、チケットに予定・実績の開始・終了日を設けるようなカスタマイズが必要だろう。
また、進捗管理が一目でわかるような、ロードマップとは違う別のビューが必要だろう。
多分、ガントチャートをもっとカスタマイズする必要があるだろう。
あるいは、CCPMのような発想を取り入れるといいかもしれない。
つまり、計画作成時に予定されたチケットを作るが、チケットに実績情報を入力する時に、残工数がひと目で分かるようにして、プロジェクト全体の残工数で進捗管理する手法を取ること。
個人的には、純粋なWF型開発をそのままチケット駆動開発に適用した場合、カスタマイズすれば運用できるだろうが、チケット駆動開発の利点が消えてしまうため、恩恵がなくなるのではないかと思っている。
WF型開発へのチケット駆動開発の適用方法については、@sakaba37さんが「アダプタブルウォーターフォール」という概念で説明されているので、そちらを御覧ください。
【3】では、Redmineによるチケット管理は万能なのか?
@yusuke_arclamp さんや@digitalsoul0124さんも話されていたが、担当者が決まらないチケットは、チケットとして起票してもあまり意味を成さない。
例えば、WBS作成時は、詳細なタスクが分からない項目もまずは空き箱として配置できるが、チケットに起票したとしても、そのチケットからどのように作業していけばよいか分からないから、放置されやすい。
Twitter / akipii: #gxptech WBSでは曖昧な課題やタスクを空箱として配置できるが、チケットは曖昧なタスクを登録しても運用しにくい。@yusuke_arclamp さん談。
また、「チケット管理は予実管理しにくい」という特徴から、チケット管理のモデルを考えると、チケットはマスタではなくトランザクションである。
つまり、チケットは、予定というマスタ情報を蓄積するのではなく、実績としてトランザクションを日々記録していく方が向いている。
だから、チケットを元帳のように扱うことには向いていない。
むしろ、GTDのように、次々に発生するタスクをどんどん消化していくやり方の方がチケット管理に向いている。
最近、Redmineによるチケット管理をヘルプデスク管理や顧客管理、資産管理に使う発想が試されている。
日々のトランザクションを管理する点はチケット管理は最強だが、顧客マスタやPC資産マスタというマスタ情報(元帳)はチケットではなく、別のマスタを用意する方が扱いやすい。
つまり、チケット管理がうまく当てはまる業務であるか否かという判断条件は、チケット管理のモデルの特徴に大きく依存していると考えている。
この辺りは今後まとめてみたい。
【追記】
@yusuke_arclampさんや@sakaba37さんも、チケット駆動による進捗管理についてBlogを書かれている。
| 固定リンク
「モデリング」カテゴリの記事
- チームトポロジーの感想~大規模アジャイル開発でも組織構造は大きく変化する(2025.01.01)
- アーキテクチャ設計はベストプラクティスを参照するプロセスに過ぎないのか?~Software Processes are Software, Too(ソフトウェアプロセスもまたソフトウェアである)(2024.09.22)
- 「システム開発・刷新のためのデータモデル大全」を読み直した感想~親子頻出アンチパターンは初心者モデラーに多い(2024.08.31)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
「プロジェクトマネジメント」カテゴリの記事
- チームトポロジーの感想~大規模アジャイル開発でも組織構造は大きく変化する(2025.01.01)
- 「スクラムの拡張による組織づくり」のScrum@Scaleの感想(2024.03.31)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart2~プロセスのレイヤと達成目標のレイヤが異なる(2023.02.18)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart1~CSFはWBSみたいなものと捉える(2023.02.14)
- PM理論では課業志向の方が関係志向よりも生産性が高いことを主張しているのではないか(2023.01.22)
「Redmine」カテゴリの記事
- Redmineは組織のナレッジ基盤として実現可能なのか~島津製作所の事例を読み解く #redmineT(2024.12.29)
- 「RedmineのUbuntu+Docker構築への移行」の感想 #redmineT(2024.11.24)
- 第27回redmine.tokyo勉強会の感想 #redmineT(2024.11.10)
- Redmineのバージョン設定でプロジェクトの設定方法が違う(2024.06.23)
- ウクライナのRedmine開発者が作ったRedmineテーマやプラグイン(2024.06.18)
「ソフトウェア工学」カテゴリの記事
- チームトポロジーの感想~大規模アジャイル開発でも組織構造は大きく変化する(2025.01.01)
- Redmineは組織のナレッジ基盤として実現可能なのか~島津製作所の事例を読み解く #redmineT(2024.12.29)
- アーキテクチャ設計はベストプラクティスを参照するプロセスに過ぎないのか?~Software Processes are Software, Too(ソフトウェアプロセスもまたソフトウェアである)(2024.09.22)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
「チケット駆動開発」カテゴリの記事
- Redmineは組織のナレッジ基盤として実現可能なのか~島津製作所の事例を読み解く #redmineT(2024.12.29)
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- チケットはデータでとプロセスの二面性を持つ #redmine(2023.12.24)
- 小説活動にプルリクエスト駆動が必要になってきた(2022.05.08)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
「Agile」カテゴリの記事
- チームトポロジーの感想~大規模アジャイル開発でも組織構造は大きく変化する(2025.01.01)
- 「世界一流エンジニアの思考法」の感想(2024.12.08)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「スクラムの拡張による組織づくり」のScrum@Scaleの感想(2024.03.31)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
コメント