Redmine(or Trac or yet another ITS)でスケジュールを管理するのは有効か?

有効ではないと思ってます。

〜 これが正解だとは思ってませんが以下、個人的に思ってることを書きます 〜

Redmineでは標準でガントチャート機能があってチケットの開始日、終了日にあわせてチャートを作ってくれます。初めてRedmineを見る人は、「これを使えば進捗管理ができるんじゃないか?」と思うことでしょう。ぼくも思ってた時期がありました*1
しかし、実際にチケットをWBSみたいに運用するのはそれなりの労力を求められます。
なぜでしょうか。

  • スケジュールに変更が起こった時のメンテナンスコストが高い
  • 開始日、終了日を簡単に変えられるUIではない

メンテナンスに時間を取られることももちろんですが、日付を変える作業のめんどくささが半端なくてRedmineを使うのが精神的苦痛になります*2。個人的にはMS ProjectのUIでも満足できていません。(使いこなしてないだけなのかもしれませんけど)

そもそもスケジュール管理って?

そもそもスケジュール管理って何をするためのものなのでしょうか?「計画した通りの進捗であることを制御する」ことが目的であるのなら管理するポイントをマイルストーンとして置けばいい話です。
イテレーション開発をしているならイテレーションごとの期日だけを見ていれば十分なのでチケット(タスク)ごとの期日などどうでもよいはずです。ウォーターフォール開発についても同様で、外向けのスケジュールと打ち向けのタスクは乖離するのが日常なのでチケットの期日にこだわってたらいつまでたってもタスクを終了にできません。
そもそもスケジュールを管理するのは誰の責任なのか?チャートの日付と進捗を見るのをスケジュール管理として扱うことが本当に適切なのか?今一度考えてみるべきではないでしょうか。

Redmineを有効な使い方

  • 要件管理
  • タスク管理
  • 課題管理
  • 情報共有
  • 作業時間管理

要件管理だけをするならPivotal Trackerが最適かもしれません。タスク管理だけをするならアナログのホワイトボードや付箋が良いかもしれません。
その他、情報共有したり作業時間の分析をしたりとトータルな管理をするのにRedmineは向いてると思います*3

まとめ

ソフトウェア = 少ないコスト → 最大限の効果

が成り立つのが人がソフトウェアを使う大前提であるべきなので、コストが必要以上にかかってしまうスケジュール管理はRedmineには向いていない、というのが(現時点での)ぼくの意見です。

*1:2,3ヶ月くらい

*2:ならない人には向いてるかもしれませんね

*3:別にRedmineじゃなくてもTracでもなんでもいいですが