プロセスフロー図をRedmineチケットで表現するアイデア~Lychee Association Chartで実現できるか
@u6k_yu1さんのつぶやきから、プロセスフロー図をRedmineチケットで表現するアイデアを得たのでメモ。
以下は、まとまりのないメモ書き。
【参考1】
PFD(プロセスフローダイアグラム)で開発プロセスを設計する: プログラマの思索
Association Chart | Lychee Redmine
u6k_yu1さんのツイート: "@u6k_yu1 うーん、やはりプロセスフロー図の作業、成果物とRedmineチケットを直接関連付けたいなぁ。"
akipiiさんのツイート: "@u6k_yu1 Lychee Association Chartが近いかな。プロセスフロー図は書けないけど。Graphvizを使ってスクリプトにするか。"
【1】PFD(プロセスフローダイヤグラム)はXDDP提唱者の清水吉男さんが編み出したもので、開発プロセスを一瞥するのにすごく良い。
プロセスと成果物を紐付けて、プロジェクトの開始から終了まで、一連の作業を図示できる。
たとえば、複数の成果物(例:テーブル設計書、画面設計書)がなければ、プログラミングできない、とか、一連の作業のボトルネックを把握するのに役立つ。
あるいは、結合テスト前までに、検証用環境を構築しておく必要があるとか、検証用環境を構築するために事前にパッケージ製品を購入して事前に検証しておく作業が必要とか、色んな作業をあぶり出すのに使う。
しかし、普通の案件では、WBSを作成して、それで終わりという所が多い。
スケジュール管理はWBSを洗い出したら終わりという気はしない。
むしろ、プロセスと成果物の一連のイメージがWBSでは湧きづらい。
だから、WBSだけ見ても、何が遅れて問題になっているのか分かりにくい。
WBSという無味乾燥なExcelの表形式の内容を、もっとビジュアルに表現して、何がボトルネックになりやすいか、をイメージしたいのだ。
【2】Redmineでは、WBSをチケットに置き換えることで、階層化されたガントチャートを自動表示できる。
つまり、WBSをチケットで一度表現してしまえば、ガントチャートだけでなく、色んなビューで表現できる可能性がRedmineにはある。
実際、WBSがチケットで一度登録できれば、EVMやリソースヒストグラム、PERT図でも表現することは理論上可能だ。
その発想をPFDにも適用して、Redmine上でPFDを表現できないか?
【3】たぶん、PFDのイメージに近いプラグインは有償ではあるが、Lychee Association Chartが近いだろうと思う。
Lychee Association Chartでは、チケットの親子関係や先行・後続の関連チケットを1枚の図に表してくれる。
つまり、PFDにおけるプロセスの先行・後続関係は、Redmineチケットの先行・後続関係に対応付けできる。
また、Lychee Association Chartでは、チケットとリビジョンを紐付けた関係も図示してくれる。
つまり、チケットにコミットされたソースやドキュメントが自動で紐づくので、チケットを成果物に対応付ければ良い。
すなわち、PFDにおけるプロセスの流れは、Redmine上で、チケットの先行後続関係、プロセスと成果物の関係は親子チケットと構成管理ツール連携で実現できるはずだ。
【3-1】Lychee Association Chartを使っている事例を読むと、作業と成果物の漏れがないか、点検するのに使っているようだ。
住友電装株式会社様における業務プロセスの見える化 | Lychee Redmine
もし、PFDがRedmineチケットで実現できるならば、計画したプロセス(=チケット)に対して、実績としての成果物(=SCMリビジョン)が紐付いていなければ、成果物が作られていないか、成果物の完了報告が漏れていることが考えられる。
そうであれば、品質保証部のチェックが入るまでに、Lychee Association Chartで出力した図を元に開発チーム自身でチェックできるし、そうすることで成果物の漏れを無くしたり、品質向上に役立つ可能性がある。
つまり、PFDのメリットである「開発プロセスを設計する」「設計された開発プロセスを検証する」という発想をRedmine上で実現しているわけだ。
【4】しかし、PFDをRedmineチケットで実現する場合、生のRedmineの機能では操作しづらいだろう。
チケットの先行後続関係、チケットの親子関係が複数レイヤになった場合、チケット一覧画面で、親チケットの番号を入力するとか、先行するチケットの番号を入力するなどの操作は非常に面倒だろう。
できれば、ガントチャート画面上でチケットの先行後続関係を簡単に操作したい。
Lychee Association Chartならば、操作方法についてはいくらか解決できるだろう。
【4-1】しかし、さらに、PFDを階層化したい場合、Redmine上で上記のやり方を一貫して行えるか?
たとえば、大規模受託開発案件の場合、複数のサブシステム単位に設計書が必要だし、他のサブシステムの設計書ができてから自分たちのサブシステムの設計書が作れる、というような依存関係もあるだろう。
あるいは、1個の画面を作るために、複数の成果物が必要だったり、その成果物を階層化したい時もあるかもしれない。
すると、PFDで表すプロセスフローは非常に複雑になるだろう。
チケットの枚数もかなり多くなるし、それらチケットを手作業で関連付ける事自体がかなりの手間だ。
また、先行後続で関連付けられたチケットを階層化する場合の運用ルールや考え方も事前に決めておく必要があるだろう。
たとえば、先行後続関係は親チケット同士に限る、とか、成果物チケットは必ず最下層の子チケットに配置する、などの運用ルールが必要になるだろう。
たぶん、チケットの枚数は数百~数千枚程度まで膨れ上がるかもしれない。
その場合に、PFDで表した数百枚、数千枚のチケットをRedmine上でそもそも保守できるのか、という疑問もある。
Lychee Association Chartを使ったとしても、PFDを実際に使ったノウハウがなければ、きれいに運用するのは難しいのかもしれない。
【4-2】とは言え、PFDをRedmineチケットで表現するアイデアは、色んな可能性を秘めていると思う。
プロセスと成果物の一連の関係をチケットで表現してしまえば、ガントチャートで進捗管理できるし、リソースヒストグラムでメンバーの作業負荷をチェックできるし、EVMでプロジェクトの採算や完了時点の最終コストを予測することもできる。
また、プロセスと成果物の関係は本来、PERT図で表現できるものだから、XDDPのプロセスフローダイアグラム(PFD)に置き換えることは理論上簡単なはずだ。
つまり、チケット集計による様々なビューを実現することによって、プロジェクトリーダーは、案件の状況を色んな角度から分析できるはず。
特に、日本ではXDDPの手法は一部でよく知られており、組込みソフトウェア開発における派生開発で既に実績もかなりある。
また、Redmineは元来、複数プロジェクト機能のおかげで派生開発の進捗管理もしやすい。
つまり、複数の製品開発(ソフトウェアプロダクトライン)や製品の派生開発のプロジェクト管理は、元々、Redmineに向いている部分がある。
したがって、そのXDDPの手法の一つであるPFDをRedmine上で実現できれば、成果物の漏れを無くすように開発プロセスの品質を強化できるし、派生開発のプロジェクト管理をより楽にできるように運用できる可能性があるはず。
色々考えてみる。
| 固定リンク
« RedmineのGitリポジトリはmirrorオプションで同期するメモ | トップページ | Redmineを会議室予約システムにしてしまうredmine_meeting_room_calendarプラグイン »
「プロジェクトマネジメント」カテゴリの記事
- 「スクラムの拡張による組織づくり」のScrum@Scaleの感想(2024.03.31)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart2~プロセスのレイヤと達成目標のレイヤが異なる(2023.02.18)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart1~CSFはWBSみたいなものと捉える(2023.02.14)
- PM理論では課業志向の方が関係志向よりも生産性が高いことを主張しているのではないか(2023.01.22)
- 現代日本人の弱点はリーダーシップ不足と生産性が著しく低いこと、そしてリスク許容度が著しく低いことだ(2022.12.23)
「Redmine」カテゴリの記事
- Redmineのバージョン設定でプロジェクトの設定方法が違う(2024.06.23)
- ウクライナのRedmine開発者が作ったRedmineテーマやプラグイン(2024.06.18)
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- Redmineで持ち株管理する事例(2024.04.21)
- チケットはデータでとプロセスの二面性を持つ #redmine(2023.12.24)
「ソフトウェア工学」カテゴリの記事
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- マイクロサービス設計は従来のアーキテクチャ設計と何が違うのか(2024.01.02)
- 「ソフトウェアアーキテクチャ・ハードパーツ」の情報リンク~マイクロサービスの設計技法の課題は何なのか(2023.11.12)
コメント