プロジェクト管理サーバーとは
僕が考えているプロジェクト管理サーバーについて良い記事があったのでメモ。
【プロジェクト管理サーバーのイメージ】
そろそろプロジェクト管理ツール群について一言言っておくか - Talking Nonstop
プロジェクト管理サーバーの目的は、SW開発で必要なインフラを提供することにある。
基本は、タスク管理(Redmine・Trac)とバージョン管理(Subversion)。
タスク管理の目的は、プロジェクト内部の作業全てを見える化して、一元管理すること。
RedmineやTracの運用の鍵は、タスクをチケットにどこまで分割して、アジャイル開発のイテレーションへどのように落とし込むか、という点にある。
つまり、分割したチケットをリリース単位にまとめて、小規模リリースできるか、という観点が大事。
バージョン管理の目的は、プロジェクト内部で発生する全ての成果物を一元管理すること。
バージョン管理の本質は、エディタのように成果物のUndo/Redoができることにある。
対象は、ソースコードだけでなく、ExcelやWordなどの仕様書やビルドスクリプトなども含まれる。
仕様書を「画面定義書_yyyyMMdd.xls」と書いている時点で、バージョン管理すべき対象なのだ。
そして、ビルド&リリース管理のHudson。
ビルド作業やリリース作業は、ジョエルテストにもあるように、ワンクリックでビルドできてリリースできるべき。
TestLinkは、結合テスト以降のテスト、特に受入テストで使う。
僕の経験では、設計から、開発、単体テストまでの作業はRedmineのチケットで管理するが、リリース前の受入テストに入ると、TestLinkでテスト作業を一括管理する。
受入テストでは、テストケースの実施数が作業実績になるからだ。
他には、プロジェクト内部で出てくる業務用語や技術用語はMediaWikiで管理するとか、SVNリポジトリの統計を出力するstatSVNを使う。
他に試したいものは、HyperEstraierというMixiで使われているらしい検索エンジン。
Subversionにある成果物一式をいつでもWebで検索できるようにしたいから。
そうすれば、開発者自ら、仕様の不明点を探して、自力で設計書を作れるようになる。
【プロジェクト管理サーバーの作り方】
Vine Linux 4.2 で Trac + SVN + Hudson + TestLink 環境を簡単に構築するスクリプト - かおるんダイアリー
プロジェクト管理サーバーは、複数のオープンソースの管理ツール群を組み合わせたもの。
上記は、スクリプトで一式インストールする。
Trac + SVN + Hudson + TestLinkだけあれば、少なくともプロジェクト管理に困ることはあまりないだろう。
できれば、上記ツール群をVMwareイメージにしてくれると、初期設定込みになるから、より簡単になるだろう。
しかし、プロジェクト管理サーバーがあるからといって、それだけでプロジェクト管理が楽になるわけではない。
ツールに合わせた開発プロセスで運用する必要がある。
ツールの機能を十分に知り尽くして運用しなければ、逆に生産性が落ちることもあるだろう。
僕の経験では、プログラマやテスターは上記のツールにすぐに馴染んでくれて、プロセスを大幅に改善できた。
彼らは新し物好きだし、これらのツールによって、自分のタスクが見える化しただけでなく、自発的にバグをチケットへ登録するなど、自発的に作業するようになった。
しかし、従来のマネージャ職の人達がなかなか上記ツールに馴染んでくれない。
そもそもSubversionの使い方を知らなかったり、チケット駆動開発で現れるワークフロー管理、そしてアジャイル開発のタスク管理という概念に馴染んでいなかったりする。
どうやら、従来のExcelによるプロジェクト管理に固執しているみたい。
でも、僕は、プロジェクト管理サーバーは特にアジャイル開発のプロジェクト管理を補強してくれるはずと確信している。
| 固定リンク
「プロジェクトマネジメント」カテゴリの記事
- 「スクラムの拡張による組織づくり」のScrum@Scaleの感想(2024.03.31)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart2~プロセスのレイヤと達成目標のレイヤが異なる(2023.02.18)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart1~CSFはWBSみたいなものと捉える(2023.02.14)
- PM理論では課業志向の方が関係志向よりも生産性が高いことを主張しているのではないか(2023.01.22)
- 現代日本人の弱点はリーダーシップ不足と生産性が著しく低いこと、そしてリスク許容度が著しく低いことだ(2022.12.23)
「Redmine」カテゴリの記事
- 「RedmineのUbuntu+Docker構築への移行」の感想 #redmineT(2024.11.24)
- 第27回redmine.tokyo勉強会の感想 #redmineT(2024.11.10)
- Redmineのバージョン設定でプロジェクトの設定方法が違う(2024.06.23)
- ウクライナのRedmine開発者が作ったRedmineテーマやプラグイン(2024.06.18)
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
「ソフトウェア工学」カテゴリの記事
- アーキテクチャ設計はベストプラクティスを参照するプロセスに過ぎないのか?~Software Processes are Software, Too(ソフトウェアプロセスもまたソフトウェアである)(2024.09.22)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- マイクロサービス設計は従来のアーキテクチャ設計と何が違うのか(2024.01.02)
「TestLink」カテゴリの記事
- JSTQBのテストプロセスの概念モデルを描いてみた(2023.05.26)
- TestLinkの要件管理にUSDMを適用する方法(2023.01.22)
- TestLinkのテストケースはクラスとインスタンスの考え方で区別する(2023.01.22)
- テスト管理ツールCAT、TestRail、QualityForwardのオンラインのマニュアルのリンク(2022.09.24)
- テスト管理ツールTestRail、CAT、QualityForwardの感想(2022.07.30)
「チケット駆動開発」カテゴリの記事
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- チケットはデータでとプロセスの二面性を持つ #redmine(2023.12.24)
- 小説活動にプルリクエスト駆動が必要になってきた(2022.05.08)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- プロジェクト管理の基本はテーラリング、Redmineはプロセスをテーラリングするツール(2022.04.21)
「Agile」カテゴリの記事
- 「世界一流エンジニアの思考法」の感想(2024.12.08)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「スクラムの拡張による組織づくり」のScrum@Scaleの感想(2024.03.31)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- 「GitLabに学ぶ 世界最先端のリモート組織のつくりかた」の感想(2023.12.10)
コメント
言及ありがとうございます
> プロジェクト管理サーバーは特にアジャイル開発のプロジェクト管理を補強してくれるはずと確信している。
これは、まさに私も同感です。
エントリ中でも述べられている通り、ツールの機能を知り尽くしておかないと逆効果になることもあり得るでしょう。
なので、今後もあきぴーさんをはじめ、様々な方の意見も取り入れながら、噛み砕いて自分の力にしようと思います!
投稿: ikikko | 2009/04/12 18:12