プロジェクト管理=ソフトウェア構成管理
最近思うのは、ソフトウェア開発のプロジェクト管理とは、ソフトウェア構成管理と表裏一体ではないか、ということ。
プロジェクトリーダーの仕事を見てみよう。
彼らの実際の仕事は、ガントチャートを作って、日々の進捗をガントチャートに反映するのに半日以上かける。
結合テスト以降は、業務シナリオ単位でテストケースを作成し、仕様変更や仕様漏れに対しテストケースを何度も保守する。
そして、テストで出てきたバグに対し、優先順位と期限を決めて、修正担当者・テスト担当者・検証担当者をアサインして回す。
それらのプロセス管理のために、進捗状況やバグ情報、バグが発生した要件を手作業で情報収集している。
プロジェクトリーダーの仕事は本来マネジメント業務なのに、マネジメントの判断材料をそろえる作業に1日の90%以上をかけていないだろうか?
日本人はプロセス改善が大好きだ。
製造業の影響を受ける組み込み系の人達は、プロセス改善、品質管理、テスト手法が大好き。
なのに、ソフトウェアの品質が悪い。
テストプロセスでは、たくさんのテスト担当者を投入してマンパワーでバグ潰ししようとする。
人手が多いから、マネージャはテストプロセスを管理するのが大変。
テストプロセスが最もIT化されていない。
理由は、構成管理ツールの概念やノウハウが少ないからだと思う。
つまり、バージョン管理、統合ビルドを自動化するとか、BTSでバグ管理、Testlinkでテスト管理というIT化の発想がない。
プロジェクト管理とソフトウェア構成管理が別々になっている。
プロジェクト管理は、結局はリソース管理。
つまり、誰が何をするか、いつまでに何をやるか、がプロジェクト管理だと思う。
ソフトウェア構成管理は、バージョン管理(SVN)、統合ビルド(Maven+Continuum)、BTS(Redmine)の3つが必須だと思う。
プロジェクト管理とソフトウェア構成管理を一元管理できないから、マネージャは雑用がすごく多い。
ソフトウェア構成管理をIT化できれば、プロジェクト管理の引継ぎがすごく楽になる。
会社としては、優秀なプロジェクトリーダーほど、1次開発で頑張ってもらい、運用保守や2次開発は若手のリーダーに任せたいもの。
その時に、SVNやBTSなどの開発インフラが揃っていれば、使い方さえ覚えてもらえれば、誰でもやれる。
プロジェクト管理のノウハウが共通化されるから、若手も使い方に慣れるだけで、管理業務に自然に強くなる。
プロジェクト管理は属人性が強い。
誰でも管理できると管理者は不要になる。
だから故意に自分がいないと回らないようにするマネージャもいるらしい。
プロジェクトリーダー個人の能力に大きく依存するプロジェクトは、会社にとっても危険だ。
オープンソースのBTSを使う利点は、色んな会社、色んな開発者が使った要望を実現しているので、ソフトウェア開発のデファクトスタンダードになっているからだ。
最初は使い方に慣れないけれど、慣れた方がソフトウェア開発のベストプラクティスをマスターできる。
Testlinkは、テストプロセスに特化したWebのテスト管理ツール。
Testlinkを使うと、テストケースを一度DBに放り込めば、テストの進捗をリアルタイムに管理できる。
また、DBにあるから、テストケースを保守しやすいし、2次開発でテストケースの再利用が楽になる。
更に、Testlinkは要件管理機能もあるので、バグが出たテストケースから影響を受ける要件を洗い出し、それに対して対策を取る、というやり方もできる。
特に、2次開発以降、1次開発で苦労したテストにかかわる機能を仕様変更で修正する場合、あらかじめ関連する機能とテストケースを洗い出しておいて、回帰テストで何度もテストし直すこともできる。
これらはリスクを未然に防ぐというやり方。
プロジェクトリーダーの本来の仕事はリスク管理、リソース管理であるべき。
Redmineでリソース管理、Testlinkでテスト管理を実施して、開発リスクの対策を早期に実行できるインフラを作る。
プロジェクト管理は誰でも実行できるインフラであるべきで、その実装がソフトウェア構成管理ではなかろうか?
| 固定リンク
「プロジェクトマネジメント」カテゴリの記事
- 「スクラムの拡張による組織づくり」の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)
「構成管理・Git」カテゴリの記事
- 「GitLabに学ぶ 世界最先端のリモート組織のつくりかた」の感想(2023.12.10)
- パッケージ設計の原則の意義は変化しているのか(2023.09.30)
- 小説活動にプルリクエスト駆動が必要になってきた(2022.05.08)
- 【資料公開】チケット駆動開発の解説~タスク管理からプロセス改善へ #redmine(2022.01.14)
- プログラミングしてる時はでっかいピタゴラ装置を作ってるみたいな感じ(2022.01.09)
コメント