■EVMとは?
EVMとは「プロジェクトの進捗や作業のパフォーマンスを、出来高の価値によって定量化し、プロジェクトの現在および今後の状況を評価する手法」です。
進捗の進行や遅れのような指標(スケジュール差異)も、日数や時間という単位ではなく、コストを単位として求められることが特徴です。
EVMでは、PV, EV, AC, BACという4つの入力情報から、SV, CV, SPI, CPI, EAC, ETC, VACという7つの指標を生成します。
この中で、SPIは日程的に順調か、CPIはコスト的に順調かを示す指標であるため、プロジェクトの現在の状況を知るのに使えそうです。
また、EACは最終的にマージンに収まるか、ETCはあとどれくらいで終わりそうかを示す指標であるため、プロジェクトの今後の状況を知るのに使えそうです。
ただし、EVMはコストを単位とするということは、「計画や進捗をすべてお金に換算して管理しよう」という意味になります。おそらく、EVMは大きなプロジェクトで、資材の調達や人員の調達など、お金を扱う人の進捗管理に適しているのでしょう。
だとすると、ソフトウェア開発の進捗管理にも使えるのでしょうか? 不安がよぎります。
■事例を調べてみた
EVMは良く知られた手法なので、その考え方や方法について述べている資料は多いのですが、適用による成功事例や具体例は意外と見つけられません。
海外の会社と仕事をした際に、EVMでの進捗報告が求められ、それが大変だったという話を見つけました。しかし、具体的に何が大変だったのかは明らかにされていませんでした。
実際にEVMを使おうとすると、管理が重くなるのかもしれません。また、お金で管理するたるめ、現場には向いてないかもしれません。
■運用可能性を考えてみた
EVMでは、PV, EV, AC, BACという4つの入力情報から、SV, CV, SPI, CPI, EAC, ETC, VACという7つの指標を生成します。これらの入力値はすべてお金です。
しかし、ソフト開発の現場の進捗管理にお金を使うのは現実的ではありません。そこで、人件費に見合った「時間(h)」を単位とすることを考えました。
そうすると、BACは総見積り工数、PVは現時点までに使う予定の工数、ACは実際に使った工数、EVは現時点までに完了した出来高となります。
出来高についても、「計画時に見積もった作業成果物の開発見積工数をその作業成果物の(工数的な)価値とする」と定義しました。
例えば、100H の工数で作成すると見積もった成果物は、実際には 120H かかったとしても、価値は 100H と考えます。
具体例で説明します。下の表は進捗管理表の一部だと考えてください。例として、週報で7/17までの状況を集計する場合を考えてみます。
PVは、集計日の7/17までの見積工数の合計で70h、ACは集計日までの消費工数で75h、EVは集計日までの出来高の価値です。価値は見積りで表すと定義したため、集計日までに作成できた見積工数となります。集計日までには作業成果物Dが50%しか作成できていないので、その部分は少なくなり、60hとなります。
この考え方であれば、EVMをソフトウェア開発の進捗管理に適用することが可能になるかもしれません。実現性が見えてきました。
■試行してみた結果
実際に、あるプロジェクトの計画と実績のデータを EVM の指標を使ってグラフ化してみました。
計画と実績のグラフではPV, AC, EVが示されています。
典型的な進捗率のグラフと似ており、進捗率が徐々に上がっていく様子は良いのですが、縦軸のスケールの問題で乖離が分かりにくいという問題があります。
効率指数のグラフではSPIとCPIが示されています。
計画通りであれば、SPIもCPIも両方とも1.00となりますが、実際には上下に変動しています。開始直後は冬休みと重なっているため、データが不正確な可能性があります。
その後は1.00より小さい値が続きますが、急激に変化した部分の理由を調査したところ、再計画をしていたことが判明しました。
これらの指標を見ることで、プロジェクトが順調に進行しているかを判断できそうです。
残工数予測のグラフではEACとETCが示されています。
計画通りであれば、赤色のETCは左上から右下への斜めの線となり、最終的に0になります。しかし、実際には最終的に0にはなっているものの、前半は不確定な動きを見せています。
また、緑色のEACは計画通りであれば、総見積り工数の水色のBACの値と一致しますが、途中から常にそれを超えており、残業で対応していることがわかります。
予測なので前半はデータ量が少なく、精度はあまり高くないようですが、後半は比較的実態に近い値になっているように感じます。
結論として、SPI, CPIを用いることで今回の課題が解決できそうだという結果が得られました。
次回は実践編です。実際にプロジェクトの見える化ができたのかを説明します。
組織全体でのEVMによるプロジェクト進捗管理(1/3) : 進捗管理の課題
組織全体でのEVMによるプロジェクト進捗管理(2/3) : EVMの運用可能性を考える
組織全体でのEVMによるプロジェクト進捗管理(3/3) : 組織全体でEVM管理をやってみた