見積は精度をあげようとすれば過大になり、チャレンジできなくなる。
本日研修講師でスクラムの模擬プロジェクトをやったのだが、ちょうど上に書いた
事象がおきた。
第3スプリント(最終スプリント)で、最終日の半分の時間がきたところで、
計画していたすべてのタスクを終了した。
ベロシティよりも多く見積もったのに・・・
理由は簡単でした。
見積に少し慣れてきたところで、正確に見積もりしようとして、一部のストーリーを
課題に見積もったからだ。
相対見積もりした時に、最初と同じ精度で見積もっていなかった。
難しそうと考えたからだ。実施するであろう作業量で相対見積しなかったからだ。
本人たちにそれを告げると、こころあたりがあったようで、
「正確に見積もるべきでした・・・」
「過大に見積もった部分がありました・・・」
「これは開発する人はまったく損しないのだが、お客様だけが損するんですよ」
と伝えると、なおさら過大に見積もるべきではないと反省していた。
最終スプリントの開発物はすべてリリースできただけに、
本人達は余計に残念に思った。
研修としては、良い失敗にしたので、良かった。
というエピソードでした。この後は長々と精度を上げようとしすぎると、過大になり、
チャレンジできなくなる説明をしております。
アジャイル開発では、相対見積と絶対見積を併用するケースがあります。
プロダクトバックログは相対見積で、スプリントバックログで出すタスクは絶対見積で
という具合です。
プロダクトバックログは、プランニングポーカーで実施しますよね。
Tシャツサイズやフィボナッチ級数など使います。
これの特徴は、ほどほどの情報しかないときに、ほどほどの精度で
素早く見積もりできるということです。
なぜなら、会議もコストだからです。
やりすぎはよくないのです。
ウォーターフォール開発は計画主義なので、仕様を固定化して、
正確に見積しようとします。そのことは決して問題ないのですが、
この文化をアジャイル開発にもちこもうとするのは、いかがなものかと思います。
タスク漏れが発生して、バーンアップすることを嫌う人もいます。
これって、アジャイル開発では逆効果だと思います。
1)正確にしようとすれば、細部をつめていく形になり、会議コストが増加する。
2)正確に見積しようとすれば、見積内にバッファをとるようになる。結果、過大になる。
3)見積の値が大きくなれば、実施する開発量が少なくなってしまう。
つまり、「見積は精度をあげようとすれば過大になり、チャレンジできなくなる。」
です。
なぜ、こうなるのかというと、
「計画にミスがあるのは作業者が稚拙」と考えていたり。
「新しい課題が見つかることはよくない」ことと考えているのではないでしょうか。
計画にない作業が発生することは、悪いことなのでしょうか?
なぜ、計画どおりでないといけないのでしょうか?
見積の精度をあげるためには、1回作ってみないといけなくなるかもしれません。
見積で大切なのは、あくまでも目安になり
進行がわかれば良い。
バーンダウンチャートの管理は、
見積の精度に関係なく、進行が管理できる。
大切なのはほどほどの精度で、コストをかけ過ぎないことです。
問題発生がわかるように、小さめにしておくべきなのです。
発生してからが腕の見せ所です。それを楽しみましょう。