« Redmine Lychee Enterpriseシリーズの解剖part2~RedmineでEVMを実現 Lychee EVM | トップページ | チケット駆動開発のナビゲーションマップ #Redmine »

2014/05/22

Redmine Lychee Enterpriseシリーズの解剖part3~Redmineのチケット関連図 Lychee Association ChartとRedmineの予実管理をサポートする Lychee Actual Date

Redmineのアドオン製品 Lychee Association ChartとLychee Actual Dateのデモ画面を触ってみた。
感想をラフなメモ書き。

【参考】
Lychee Enterprise

【公開】第6回品川Redmine勉強会発表資料「開発基盤としてのRedmine~Redmineをカスタマイズするポイント」 #47redmine: プログラマの思索

【1】Association Chart | Lychee Enterprise

【1-1】チケット関連図を提供する製品。
チケットを画面の右横欄にある「チケット関連図」のリンクを押すと遷移する。

デモ画面を見ると、チケットの配下にある子チケット・関連チケットを画面上に全て表示される。
使い道としては、親子チケットでWBSを実現している場合、親チケットを要件やストーリー、子チケットをタスクに分割しているから、作業漏れや仕様漏れのチェックに使える。

例えば、機能Aの親チケットに対し、開発やテストの作業以外にも、別ライブラリを用意するタスクが必要というレビューがやりやすくなるだろう。

また、チケットに関連付けられたリビジョンも表示するので、成果物の網羅性を点検するのにも使えるだろう。
タスクのチケットに紐づけられたリビジョンがなければ、成果物が漏れている可能性があるわけだ。

【公開】第6回品川Redmine勉強会発表資料「開発基盤としてのRedmine~Redmineをカスタマイズするポイント」 #47redmine: プログラマの思索で聞いた話だが、品質管理部の方が、リリース前の出荷時に、LycheeAssociationChartを使って、チケットと成果物のチェックに使われているらしい。

利用場面としては、例えば、プロジェクト計画時に、プロジェクトリーダーがWBSをチケットで全て書いた時に、作業漏れや要件漏れがないかを品質管理部がレビューする時に使える。
あるいは、本番リリース前、次のテスト工程前に、必要な成果物が作られているか、全て網羅されているか、を品質管理部がレビューする時に使えるだろう。

【1-2】Lychee Association Chartの関連線を見ると、先行・後続・ブロック・重複などの関連チケットを表示制御できる。
フィルタで「親子チケット」「関連するチケット」「関係しているリビジョン」のチェックをON/OFFすればいい。

例えば、MSProjectのガントチャートのような感覚でスケジュールの先行・後続・ブロックの関係を見たい時は、「関連するチケット」をチェックする。
すると、先行・後続・ブロック元・ブロック先の関連線が矢印の向きで表示してくれるので、分かりやすい。

あるいは、WBSのような階層構造で見たい時は、「親子チケット」をチェックする。
すると、要件→仕様→タスク→子タスクのような階層構造で表示されるので、要件漏れ、仕様漏れ、タスク漏れのチェックに使える。
「関連するチケット」をOFFにすれば、不要な先行・後続・ブロックの関連線を表示しないので、見やすくなる。

成果物がきちんと作られているかをチェックするなら、「関係しているリビジョン」をチェックすればいい。

【1-3】ダウンロードボタンを押すと、A4だけでなく、A0・A1・A2・A3サイズでもPDF出力できるようだ。

品質管理部がレビューする場合、プロジェクタで見るよりも、紙に印刷して鉛筆をナメナメしながらチェックする方が作業しやすい。
また、1プロジェクトのチケットは数百枚、数千枚にのぼるだろうから、できるだけ大きな紙に印刷できる方が作業しやすいだろう。

A0~A2で印刷するプリンタを持っているSIはあるのか、興味もある笑。

【1-4】Lychee Association Chartを効果的に使う注意点としては、チケットの精度を高めておく必要があるだろう。

プロジェクト計画時に、チケットにWBSを全て登録しておけば、Lychee Association Chartで点検する意味も出てくる。

日々のタスクの変更をチケットに反映するような運用が徹底できれば、Lychee Association Chart上で、要件から派生されたタスク漏れ、成果物の作成漏れをチェックできる。

逆に、日々のチケット管理が運用できていなければ、最新の作業状況や成果物がチケットに反映されていないので、Lychee Association Chartによるレビューが有効に効かない。

チケット駆動開発が馴染んでいるチームならば、有効に使えるだろう。

【2】Actual Date | Lychee Enterprise

【2-1】Redmineのチケット管理の運用で、マネージャからよく聞かれる質問の一つは、チケットで予実管理はできるのか、という問題がある。

マネージャは、計画時に作業予定日と予定工数を作り、担当者の作業実績日と実績工数と進捗率をマスタスケジュールに反映して、計画と実績の差分を分析する。
WF型開発では、計画と実績の差異ができるだけ発生しないようにコントロールするのが基本だからだ。

しかし、Redmineのチケットでは、開始日・終了日は、作業予定日に相当する。
実績としての作業開始日・作業終了日を保持する標準機能はない。
したがって、カスタムフィールドを使って、作業開始日・作業終了日を作成して運用する方法が多い。

でも、カスタムフィールドを使った方法では、ガントチャート画面に作業実績日が表示されない。
結局、チケットを一括出力して、Excelで集計しなければ、予実管理できない。

【2-2】Lychee Actual Dateでは、実績としての実開始日・実終了日のI/Fを用意してくれる。
また、Lychee Actual Dateで提供された実開始日・実終了日は、Redmine Lychee Gantt Chartで、実績の期間を実践で表示してくれる。

