はじめに
仕事で工数見積もりを行う機会があり、改めてどのような手法で工数見積もりを行っているのか考えてみたいと思いました。
私自身工数見積もりをそこまでやったことがなく、工数見積もりをやる際はいつもチームでそれまでやっていたものを踏襲する形で見積もりやっていました。
ただ、やり方が感覚頼りな面もあり、まだそのざっとの感覚がつかめておらずどのように見積もりをしていいのか、よく分からなくなります。
実際に、仕事でやっている工数見積もりをまとめながら、どう見積もるのが正しいのか考えたいと思います。
工数見積もり法
まず、仕事でやっている見積もり方法について、明言されていませんがこれだと思うものを挙げていきたいと思います。
類推見積もり法
過去の実績に基づいて、工数を算出する方法です。
過去に同じような改修で、4人日かかったので今回も4人日くらいだろうといったものです。
メリット:過去の実績に基づくため、現実的で信頼性のある見積もりが期待できる。
デメリット:過去のデータがなければ比較できない。経験や判断に基づくため、主観的な要素が入る。
よく、仕事ではこの類推見積もり法をやっています。
過去のデータや経験値としてこれくらいだろうといった感じで見積もりをしています。
ただ、これだと新入社員や開発未経験の人が見積もりを行うときに、感覚値がわからないといったことにもなると思います。
個人的には、この感覚というのがしっくりきていないと感じています。
長く開発をやっている人なら、なんとなくこのくらいだと見積もるのでしょうが、まだ経験が浅いとこの感覚がいまいちピンと来ないのです。
もしこの方法でやるとしたら、個人的には過去のデータを平均値で算出しておいてそのデータを誰でも見ることができる状態にし、経験が浅い人なら平均値+αくらだろうとったふうにしたいです。
三点見積もり法
楽観的見積もり、悲観的見積もり、現実的見積もりの3つの値を見積もり、3つの値をもとに期待値を出します。
期待値によって、工数を決定します。
期待値 = {悲観値+(最可能値×4)+楽観値}÷6
メリット:楽観的、悲観的、現実的な見積もりを使用することで、リスクや不確実性を反映した見積もりが得られる。複数の見積もり値を使用するため、単一の見積もりよりも精度が向上。
デメリット:各タスクについて3つの見積もり値を算出するため、見積もり作業に時間と労力がかかる。見積もりは主観的な判断に依存するため、見積もり値が不正確になる可能性がある。
類推見積もり法での工数決定のルールをより細かくしたような感じだと思っています。こちらも過去のデータを基に見積もりを行うもので、チームメンバーの経験が影響してきます。
どう見積もるのが正しいのか
類推見積もり法、三点見積もり法はともに実際の仕事でよく使う工数見積もり法です。
ただ、どちらもチームメンバーの経験値が影響しています。経験値を考慮した工数見積もりができるというのは良いことです。しかし、経験や知識は人それぞれや時間によって変化します。
やはり、どちらも大切なのはデータをしっかりと目に見える形で示しておくことだと個人的に思いました。
また、チームメンバーの経験値の差がどの程度なのか認識しておくことも大切だと思います。このぐらいの差があるならとそれぞれで認識することで、見積もりもやりやすくなると思います。
- 過去のデータをいつでも見ることができる状態にする
- チームメンバーの経験の差を認識する
終わりに
まだ、どう見積もるのが正解なのか模索中ですが、一旦整理してみました。
これを読んだ方で、こうしたほうがいいという意見があれば、どしどしお願いします。