第171回: 「統計の実務」31 EVM その2(EVM とは)
◀前の記事へ 次の記事へ▶
≡ はじめに
前回は、「EVM その1(イントロ)」でした。
EVMの軽い紹介のつもりでしたが、EVMが、Earned Value Management(アーンド・バリュー・マネジメント)の略であることすら書いていませんでした。
そこで、今回は、EVMの説明です。グラフは一番基本的なものをggplot2とExcelで描いてみます。
≡ EVMとは
前回ご紹介した、経産省が発行した『 EVM活用型プロジェクト・マネジメント導入ガイドライン』(以下、EVMガイドラインと略す)をもとに概要について書きます。
EVMは「イー・ブイ・エム」と読みます。EVMは“Earned Value Management”の略です。こちらは、「アーンド・バリュー・マネジメント」と読みます。
EVMガイドラインでは、EVMのことを以下のように定義しています。
上の説明にある「出来高の価値」のことを“Earned Value”といいます。
EVMガイドラインの説明を一言でいえば、「プロジェクトの進捗管理をお金1本で行う」ということです。
「お金1本で」というところがポイントです。
週報会などで、「プロジェクトのQCDはどうなっている?」と質問されたことがあるかもしれません。
その質問に対して、例えば、「まず、品質ですがバグが出続けています。予算は残りわずかです。納期はギリギリ間に合いそうです」などと答えたりします。
私は何も疑問に思わなかったのですが、よく考えるとプロジェクトの進捗について3軸で聞かれて、それぞれに答えています。
絵にするほどのものではないのですが、プロジェクトの進捗確認の質問が3つもあるというふうにも見えます。
さて、品質と納期はトレードオフと言っても単位が違いますから比較は困難です。また、気が短い偉い人は『結局のところ間に合うのか、間に合わないのか? 間に合わないとしたら納品の期日までにどこまでできるのか? 当初に計画したものを完成させるには、あとどのくらいかかるのか?』が簡単にはわからないので、イライラします。
それならいっそのこと、QもCもDもすべてお金に換算してしまえというのがEVMの発想です。そうすれば、横軸に日付をとって、縦軸をお金にしたグラフがかけて、それを見たら一目で状況を把握できるのではないかということです。
そうしてできたものが前回のキャッチイメージの「EVMグラフ(PV、EV、ACの推移グラフ)」です。
≡ EVMの3つの柱
EVMによって分かることは、
1. 現時点でプロジェクトがどれだけ進行したのか
2. 計画と実績との乖離の大きさ
3. このまま推移するとどうなるのか
の3点です。
EVMでは、PV(計画)とEV(実績)とAC(費消済コスト)を入力として、「進捗の分析」と「今後の予測」を行います。
ですから、まずは、PVとEVとACについて知る必要があります。データを用意できなければ、始まりませんから。
今回用意したデータはこちらです。EVMガイドラインのグラフから読み取ったものです。
PV/EV/ACについて全てお金で表現されていることに注意してください。また、EVとACについて途中までしかデータが無いのは、実績値だからです。(2022/5/27あたりに作った表と考えてください)
入力の手間を省くためCSVファイルを置いておきます。
■ PV(出来高計画)
PVは“Planned Value”のことで、出来高の計画値です。
さて、上の表のPV列をどうやって作るかですが、最初と最後の行が大切です。
EVMは、「プロジェクトの進捗管理をお金1本で行う」と上で書いたとおり、「プロジェクトありき」です。
さて、プロジェクトの定義は以下の通りです。
ここにある「有期性」というのは、「開始時点と終了時点が定義される」ことを意味します。つまり、プロジェクトである限り、PVの開始日と終了日は明確であるはずです。
次に終了日の金額が35万円なのは、プロジェクトが完成するまでにいくらコストをかける計画なのかということです。
例えば、仕様書を書くのに20時間かける計画だったとします。仮に要員単価を時給5,000円としますと、5,000円/時間×20時間=10万円となります。ほかにも、コーディングやテストの時間を足してプロジェクト全体で35万円の計画ということです。(まともなWBSであれば、各行(各タスク)には、そのタスクの作業成果物が書いてあります)
作業工程ごとに分けて、出来高計画を立てます。例えば、こんな感じです。
上の表では、工程ごとに必要とする時間が出ていますので、あとはカレンダーに割り振れば、PVの作成は完了です。
■ EV(出来高実績値)
EVは“Earned Value”のことで、出来高実績、すなわち、仕事によって作り出した価値の実績値です。これをどうやって求めるかというと、上の表に進捗率を入力するだけです。
■ AC(コスト実績値)
ACは“Actual Cost”のことで、実際にかかった費用です。これをどうやって求めるかというと、「勤務時間×要員単価」です。
≡ EVMグラフ
EVMグラフは、描かなくてもよいのですが、描くとしたら上のCSVをRコマンダーで読み込んで、ggplot2パッケージを使って、サクサクっと描くのが良いと思います。(本当は、WBSと連携したEVMを描けるプロジェクトマネジメントツールを使うべきです)
さて、ggplot2ですが、まずはオプションのRパッケージなので、「install.packages("ggplot2", dependencies=TRUE)」でインストールしておきます。(もちろんRのメニューからインストールしても構いません)
あとは、CSVを読み込んでから下記のようなスクリプトを実行します。
library(ggplot2)
EVM <- Dataset
library(tidyr)
EVM <- gather(EVM, key = "Type", value = "Cost", PV, EV, AC)
# 年数を削除
a <- format(as.Date(EVM$day, format = "%Y/%m/%d"),"%m/%d")
library(dplyr)
EVM = mutate(EVM, day = a)
g <- ggplot(EVM, aes(x = day, y = Cost, color = Type, group = Type)) +
geom_line(size = 1) +
xlab("Date") + #x軸の軸ラベルを指定
ylab("金額") + #y軸の軸ラベルを指定
theme(
axis.text.x = element_text(angle = 30, hjust = 1),
axis.text.y = element_text(size = 10),
axis.title = element_text(size = 10),
legend.text = element_text(size = 10),
legend.title = element_text(size = 10)
)
plot(g) #作ったグラフを画面に表示
ggsave(plot = g, file = "EVM.png", w = 6, h = 3, dpi = 600) #pngでグラフを保存
すると、こんなグラフが現れます。ggplot2は凝りだすと切りがないのでやめどきが難しいです。
Excelでも構いません。選択して「お勧めグラフ」を選ぶとこんなのを描いてくれます。
X軸についてカレンダースケールになっているところが良いですね。ggplot2でも出来ますが、上のグラフではしていません。
≡ おわりに
今回は、EVMの紹介でした。
次回は、EVMの使用上の注意点について書きます。
使い始めるとすぐに悩みが出るので、その辺についてです。
◀前の記事へ 次の記事へ▶
この記事が気に入ったらサポートをしてみませんか?