ふにゃるんv2

もとは、http://d.hatena.ne.jp/Wacky/

Excelによるバーンダウンチャートの作り方(for mymy-mycompany分室さん版)

仕事の進捗管理で有名なのは、ガントチャートだと思う。
で、ガントチャートって役に立つのか?と言われると、個人的には「???」なんだよね。


自分の事を棚に上げて言うと、↓こんな感じ。

  • 作るのが面倒
    線を引っ張りまわして、1つの項目が どのくらいの長さがかかるか?納期に間に合わせるには、どのくらいまで短くしないといけないか?何て事を考えると、ほんと面倒。
  • 計画通りに進まない
    数週のスパンがあったら、大抵数日に一度は突発業務が入って遅れだす。でも、突発業務って、ガントに含めにくい。
  • 漏れの為に作ってるんじゃない
    結局は上に指定された納期に間に合わすには、こうしますって計画を出す為なんだよね。だから、正直作りたくない。→こんな事するくらいなら、少しでも本業に時間を割り当てたいんだよ。→となると、どうしてもメンテが億劫になる訳。

まぁ、作るのも面倒だし、メンテする動機付けも非常に乏しいのが実際の所なんだよね。
管理の道具を実務の人間が使うってのも何か変っぽい所は ありますがね。
とはいえ、何がしか作業量を把握しないと、自分の状態を診断できないのも事実。


要するに「実務者による、実務者の為の、実務者の道具」が欲しいんだよ。実際。


ってまぁ、ぶち上げてみたんだが、最近面白いなぁ、と思っているのが「バーンダウンチャート」って奴。

  • 進捗が一目でわかる
    ぶっちゃけ上にとっては、実務者の細かい作業内容なんざ知った事じゃなくて、指定した納期に間に合いそうか 間に合わないか?って情報だけが知りたいんだと思うのよ。
    これなら、誰でもわかるもんね。
  • 収束点が一目でわかる
    項目の減り具合から、収束点が引っ張れる。これはバーンダウンチャートの一番のメリットじゃないかと思う。
    ガントチャートだと遅れの日数はわかっても、イメージ湧きにくいんだよね。視覚に訴えてこないから。
  • メンテが楽そう
    %の記入はせんでもいいし、終わったら完了日を書くだけ。少なくともガントチャートで しこしこ修正加えるよりは楽だよね。


という訳で、バーンダウンチャートを作る何かツールか何か無いかな?と思ったのよ。(本来は、掲示板もどきに手書き推奨らしいんだが、それじゃぁ上に提出できないの)
そうしたら、↓mymy-mycompany分室さんが、Excelで作ったバーンダウンチャートのサンプルを公開されていた。


これなら採用しやすいぜ、とばかりに、早速ダウンロードして どんな風に実現しているのか調べさせてもらった。
burndown.xls
burndown.xls posted from フォト蔵

  • データ項目は、"カード"シートに書く
    グラフは、"実績"シートに表示される。
  • 多分"カード"シートには、「作業項目」と「完了日」のみを記入していく。
    作業項目は、定量化しやすいように出来るだけ細かくする…かな?
    サンプルでは、原稿、サンプル、キャプチャの3つの業務分類に対して「作業項目」と「完了日」を記入している。
  • "実績"シートでは、例えば原稿業務に注目すれば、
    B1セルが原稿業務の作業総項目数
    B列がA列の日付に対して完了した項目数
    F列が完了した累計数
    J列が作業総項目数から完了項目数を引いた、残り作業項目数
    を、表す。
  • グラフは、上の残り作業項目数を、横軸を日付順にしてプロットしたものになっている。
  • 推定の収束線は、グラフの上に 線のオートシェイプを貼り付けているだけ。なるほど。

で、ワークシート関数が どのように使われているか調べてみた。

  • B1セルは、作業総項目数を算出する為に、"=COUNTA(カード!A:A)-1"という式が用いられている。
    カッコ内の範囲の内、空白でないセル数をcountaが返す。で、-1(項目名)している訳ね。
  • ①のB列は、日付毎の完了数を算出する為に、"=COUNTIF(カード!E:E,実績!A3)"という式が用いられている。
    最初の引数が"カード"シートの原稿業務の完了日列を指し、その中から第2引数に一致するものを引っ張ってくるって寸法。
  • ②のF列は、累計を出す為に、F4セルは"=B4+F3"という式が用いられている。(F3セルは単に"=B3")
    前の日の完了数と その日の完了数を足しこんで、累計を出している訳ですな。
  • ③のJ列は、残り作業項目数を出す為に、"=B$1-F3"という式が用いられている。
    B1セルの作業総項目数から その日の累計数を引いてる訳。
    (ここで、"B$1"が何故"B1"じゃないかと言うと、下のセルにコピペしてみたらわかる。ちゃんと考えられているねぇ)

VBAを駆使しないと作れないのかと思っていたけど、ワークシート関数で実現できるなんて、すげぇよね?