すなわち、MSProjectのガントチャートと同じく、タスクの予定と実績をRedmineのガントチャート上で表示してくれる。
Redmine Lychee Gantt Chartを使っているユーザは、Lychee Actual Dateも一緒に導入した方が使い勝手が増すだろう。

また、LycheeEVMのリリースノートを見ると、Lychee Actual Dateを導入しておくと、EVの計算に作業実績日も考慮してくれるようだ。
だから、EVMをもっと厳格に運用したい場合、Lychee Actual Dateもセットで導入すると効果的だろう。

【3】Lychee製品の使い道

Lychee Enterpriseを見ると、4つの製品が提供されている。
それぞれの利用場面としては、開発者よりもマネージャがプロジェクト管理の観点でチケット管理を運用したい時に効果的だろうと思う。

【3-1】Lychee Gantt Chart
マネージャがスケジュール管理に使う。
例えば、プロジェクト計画時に、全体スケジュールを鳥瞰する時に使う。

普通は、日々のチケット管理が運用されていれば、日々の進捗管理はLychee Gantt Chart画面上の操作だけでいい。

【3-2】Lychee EVM
マネージャがコスト管理に使う。
日々の工数入力がチケット管理の運用として徹底されていれば、EVMを履歴表示・リアルタイム表示してくれるので非常に便利。

現在の開発ペースなら、予算よりもコスト超過になるかどうか、即座に判定できる。
また、ベースライン比較を使えば、リスケ・仕様変更・メンバー増員のタイミングで生産性にどれだけ変化が生じたのか、をチェックできる。

なお、Redmineの工数入力をサポートするプラグインとして、WorkTimeプラグインは必須。

Redmine pluginで工数管理:WorkTime

【3-3】Lychee Association Chart
品質管理部門が、プロジェクト計画のレビューや、工程通過の判定、リリース判定基準に使う。
要件漏れ、作業漏れ、成果物の作成漏れがないか点検に使う。

プロジェクトの全ての作業がチケット管理で運用できていれば、作業や成果物の品質確保に大きく役立つだろうと思う。

【3-4】Lychee Actual Date
マネージャが予実管理する時に必須のプラグイン。
Lychee Gantt Chartを使っているなら、併用すれば、Lychee Gantt ChartがMSProjectのガントチャート機能の代替になりうる。

【4】このように見ると、Lychee製品はRedmineで不足していた機能、使い勝手が足りない機能をうまく補完しているように思える。

元々、Redmineはプロジェクト管理ツールとしてかなり優秀だし、作業者ベースではとても使いやすい。
だからこそ、マネージャが使っても便利だよ、とアピールできれば、Redmineをもっと普及するきっかけにもなりうるだろう。

【4-1】但し、Lychee製品であえて欲しい機能があるとすれば、PERT図や要員表(リソースヒストグラム)を実現する機能だろう。

MSProjectでは、ガントチャートの情報をPERT図やリソースヒストグラム、EVMで別のビューとして表示する機能がある。

スケジュール管理に熟練してくると、PERT図でタスクの依存関係を書いて、納期を短縮するための方策を考えることがある。
タスクを入れ替えたり、タスクを並行実行したり、いろんな対策を考える時、ゴチャゴチャしたガントチャートよりも、タスクの依存関係を一目で把握できるPERT図の方が便利だ。

PERT図を実現するには、選択したチケットの後続チケットをすべて表示する機能が必要だ。
実は、Lychee Association Chartでは一つのチケットの配下にある親子チケットや関連チケット、リビジョンを表示する機能があるので、PERT図を実現する機能はほぼそろっている。
おそらく開発は容易だろうと推測する。

また、要員表はマネージャのコスト管理で重要な成果物の一つだ。
受注前に、要員表を作り、月ごとに誰がどの工程を作業するか、工数を当てはめて、見積りに使う。
つまり、見積り用の要員表は、計画時の作業になる。

そして、プロジェクト開始後、要員表へ日々の実績工数を記録して、月末に工数集計した結果が、協力会社の開発者の作業報告書になる。
つまり、SIerの下請け会社にとって、要員表から出力される作業報告書は、元請けに費用請求する重要な資料なのだ。
だから、MSProjcetのような要員表の機能がRedmineで実現できれば、MSProjectにある機能はほとんど実現されると考えている。

【4-2】このように考えてみると、MSProjectで実現されているプロジェクト管理のベストプラクティスをRedmineにも実現すれば、Redmineが本来持っているアジャイル開発の利点だけでなく、PMBOKなどで既に知られているプロジェクト管理技法も扱えるようになる。

ツールの一機能としてプロジェクト管理技法を使えるようになれば、ツールを使いこなすだけで、プロジェクトリーダーのマネジメントスキルも上がっていくのではないか、と考えている。
特に、プログラマ上がりで経験の浅いプロジェクトリーダーは、マネジメントスキルを直感や経験でカバーするのではなく、ツールのカスタマイズや運用でカバーする方が容易だろうと思う。

マネジメントスキルは、技術力でカバーしていくのだ。
それが、ITによる技術革新の恩恵だろうと思う。

|

« Redmine Lychee Enterpriseシリーズの解剖part2~RedmineでEVMを実現 Lychee EVM | トップページ | チケット駆動開発のナビゲーションマップ #Redmine »

Redmine」カテゴリの記事

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

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

コメント

コメントを書く



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


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



« Redmine Lychee Enterpriseシリーズの解剖part2~RedmineでEVMを実現 Lychee EVM | トップページ | チケット駆動開発のナビゲーションマップ #Redmine »