« 日本のIT業界のホラー小説「人形つかい」 | トップページ | プログラマにコミュニケーションが足りないと言われる時 »

2011/11/05

RedmineのTime Trackerプラグイン運用の注意点

RedmineのTime Trackerプラグインは、実績工数をタイムウォッチのように簡単に計測してくれるので便利。
しかし運用の注意点があるのでメモ。

【元ネタ】
RedmineのTimeTrackerプラグインが使いやすい: プログラマの思索

Twitter / @bageljp: RedmineのチケットにToodledoやHiTaskみたいなタイマー機能ないのかね。実績工数をいちいち手動入力って面倒すぎ。作業の開始と終わりにボタン押して時間計測してくれれば楽なのになー。

Twitter / @akipii: @bageljp Time Trackerプラグインが良いです。 - Plugins - Redmine redmine.org/plugins/redmin…

Twitter / @bageljp: @akipii ありがとうございます!!早速入れて使ってみましたが、まさにイメージ通りのプラグインでした。最後に記録までされるし便利ですね~^^

Twitter / @akipii: @bageljp Time TrackerプラグインはAjaxで非同期通信するためハードに使うとRedmineが重くなる症状も聞いています。(@tkusukawaさん、@akiko_pusuさん談) 詳細は聞いてみて下さい。

Twitter / @tkusukawa: @akipii @bageljp @akiko_pusu TimeTrackerは経過時間表示を更新するために定期的にサーバリクエストを行います。これが時間計測していなくても全ユーザのブラウザから行われるのでユーザが多いと大変なことになります。表示更新の頻度は設定で変えられます。

Twitter / @tkusukawa: @bageljp @akipii @akiko_pusu 一番の影響はアクセスログの増加かと。たしかデフォルト60秒なので60更新/h、例えば10人が1日8時間Redmineのどこかを2ページぐらいタブ表示しているとすると、10人×2ページ×480更新/日で9600ログ/日

Twitter / @akiko_pusu: @tkusukawa @bageljp @akipii 私の環境ではリバースプロキシしてたので、redmine本体サーバ以外に、プロキシがわのログが増えすぎて反応なくなったことがありました。新しめのバージョンは設定ファイルで間隔調整でぎすが、古いのはハードコードでした。

RedmineのTimeTrackerプラグインが使いやすい: プログラマの思索に書いたけれど、PSP(Personal Software Process)のように自分の作業の内容と工数を記録しながら開発する場合に役立つ。
自分で作業ログを残すようなイメージだ。
PSPなら作業ログを後で振り返りながら、自分でプロセスを改善していく手法をとる。

だが、上記のTwitterで@tkusukawaさんや@akiko_pusuさんが言われているように、Ajaxの非同期通信でRedmineへ頻繁にアクセスするために、ApacheなどのWebサーバーのログが大量に吐かれて、Webサーバーがダウンしてしまう時があるらしい。

この問題は、Redmineの運用を開発チームや開発プロジェクトの大規模化、組織全体への導入へ拡張する場合に起きる点にあると思う。
そもそもRedmineやTracを使ったチケット駆動開発は、そもそも5人ぐらいの一つのチームでアジャイルに開発するスタイルから生まれた。
だから、複数チームへの対応、数百~数千人の運用まで最初から考慮されていなかった。

Redmineによるチケット駆動開発を大規模化していく上での課題や展望については下記に書いた。

Redmineの大規模化の壁: プログラマの思索

チケット駆動開発のスケールアップ: プログラマの思索

Redmineを業務システム化するアイデア~メトリクス集計の本質は集計バッチ処理: プログラマの思索

Redmineを大規模化していく上での課題は二つある。
一つは、WebサーバやSCMリポジトリの負荷分散。
もう一つは、メトリクス収集のための集計バッチ処理の強化。

上記のTwitterのやり取りは前者の問題に含まれる。
前者の問題に対しては、@daipresentsさんも既に色んな運用方法で対処されているようだ。

後者の問題は、IPAが開発中のツールのような事例がある。
個人的には、Redmineプラグインの一機能として実現して、更にJenkinsからバッチ処理をキックするアーキテクチャが理想的な設計方法だろうと考えている。

そしてこの問題の背景には、Redmineによるチケット駆動開発が組織全体へ導入されることによって、RedmineがERPのようにソフトウェア開発の基幹業務システムになってしまう点にあるだろうと直感している。
Redmineが止まったら、文字通り開発業務だけでなく会社の業務そのものが止まってしまうのだ。

だが、@daipresentsさんが1千人規模でRedmineを組織全体へ導入・運用されている事例を紹介されているように、Redmineによるチケット駆動開発の大規模化は可能だ。
そして、Redmineを大規模組織で導入することで、チケット駆動開発の本来の利点を共有しやすくなる。
ツールの導入によって、ソフトウェア開発者だけでなく、経理の事務の女性も営業マンも会社の経営陣も、チケット駆動開発に慣れれば、自然にアジャイルな概念を浸透していくきっかけになるだろう。
それによって、会社全体でアジャイルな概念を共有しやすくなる場ができる可能性がある。

Redmineによるタスクマネジメント実践技法」も1年で第4刷まで増刷されて著者本人も驚いているが、一番の驚きはプログラマ以外の人達も読者層に含まれている事実だ。

Twitter / @akipii: Redmineによるタスクマネジメント実践技法が第4刷増刷決定です。一番の驚きは読者層がIT業界の開発者だけでなくマネージャ層や製薬業・製造業・情報システム部門などの人達もいることです。Agileの概念が他業界にも普及するかもしれません。

僕の著作では、チケット駆動開発でアジャイルに開発する運用方法を中心に書いたから、一部の読者はアジャイルの概念が分からない、という感想があった。
一部の読者の感想を読むと、チケット駆動開発というアイデアはソフトウェア開発のプロジェクト管理だけでなく、営業マンのタスク管理や情報システム部門・サーバー運用保守の課題管理にも使えるようだ。
製薬業・製造業の人達もRedmineを使って運用されている。

だから、アジャイルの概念に慣れているIT技術者だけでなく、会社全体、組織全体へアジャイルの概念を普及させるきっかけになる可能性を秘めている。
それについても今後色々考えてみたい。

|

« 日本のIT業界のホラー小説「人形つかい」 | トップページ | プログラマにコミュニケーションが足りないと言われる時 »

プロジェクトマネジメント」カテゴリの記事

Redmine」カテゴリの記事

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

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

Agile」カテゴリの記事

コメント

コメントを書く



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


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



トラックバック


この記事へのトラックバック一覧です: RedmineのTime Trackerプラグイン運用の注意点:

« 日本のIT業界のホラー小説「人形つかい」 | トップページ | プログラマにコミュニケーションが足りないと言われる時 »