Redmine Graph Activitiesプラグイン

最近Redmineがすごく注目されていて、チケット駆動開発という言葉も有名になってきましたね。
僕も1年くらいRedmineを使っているのですが、以前から何かプラグイン作れないかと考えていました。

試行錯誤の末、一つ形になりましたので公開します。

概要

Redmineプラグインで「活動」の情報をもとに、どの時間帯に何回チケットが更新されたか、コミットされたかをグラフで表示します。

ダウンロード・インストール

GitHubにて公開しています。
インストール方法はREADMEを参照してください。
DBは使っていませんので配置するだけで動きます。

使い方

このプラグインはモジュールとして動作するため、プロジェクトの設定画面から有効にしてやる必要があります。
[プロジェクト→設定→モジュール]

そうすると、[活動グラフ]がプロジェクトのメニューに追加されます。
以下にスクリーンショットをご紹介します。

ユーザごとにフィルタをかけることができます。

注記

Redmineのバージョンの動作確認については、1.2.1、1.0.5でのみ行っております。1.1.xについても多分動くと思います。
このプラグインはグラフをSVGとして出力していますので、SVGビューアが必要です。
活動はサブプロジェクトの活動を含みます。次期バージョンで、サブプロジェクトの情報を含めるかどうか設定なりフォームなり対応しようと思います。(要望があれば)
活動を取得する期間は固定で28日間にしています。期間を選択可能にするのも、次期バージョンでできたら実現したいです。(要望があれば)

なお、本プラグインは、なんらの予告なく変更、中止することがあります。me_umachaは、これらを原因として発生した損失や損害について一切責任を負いませんのでご了承ください。

雑記

このプラグインを作るにあたって、ゴンペルたんのソースを大いに参考にさせていただきました。この場をお借りしまして御礼を申し上げます。
また、プラグイン開発のチュートリアル日本語訳を公開していただいている、r-labs@haru_iida氏、Redmineの非常に有用な記事を多数公開してくださっている@daipresents氏にも御礼を申し上げたいと思います。

雑記その2

なぜプラグインを作ろうと思ったのか、というきっかけについて簡単にご説明を。
以前、@akipii氏のブログにて

Don’t Program on Fridays! How to Locate Fix-Inducing Changes

上記の論文の主張は「ApacheやEcipse(又はMozilla)プロジェクトでは、金曜にバグを発生させるコミットが多く、金曜はバグ修正のリスクが高い。金曜はプログラムを書くな!」というもの。

という記事を見つけました。

僕の職場でも夕方から夜にかけて、そして金曜日に駆け込みでチケットが更新されることが多いと感じていて、果たして本当にそうなのか?じゃあグラフにしてみよう!と思いついたのがきっかけです。


このプラグインを使えば、夕方から夜にかけて活動する「夜型人間」や、休日出勤して活動する「休出人間」を見つけ出すことができると思っています。僕のいる職場では、思ってたより夜型ではなかったようなので、それもまた一つの発見でした。

Redmine Graph Activitiesが何かにお役に立てれば幸いです。