簡単そうで難しい進捗管理。
スケジュール通りに進んでいる、進んでいないという事実確認だけで一喜一憂しているだけではないでしょうか?
正しく進捗管理ができないとメンバーに余計なプレッシャーを与えてしまったり、顧客との交渉が後手にまわってしまうなど、プロジェクトに悪影響が出てしまいます。
今回は失敗しない進捗管理の方法について考えてみます。
進捗管理の一番の目的は「遅れの見える化」
よくある誤解として、進捗管理とはスケジュール通りに進むようにプロジェクトをコントロールすることではありません。
「プロジェクトは遅れるものである」という前提で、「今、何がどのくらい遅れているか」を知るために行うのです。
予定通りに開発が進むのであればプロマネとしてこれほど楽なことはありませんが、まずそんなことはありません。技術的な問題か顧客の問題か。原因は様々ですが、何らかの問題によって高確率で計画にズレが生じます。
進捗管理はその問題を「スケジュールとのズレ(遅れ)」という形で検出し、早めに対策を打つために行うのです。
そのために「今」「どのタスクが」「何人日(何人時)遅れているか」をプロジェクト関係者に共有することが重要となります。
つまり進捗管理の最も重要な目的は「遅れの見える化」です。
進捗が90%から進まない「90%症候群(シンドローム)」
進捗管理は「このタスクが〇%完了した」という形でパーセンテージで管理する手法が一般的です。
MS Projectなどの進捗管理ツールを使い慣れた方は、ガントチャートにこれを反映しイナズマ線で遅れ状況を把握する方も多いと思います。
これはざっくりとした進捗把握には大変便利なのですが、メンバー各人の進捗を把握するには不向きです。
「90%症候群(シンドローム)」と呼ばれますが、メンバーからの進捗報告が進捗率90%あたりから伸び悩み、いつまでもタスクが完了状態とならない現象が発生します。
メンバーにも「難しい実装を後回しにしていた」などの言い分はあるでしょうが、それでは正しい進捗の把握ができません。
EVMによる進捗把握
そこでおすすめしたいのが「EVM」という手法です。
EVMとはEarned Value Management(アーンド・バリュー・マネージメント)の略で、コスト基準で進捗状況を確認する手法です。
システム開発におけるコストとは工数のことです。つまり、工数ベースで進捗を確認していく手法です。
例えば、8日かかる予定のタスクに10日かかった場合、本来の予定から「2日遅れ」ということが確認できます。
また8日かかるタスクを4日間実行した時点で、あと6日の作業時間が必要と分かった場合。これも「2日遅れ」になることが確認できます。
EVMは、こんな感じで「タスクにかけた工数はどのくらいか」「あとどのくらいの工数が必要か」という視点で進捗を見ていく手法です。
EVMの使い方
EVMで使う4つの指標
EVMでは、次の4つの指標を使います。
- EV(Earned Value):実際の出来高
- PV(Planned Value):出来高の計画地
- AC(Actual Cost):コスト実績値
- BAC(Budget At Completion):完成時総予算
EVMの使い方
事前にPV(出来高の計画値)とBAC(完成時総予算)を登録しておき、開発中はAC(コスト実績)に工数を積み上げます。
EV(実際の出来高)は次の計算式で求めます。
EV(実際の出来高)= BAC / (AC + 残り工数) * BAC
例えば一人で8日かかるタスクを4日間実施した時点で、あと6日の作業時間が必要と分かった場合は次の通りです。
BAC(完成時総予算)= 8人日
PV(出来高の計画値)= 4人日
AC(コスト実績) = 4人日
残り工数 = 6人日
EV(実際の出来高)= BAC / (AC + 残り工数) * BAC = 3.2人日
4人日分の作業が終わってなくてはいけないところ、3.2人日分の出来高であることが分かります。つまり、現時点で0.8人日の遅れが生じていることになります。
この場合、残り4日で4.8人日分の作業をこなせばよいことになるので1日だけ1名の増員で遅れを取り戻せそうです。
一人追加し、次の日が順調に作業できた場合の実績は次の通りです。
BAC(完成時総予算)= 8人日
PV(出来高の計画値)= 5人日
AC(コスト実績) = 6人日
残り工数 = 2.8人日
EV(実際の出来高)= BAC / (AC + 残り工数) * BAC = 5.13人日
PV(出来高の計画値)が5人日ですので、0.13人日の前倒しになりました。その分余計なコストが発生しましたので、AC(コスト実績)は+1人日のコスト増となります。
本来であれば2人日分の追加コストが発生するところ、タスク途中で遅れに気づいたことで1人日分のコスト増に抑えることができました。
こんな感じで遅れとリカバリコストの大きさを正確に把握し、影響を最小限に抑えていきます。
進捗管理とリスク管理はセットで考える
これで日々の進捗管理はだいたいうまくいくと思います。
ただ進捗管理は遅れが出てから考える場当たり的な対応になりがちなので、個人的にはリスク管理とセットで考えることをおすすめします。
進捗管理が対処療法なら、リスク管理は予防接種みたいなものです。
予防策をしっかり検討することで、進捗管理の効果を上げやすくなります。
リスク管理についてはこちらの記事にまとめましたので、よろしければご覧ください。
[nlink url="https://system-creator.com/risk-management/"]