Hatena::ブログ(Diary)

今ぼくの思うこと

2009年08月25日

チームの運営

| 20:07

今までうちのチーム(会社)ではあまりチームマネジメントとかプロジェクト管理とかそういったことをちゃんとやってこなかったんですね

ぼくは開発者ですけど、ずっとチーム開発というより個人開発の集合という形で個々に案件・不具合を管理しコミュニケーションをとり自己完結することというのがうちのボスの意向でした。しかし、すっかり会社も肥大化して本当にずぶの素人が新人としてやってくるようになって個々に依存するいままでのような開発体制では立ち行かなくなってきてしまいました。

現体制では

  1. 開発はそれぞれ担当を持ち、個々に責任を持つ(進捗管理・ヘルプ依頼も個人から発信・調整)
  2. リポジトリ管理・進捗管理・案件管理・不具合管理は全てばらばらのシステムを利用している
  3. リポジトリは出荷用だけ、開発中のリソースは個人管理

という感じになっているので、トラブルの発覚は常に遅れる・人がやめたときの引継ぎがめちゃくちゃ・品質も悪い・全てのシステムがばらばらなので手作業が死ぬほど多い・デグレも起きる・二度手間/三度手間も当たり前、一番の問題はまったく管理ができない状態になっていることでした。

んで、てこ入れしなくては!ってチーム内外でいろいろ話し合った結果こんな感じになりました。

  1. 開発環境はDelphi+eclipse3.5
  2. リポジトリ管理はsubversionを利用
  3. クライアントのツールはTortoiseSVNSubclipseを利用
  4. プロジェクト管理ではtracを導入
  5. コンパイル・テスト自動化ツールとしてHudsonJUnitの導入予定
  6. SubversionとtracとHudsonを結合し一元管理を実施
  7. Subversionのtrunkには各自の端末の全ての開発ソース・共有ドキュメントを登録する

そして、全ての案件・不具合をtrac上でチケット管理することにしました。それによって

  1. 情報の一元化による管理コストの圧縮
    1. 全メンバーの作業の可視化を簡単に実現(チケットを強制することで)
    2. ある程度自由にサマリーできるので管理資料も今までより精度が上がる
  2. 出荷物の精度向上・無駄な作業の撤廃
    1. チケット単位でリポジトリの影響範囲が目視できる
    2. 出荷用ドキュメントもチケットから自動生成

などなど、すべてが回り始めればかなりのメリットが出せるようになりそうです。(イニシャルコストはちょっとかかりましたが。)

個人的にはtracのシンプルさが結構好みで、がちがちのツールよりチーム運営に幅を持たせられる余力がありそうなのがポイントです。そのほかにも、とりあえずスクリプトを書けばある程度がちがちにもできるっていうのも良いです。

ただ、プロジェクトが入れ子にできない(プラグインを使えばいけるらしい、将来的なバージョンアップの予定にも入ってはいるらしい)のは少し残念。

まぁ、はじめたばかりなのでどれだけの効果が出せるかはまだ未知数ですけどもちょっと期待してます。


話は変わりますが、FireFoxのアドオンってやっぱ便利ですねー。今はXSSMe(XSSチェックツール)が気になってます。早くChromeにもアドオンつかないかな、今は Dev リリース 4.0.202.0使ってて、アドオンが使えるようになるオプションがあるらしいんだけど、まだ正式公開されてないからな使ってないっす。