見積ることができない人たち

みなさん、あまり得意ではないと思います。見積。

「いつまでにできる?」という質問に対して、
「いつまでに欲しいですか?」と質問で返す人や
「頑張ります」と答えを言わない人
どう考えても長すぎるだろという期間を答える人多いですよね。

プログラマーが作業量を見積もる方法はいくつかあります。
標準値法(ボトムアップ見積)、ファンクションポイント法(IFPUG法)、COCOMO法、LOC。
こういった手法を使っても係数次第で数値は変化するので平たく言えば見積は勘と経験です。

また見積段階では仕様・メンバー(やスキル)・リスク・品質など
不確定要素も多く自分が持つ情報で到底計れるものではありません。
見積りたくない心理は理解できます。

ただ納期を決めない仕事って「いつやっても良い≒やらなくても問題はない」なんですよね。
僕も平気で3年とか放置します。

納期を決めないといけない。そのためには見積が必要です。
別にソフトウェア開発に限った話ではありません。
少しだけ見積のコツをご説明します。

何を見積もっているのか?

製造業では当たり前の用語ですがタクトタイムとリードタイム。

タクトタイムは1つの製品の製造にかける時間です。
カップ麺で言えばお湯をそそいで3分。

リードタイムはどの視点で言うかにもよりますが発注~納品までの期間です。
依頼を受けてから相手に渡すまでという意味で
自分の工程に材料が届いてから後工程に渡すまでの時間だったりします。
カップ麺で言えば段取りしてお湯を沸かして食べる直前までと言ったところでしょうか。

作業量を見積もっているのか?期間を見積もっているのか?

ここは明確に意識した方が良いと思います。
3分は見積もれますが購入してきたカップ麺が
自分の口に入るまでの時間を正確に見積もることは難しい。

カップ麺なんて簡単だよ。
3分でできるんだから。3分待ってて。

と言ってやかんを用意することから始めれば我が家の環境では約3倍外れます。

見積もりが苦手

多くの場合、見積を気合と根性で実現しようとします。

例えば1個あたり5分/個の仕事が200個。1000分ですね。約16.6時間で終わります。
カッコつけて2日あればできますよ。と言っちゃったとしましょう。
残業すれば何とかなる?

前倒しでやりたいので初日は3時間残業して
翌日5時間分(60個)の作業量残して帰るという計画を立てます。
でも、何故か帰り際に100個以上の作業が残ってるなんてザラです。
ま、明日もあるし明日ちょっと残業して頑張れば。

ロボットじゃないので同じペースでずっとできるわけがありません。
飲み物を飲んでトイレに行って誰かに話しかけられてちょっと意識が飛んで。
そういや1hの会議が入ってたっ!!

しんどかった記憶と一緒に見積もりに対するトラウマが残ります。

それでも自分ひとりで完結する仕事ならまだ楽です。
複数人で行う仕事の場合、相手の都合もあり更に見積もることが難しくなります。
見積が苦手な人は、先ほどのタクトタイムとリードタイムの差に注目すべきでしょう。

実は1日の内で付加価値を生む作業はたった2時間ということもザラです。
残業時間に入り割り込みが減ってから仕事が進むという人は
「日中何をやってたっけ?」となる人も多いと思います。

最後に

通常、説明が必要になる作業見積は過小評価・過少申告しがちです。

例えば、

  • 効果算出のための削減した作業量の見積
  • 開発金額算出のための工数見積

一方で説明の必要ない作業見積は過大評価しがちです。

  • おたがい様(俺はこれだけやってやったのに何でこの程度のこともやってくれないんだ)

また他人の作業量は過小評価しがち。

  • その程度の仕事になぜそんなに時間かかるのか

見積なんてほとんどが根拠のない勘か経験に基づく勘です。
ほとんどの人が星占いみたいなものです。

やることは単純です。計ってみましょう。
特に作業以外の部分を。

見積はものすごく難しい。
ただ、星占いより上の精度を出すのは簡単です。
他の人より高い精度の見積を出せるようになると印象が違います。
みんなやりたがらないのでブルーオーシャンです。

内緒ですよ。

見積ることができない人たち

おわり

コメントする

メールアドレスが公開されることはありません。