ワークフロー
かぬさんのブログからプログラマの思索-Tracのワークフローを読みました。
誰かプラグイン作らないかな♪と思ったので、メモ的にまとめてみました。
Tracのワークフローには、以下の機能が足りない。RedMineでは、1~3が可能(ロール別・チケットの種類別にワークフローを設定可能とすることでまとめて実現している)。
- チケットの種類毎に、異なるワークフローを使えるようにする機能
- RedMineのようなデシジョンマトリックスを用いたGUIでのワークフロー設定画面
- ステータス変更種別毎(または変更先のステータス毎)の変更権限設定
- ステータス変更時にownerを自動的に切り替える機能
なお、Tracでは、Trac.iniを使ってカスタマイズするのはBasicなやり方であり、Advancedな方法としてプラグインを作ってワークフロー遷移時の処理をカスタマイズするという方法と、自分でワークフローを実現するプラグインを作成して、それに入れ替えるという方法が可能です。Basicなやり方で満足できない人はチャレンジしてみるとイイかも。
上記の点で言えば、1については制御がややこしそう(Tracのチケットは後から種別を変更できちゃうので)ですが、2~4については、実現は難しくない気がします。とはいっても、完全に固定のワークフローならまだしも、ある程度カスタマイズできるような柔軟性をもったプラグインを作るのはそれなりに大変だと思いますが。
ちなみに、TracのAdvancedTicketWorkflowPluginを使うと4が可能になる(1~3は可能にはならない)他、外部のスクリプトが実行可能になるなどの機能があるようです。試してません。
ここまで書いておいてなんですが、私的にはステータスはnewとcloseだけにして、後はカスタムフィールドに「××した日」という項目を追加する+運用ルールでがんばる、無限権限方式がExcel的でいいんじゃね?とか思ったりしました。ごめんなさい。
それにしてもトラックバック機能が欲しいな、このblogプラグイン。
Comments
No comments.