10.15

View in English

10.15 見積りと予測

概要と動機

すべてのソフトウェアチームは、同じ問いを尋ねられます。いつ終わるのか。その問いの背後には、ソフトウェア開発工数の見積り、つまり何かがどれだけの仕事になるかを、それを行う前に予測する実践があります。それは、私たちが行う中で最も難しいことの一つであり、まずく行うのが最も容易なことの一つです。問題は、ソフトウェアが発見の仕事であることです。かつて存在しなかったものを築いており、問題について学ぶことの多くは、築く間にだけ見えるようになります。学びの工数を予測することは、既知のタスクを繰り返す工数を予測することと、本当に異なります。

なぜこれを、プロジェクトマネジメント(10.6章)の一隅ではなく、独自の規律として扱うのでしょうか。失敗がこれほど一貫して高価だからです。チームは日常的に、証拠のない単一の日付にコミットし、現実がそれに反した後も長く、その日付を守ります。リーダーは見積りを約束と混同します。契約は、午後に作られた数字を凍結し、1年間それを守らせます。結果は、遅れたデリバリー、侵食された信頼、誰も本当に信じていることを言わない文化です。これを正しく行うことは、より良い数学というより、誠実さの問題です。知っていることと願っていることを分け、不確実性を不確実性として伝えること。

企業と政府の設定では、賭け金が急激に上がります。企業は、年次の予算に対して噛み合う取り組みのポートフォリオに資金を出し、資本を配分するために確固たる数字を期待します(10.1章)。政府は、歳出予算の規則のもとで公的なコミットメントを行い、固定価格契約に署名し、日付が遅れたとき立法者に答えます。どちらの世界でも、自信のある単一の数字を出す圧力は計り知れず、その数字を信頼できなくする深い不確実性は、重要な誰かが確実性を望むからといって消えません。この章は、異なる姿勢を論じます。決定に役立つときに見積もり、楽観ではなく証拠で予測し、範囲について真実を語る。

主要原則

  • 見積りは予測であって、約束ではない。 目標とコミットメントから分けておきます。
  • 不確実性は本物なので、表現する。 確率を伴う範囲は、偽の単一の日付に勝ります。
  • 過去は、楽観よりよく未来を予測する。 新しい推測より、測定された履歴を好みます。
  • 理解するために分解し、コミットするために予測する。 小さなスライスは、リスクと見積もる必要の両方を減らします。
  • 外部の視点を取る。 内側の物語を信頼する前に、類似の過去の取り組みと比べます。
  • 継続的に再予測する。 一度行われて更新されない予測は、飾りです。
  • 答えが決定を変えるときにだけ見積もる。 さもなければ無駄です。

推奨事項

見積り、目標、コミットメントを分ける

この章全体で最も有用な動きは、何のコストもかかりません。三つの概念を区別しておくことです。見積りは、何かがどれだけかかるかについての誠実な予測で、その不確実性が付いています。目標は、展示会でのローンチや規制上の期限のように、達成したい事業の目的です。コミットメントは、守るつもりで他者に対して行う約束です。これらは三つの異なるものであり、それを一つに潰すことが、プロジェクトが自分に嘘をつき始める方法です。リーダーが「3か月から5か月くらい」と聞いて「3か月」と書き留め、営業チームが顧客に「12週間」と約束するとき、誰もリスクを受け入れると決めていないのに、見積りが静かにコミットメントになりました。

毎回、どれを出しているかを言ってください。日付を求められたら、範囲として表現された見積りで答え、それから事業にそれに対して目標を設定させ、何にコミットするかを意図して決めさせます。コミットメントは、見積りの不確実性を、外した場合のコストと量る、目を開いて行う選択であるべきです。この規律は、組織が決定をどう行って記録するか(1.5章)に直接つながります。コミットメントは決定であり、廊下でのうなずきではなく、決定の厳密さに値します。

見積りがなぜ、どちらの方向に間違うのかを理解する

ソフトウェアの見積りはランダムに間違うのではありません。予測可能で系統的な形で間違い、そのパターンを知ることで、補正できます。どんな取り組みも早い時期は、不確実性の円錐の内側にいます。開始時、見積りはどちらの方向にも容易に4倍ずれえて、築いて学ぶにつれてのみ範囲が狭まります。円錐の広い口で正確な数字にコミットすることは、まだ裏づけられない数字にコミットすることです。

その構造的な不確実性の上に、人間の偏りがあります。計画錯誤は、最良のケースを想像しながら、自分の計画の時間、コスト、リスクを過小評価する、私たちの確実な傾向です。私たちはうまく行く道を思い描き、割り込み、統合の驚き、病欠を忘れ、何もうまくいかなくならないことを前提にした数字を作ります。余裕を持たせることは通常の防御的な反応ですが、感覚で足された余裕は、最初の推測の上に積まれた二つ目の推測にすぎず、スケジュールがきつくなった瞬間に交渉で削られます。治療は意志の力ではなく、方法です。この仕事が内側からどう感じられるかではなく、類似の仕事が実際にかかったものに基づいて予測します。

分解と専門家の判断を使い、その限界を知る

主力の技術は、知る価値があり、境界を知る価値があります。分解は、大きな成果物を、推論できる小さな部分に分け、それから部分を積み上げます。人々は大きく曖昧なものより、小さくなじみのあるものをはるかによく見積もること、多くの独立した項目を合算すると一部の過大評価が一部の過小評価を打ち消すことから、役立ちます。その限界は、分解が箱の間の仕事、つまり統合、調整、列挙しようと思いつかなかったタスクを見逃すことです。専門家の判断と類推による見積り(「これは去年作った報告モジュールのようなもので、2か月かかった」)は、速く、しばしば驚くほど良いですが、見積もる人の楽観と死角を引き継ぎます。

数字を付けなければならないものには、楽観的、最も可能性の高い、悲観的な数字を求めて組み合わせる、三点見積りを好みます。しばしばPERTの加重平均(楽観に最も可能性の高いものの4倍と悲観を加え、6で割る)として。価値は正確な式にはありません。三点見積りは不確実性を声に出して述べさせ、偽の点ではなく範囲を生むことにあります。ストーリーポイントやTシャツサイズ(小、中、大、特大)のような相対的なサイズ化の方法は、項目を互いに比べることで、正確な時間を予測する罠を避けます。順序づけと大まかな容量にはうまく機能しますが、予測への入力として扱い、通貨としては扱わないでください。ポイントは時間ではなく、ベロシティにポイントをかけて日付を作ることは、相対的なサイズ化が避けるはずだったあらゆる問題を再導入します。

自分のフローのデータから確率的に予測する

すべてを変える転換がここにあります。仕事がどれだけかかるかを人々に推測させるのをやめ、チームが実際にどれだけ速く仕事を終えるかを測り始めます。デリバリーのパイプライン(11.2章)は、すでに必要なデータを生んでいます。スループット、つまりチームが毎週完了する項目の数を追跡していれば、希望ではなく過去から未来を予測できます。過去3か月、毎週6項目から11項目を閉じてきたチームは、高い確率で、残り40項目を終えるのにおよそ4週間から7週間かかります。その予測は証拠に基づき、新しいデータが届くにつれて毎週自ら更新されます。

厳密な版は、モンテカルロ法のシミュレーションを走らせます。過去の週ごとのスループットから何千回もサンプリングして、可能な終了日の分布を築き、それから答えを確率として読み取ります。「3月14日までに終える可能性が85%、2月28日までに50%」は、「3月1日までに終わる」よりはるかに有用で誠実な記述です。このアプローチは待ち行列理論(11.3章)に直接つながります。リードタイムは仕掛かりの仕事をスループットで割ったものに等しいので、仕事がどう動くかを統べる同じフロー指標が、それがいつ届くかも統べます。確率的な予測には履歴とある程度安定したプロセスが必要で、それこそが、仕事を小さく、フローを安定に保つチームに報いる理由です。それはまた、見積りの儀式の大半を静かに取り除きます。バッチがいつ着地するかを知るために、各項目をサイズ化する必要がなくなるからです。

大きなプログラムでは外部の視点を取る

大きく、長く、高価なプログラムでは、個々の見積りや、フローの予測さえも誤解させえます。新しいプログラムにはまだスループットの履歴がなく、その内側の物語こそ、計画錯誤が最も強く牙をむく所だからです。解毒剤は参照クラス予測です。類似の完了した取り組みの参照クラスを見つけ、それらが実際にどれだけ長く、いくらかかったかを見て、自分のボトムアップの計画を信頼する前に、自分のプログラムをその分布に位置づけます。自社の同等のプラットフォーム置き換えが、当初の見積りを平均60%超過したなら、その数字は、チームがたった今組み立てたきれいな計画よりも、あなたのプログラムについてのよりよい証拠です。外部の視点は気落ちさせるように感じられ、それがまさにその価値です。あらゆる新しい計画が抱える楽観に対抗するのです。ポートフォリオの資金と巨大プログラムの予算(10.1章)に使ってください。そこでは系統的な超過のコストが、数百万と信用で測られます。

より小さくスライスして見積りを減らし、遅延のコストで順序づける

時に、見積りの正しい量はほとんどゼロです。#NoEstimatesの議論は、その合理的な核心で、仕事を各スライスが1、2日かかる程度に小さくスライスすれば、単一のスライスの見積りが重要でなくなることを観察します。単にスループットを数え、その数から予測します。スライスが均一で小さいとき、手の込んだサイズ化は無駄です。予測が必要としない精度を生むために労力を消費します。これは先を考えることへの反論ではありません。個々のスライスを小さくすることで、個々の予測を安くするための議論です。

それでも決定を要するのは順序です。すべてを一度にはできないとき、遅延のコスト、つまりある仕事が遅れる時間の単位ごとに失う価値で順序づけます。来四半期の大きな契約を解き放つ機能は高い遅延のコストを持ち、たとえ容易でも、遅延のコストのない、あればよいものより先に進むべきです。遅延のコストを労力と量ること(リーン思考の「加重最短ジョブ優先」の経験則)は、感覚で並べた積み残しよりはるかに確実に、次に何をするかを教えます。これが会話全体を捉え直すことに注意してください。偽の精度を招く「すべてがいつ終わるか」の代わりに、実際に答えられる「次に終えるべき最も価値あるものは何か」を尋ねるのです。

トレードオフ: 長所と短所

アプローチ長所短所
単一の日付の見積り単純。利害関係者が求めるもの正確に間違っている。リスクを隠す。偶然のコミットメントになる
三点/PERT見積り不確実性を公にさらす。安い依然として推測。式が偽の厳密さを含意する
ストーリーポイント/Tシャツサイズ速い。順序づけと大まかな容量に良い時間ではない。ベロシティの算術が単一の日付を忍び込ませる
確率的なフロー予測証拠に基づく。自己更新。誠実な範囲履歴と安定したフローが必要。「確実」に見えにくい
参照クラス予測大きなプログラムの楽観を補正比較可能な過去の取り組みが必要。聞くと気落ちする
#NoEstimates(小さなスライス)無駄を取り除く。数えて予測規律あるスライスが必要。数字を望む資金提供者には不安

中心的な緊張は、人々が望む確実性対仕事が要求する誠実さです。資金提供者、経営幹部、契約、立法者は、単一の日付が予算を組み、約束し、擁護するのが容易なので、確固たる単一の日付を求めます。ソフトウェアがそれを支えることはめったにありません。確実性をでっち上げることでも、答えを拒むことでもなく、確率の通貨で答えることで解決します。確信の水準を伴う範囲を、証拠が届くにつれて再予測する。小さなスライスと組み合わせ、早期の本物の納品が、遠い想像上の納品に取って代わって人々が信頼するものになるようにします。デモされるインクリメントは、どんな見積りよりも価値があります。

チームで議論すべき問い

  1. 誰かに日付を求められたとき、見積り、目標、コミットメントのどれを出していますか。そして部屋の全員がどれかを知っていますか。 これは、最も少ない労力で最も多くの損害を防ぐ問いです。ほとんどの組織では、これら三つは、数字がチームの口を離れた瞬間に一つの数字に潰れ、予測が約束になったリスクを受け入れると決めた人は誰もいません。本物の例を持ち込んでください。最後のコミットされた期限を取り、それが最初に口にされた会話まで遡り、それが、スーツを着た希望的な推測以外であったことがあるかを尋ねます。答えは言葉遣いを恒久的に変えるべきです。見積りは範囲として出て行き、目標は事業の願いとして名指しされ、コミットメントは不確実性を量って決定(1.5章)として記録して意図して行われる。コミットメントが意識的に受け入れられた所をチームが指せないなら、偶然に約束をしています。

  2. 新しい見積りではなく測定されたスループットから次のリリースを予測できますか。そして何があなたを止めていますか。 ほとんどのチームは、仕事を追跡するツールの中に使われずに眠っているデータで、「いつ終わるか」に経験的に答えられます。過去四半期にチームが毎週何項目を完了したかを知っていれば、終了日の分布をシミュレートして、願いではなく確率を示せます。実際のスループットの履歴と残りの項目数を持ち込み、フローベースの予測を、チームが感覚で見積もった日付と比較してください。その隔たりは通常、示唆に富んでいます。障害が、項目の大きさが大きく異なる、あるいはフローが不規則であることなら、それ自体が発見です。不安定なフローは、どのみち直す価値のあるデリバリーの問題だからです(11.2章、11.3章)。見積りから測定への移行は、ツールの変更というより、自分の履歴を自分の楽観より信頼するという決定であることが多いです。

  3. 最大の現在のプログラムについて、外部の視点を取りましたか。それとも内側の計画だけを築きましたか。 大きなプログラムは、楽観が高くつく超過へと複合する所で、確信に満ちたボトムアップの計画が最も魅力的で、最も信頼できない所です。規律は、組織の内外の類似の完了した取り組みの参照クラスを名指しし、実際にいくらかかってどれだけかかったかを見つけ、自分の数字を擁護する前に、自分のプログラムをその分布に誠実に位置づけることです。データを持ち込んでください。ここの比較可能な取り組みが、最初の見積りをどう超過したか、そして現在の計画は、そのすべてに勝つと静かに想定していないか。想定しているなら、例外的であることに賭けていて、それは基準率が確実に負ける賭けです。外部の視点は、予測を魅力的でなくしますが、あなたが示した数字を覚えている資金提供者と監査人に対して、はるかに擁護しやすくします(10.1章)。

  4. 資金提供者、契約、立法者が一つの固定の日付を求めるとき、嘘もつかず拒否もせずに、どう答えますか。 ここが圧力が最も激しく、誠実なチームが最も頻繁に折れる所です。「9月までに70%」は、競合の自信ある「9月」の隣では回りくどく聞こえるからです。大きな組織では賭け金が倍になります。一つの固定の日付が、予算、依存するプログラム、公的な約束へと伝播するので、安心のために選ばれた数字は、遅れた瞬間に系統的な負債になります。実際に使う予定の言葉遣い、確信の水準を伴う範囲の実例、確固としてコミットできる小さな早期のインクリメントと、後のスコープを約束ではなく資金のある範囲として残すことを持ち込んでください。相反する考慮は本物です。いくつかの期限(規制上の切り替え、展示会でのローンチ)は本当に固定されており、そこでの正しい動きは、工数が確実だとふりをするのではなく、日付を固定してスコープを柔軟にすることです。企業と政府の設定では、これを契約の形に結びつけてください。モジュール式でインクリメントに資金が出る合意は、価値ある中核に誠実にコミットできるようにしますが、遠いマイルストーンに固定された単一の固定価格で固定スコープの契約は、超過と見出しを生む、まさにその偽の確実性を強います。

  5. チームは次に何を築くかをどう決め、遅延のコストで明示的に順序づけたら、順番は変わりますか。 ほとんどの積み残しは、勘、最も声の大きい人、大まかな労力の混合で並べられ、価値あるものではなく容易な勝利を静かに最適化します。遅延のコスト、つまり仕事が遅れる時間の単位ごとに失う価値は、問いを「すべてがいつ終わるか」から、証拠で実際に答えられる「次に終えるべき最も価値あるものは何か」に捉え直します。本物の積み残しの項目を三、四つ、それぞれが解き放つ価値と、その価値がいつ失効するかの誠実な見積もりとともに持ち込み、それから労力に対する毎週失われる価値で順位づけ、その順序を現在の計画と比べてください。並べ替えは通常、驚きで、反論しにくいものです。相反する考慮は、遅延のコスト自体が見積りであり、自分の項目を先にしたい人にゲーム化されうることなので、誰が数字を所有し、どう異議が唱えられるかを名指ししてください。企業のポートフォリオや政府のプログラムでは、この規律が、それぞれが自分の取り組みが先であるべきと信じる利害関係者に対して、順序づけの決定を擁護できるようにします。順序が政治ではなく、述べられた価値に基づくからです。

  6. 誰が再予測し、どれだけの頻度で、予測が動いたとき行動する説明責任を誰が負いますか。 キックオフで一度行われて見直されない予測は飾りで、最も高価な遅れは、生きた予測なら期限がそれを否定できなくなる何か月も前に示していたものです。大きなチームでは、失敗はデータの不在であることはまれで、通常は常設の周期と名指しされた所有者の不在です。スループットはずれ、終了日の分布は右に移り、気づくことが仕事の誰も見ていない。実際の再予測のリズム(あるいはないという事実)、予測が最後に決定を変えたとき、現在のコミットメントが設定されてから見てきたずれを持ち込んでください。相反する考慮は予測疲れで、あまりに騒がしい再予測は空回りを招いて信頼を侵食するので、すべての揺れに反応するのではなく、適切な間隔と、エスカレーションを引き起こす閾値に合意してください。企業と政府の文脈では、これを監督に結びつけてください。ガバナンスの機関に固定の予定で更新された確率の範囲を報告し、遅れが、マイルストーンで明らかになる驚きではなく、リーダーが行動できる管理された再予測として表面化するようにします。

セクター別の視点

スタートアップ。 見積りの儀式はほぼ完全に飛ばしてください。仕事を1、2日の部分にスライスし、毎週終えたものを数え、創業者と投資家に、英雄的な単一の日付ではなく狭まる範囲を伝えます。履歴は短くプロセスは不安定なので、不確実性の円錐を言い訳ではなく誠実な説明として頼り、絵が鮮明になるにつれて毎週金曜日に再予測します。

小規模事業者。 見積りの専門家はおらず、サイズ化の会議への意欲もないので、すでに動かしているツールに仕事をさせてください。ほとんどのタスクトラッカーはスループットを無料で公開しており、そこからの軽量な予測は、推測された期限に勝ります。人員を置けない重いプランニングソフトウェアを買いたい衝動に抵抗してください。毎週の完了した項目の単純な数と平易な範囲で、顧客に実際に行うコミットメントには十分に「いつ終わるか」に答えられます。

大企業。 問題は、年次の資本のサイクル(10.1章)に対してポートフォリオに資金を出す多くのチームにわたる一貫性です。単一の日付ではなく確信の水準を伴う範囲に標準化し、大きなプログラムには参照クラスの比較を要求し、推測が四半期以内にスループットベースの予測に取って代わられるようフロー指標を立ち上げます。見積り、目標、コミットメントの明確な定義を伴う共有の実践として見積りを統治し、ある部門で作られた数字が、取締役会に届いたときも同じ意味を持つようにします。

政府。 調達規則と公的な説明責任があらゆるものを形づくります。逃した公的な日付は見出しと監査の指摘になるので、遠いマイルストーンに固定された単一の固定価格で固定スコープのコミットメントより、モジュール式でインクリメントに資金が出る契約を好みます。監督機関に、確率的な予測と参照クラスの証拠を平易な言葉で報告し、確信の水準を誠実に公表し、契約者の楽観的な計画への署名ではなく、デモされる動くインクリメントが、公衆と監査人が信頼する証拠になるようにします。

事例

スタートアップ。 シリーズAのデモに備える9人のスタートアップは、重要な統合が準備できるかを知る必要があります。創業者が投資家に日付を約束するのに任せる代わりに、リードは見積りを範囲として示し、その背後の不確実性の円錐を説明します。チームは毎週5項目から9項目の積み残しを閉じてきたので、残りの仕事に素早くモンテカルロ予測を走らせ、「四半期の第3週までに80%の可能性、1週間早い可能性は五分五分」と報告します。統合を2日の部分にスライスして、単一の見積りがあまり重要にならないようにし、投資家に見える道を築くために遅延のコストで順序づけ、毎週金曜日に再予測します。投資家は、遅れたであろう自信ある数字ではなく、誠実で狭まる予測を得ます。

大企業。 受注管理プラットフォームを置き換える小売業者は、数字を要求する年次の資本サイクルを通じてプログラムに資金を出さなければなりません。プログラムオフィスは、きれいなボトムアップの計画を守りたい衝動に抵抗し、代わりに三つの比較可能なプラットフォームの置き換え(二つは社内、一つは公に文書化されたもの)から参照クラスを築きます。それらは当初の見積りを50%から80%超過していました。外部の視点の数字に対して資金を出し、スケジュールを固定のゴーライブではなく確率の範囲として表現し、最初のデリバリーチームからフロー指標を立ち上げるので、四半期以内に推測が毎月更新されるスループットベースの予測に取って代わられます。あるストリームが熱くなると、再予測がそれを早期に示し、リーダーシップは期限になってから遅れを発見するのではなく、再均衡させます。

政府。 給付システムを近代化する機関は、歳出予算と公的な精査のもとで運営され、逃した公的な日付は見出しです。一つの遠いマイルストーンに固定された単一の固定価格で固定スコープの契約の代わりに、モジュール式のインクリメントを調達し、早期に届けられる価値ある中核に公にコミットし、後のスコープを約束ではなく資金のある範囲として表現します。プログラムのリーダーは、確率的な予測と参照クラスの比較を使って監督機関に報告し、確信の水準を平易な言葉で説明するので、「9月までに70%」はまさにその通りに理解されます。デモされる動くインクリメントが、公衆が信頼する証拠になり、それは契約者が署名できるどんな見積りよりも頑丈です。

ビジネスケース: 動機、ROI、TCO

誠実な見積りと予測の見返りは、避けられた大惨事に支配されます。大きなソフトウェアの取り組みは、元の固定された計画を達成するよりはるかに頻繁に超過あるいは失敗し、損失は複合します。サンクコスト、遅れた納品からの失われた価値、回復のための緊急支出、破られた公的なコミットメントに続く信頼の侵食。ここでの実践(見積りをコミットメントから分ける、本物のスループットから予測する、大きなプログラムで外部の視点を取る)は、プログラムをその失敗の曲線から外すものです。より正確な水晶玉を買っているのではありません。自分がどこにいるかについての、より早く、より真実な情報を買っているのであり、それによって、修正がまだ安いうちに修正できます。

総所有コストでは、見積りの儀式から測定された予測への移行は、通常、コストを上げるのではなく下げます。手の込んだ事前の見積りは生産に高価で、仕事が始まった瞬間に劣化しますが、スループットベースの予測は、デリバリーのパイプラインがデータを出せば、ほぼ無料です。両極端がお金がかかります。過大な見積り(誰も使わない精度を生む終わりのないサイズ化の会議)と、過小な予測(盲目的にコミットして、後で超過に払う)。リーダーシップに論拠を示すには、最後の大きな超過の全コストを、スループットの追跡と範囲を示すことのほぼゼロのコストの隣に置き、外部の視点の予測が、最初から資金を出せる期待をどう設定したかを示してください。

アンチパターンと落とし穴

  • 単一の日付のコミットメント: 範囲が一つの数字に潰され、証拠を超えて守られること。
  • 見積りの洗浄: 希望的な推測が連鎖を上り、契約上の約束に固まること。
  • スケジュールエンジンとしてのベロシティ: ストーリーポイントにベロシティをかけて、正確な日付を作り出すこと。
  • 感覚による余裕: 最初の推測の上に積まれた二つ目の推測が、圧力のもとで交渉で削られること。
  • 内側の視点だけ: 新しいボトムアップの計画を信頼し、類似のプログラムが実際にかかったものを無視すること。
  • すべてを見積もる: 個々の見積りが何の決定も変えない、小さく均一なスライスをサイズ化すること。
  • 凍結された予測: キックオフで一度行われ、現実が届いても更新されない予測。
  • 精度の劇場: 不確実性の円錐の広い口で、時間を小数点以下2桁まで示すこと。

成熟度モデル

  • レベル1、開始: 見積りは勘で作られ約束として扱われる単一の日付です。見積り、目標、コミットメントの区別がなく、予測は反応的でその場しのぎで、超過は全員を驚かせてチームのせいにされます。
  • レベル2、発展: 何らかの構造化された見積り(分解、ストーリーポイント、三点の数字)が存在しますが、実践はチームごとに異なります。見積りは依然としてほとんどが単一の数字で、ベロシティが日付の投影に使われ、予測はキックオフで一度行われてめったに見直されません。
  • レベル3、標準化: 文書化された標準が組織全体で徹底されます。見積りは述べられた不確実性を伴う範囲として表現され、見積り、目標、コミットメントは定義によって区別され、チームはスループットを追跡して決まった周期で再予測し、大きなプログラムは参照クラスの比較を使うことが求められます。
  • レベル4、管理: 実践がデータで測定され制御されます。予測の精度が実際の結果に対して追跡され、較正がチェックされるので、「80%でいつまでに」という日付が実際に10回中8回着地するかを言えます。スループットとサイクルタイムのベースラインが保たれ、遅延のコストが定量化され、予測のずれが閾値に対して監視されてエスカレーションを引き起こし、コミットメントは楽観ではなく証拠に対して行われます。
  • レベル5、オーケストレーション: フローのデータからの確率的な予測は継続的で、較正の履歴が誠実さを証明したので信頼されています。コミットメントは、確信をコストと量る意図した決定で、仕事は見積りが最小限で済むほど小さくスライスされ、遅延のコストが順序を駆動し、見積りはポートフォリオの資金とリスクの計画と統合され、組織は予測が動くにつれて日常的に範囲を見直して再均衡させ、元の数字を守るのではなく、計画を証拠に適応させます。

議論のためのアイデア

  1. すべての見積りが確信の水準を伴う範囲としてチームを出て、単一の日付が禁じられたら、組織の何が変わりますか。
  2. すでに小さく均一で、数えて予測できる仕事の見積りに、どこで労力を使っていますか。
  3. 過去二四半期のスループットをモンテカルロシミュレーションに入れたら、予測は実際にコミットした日付と一致しますか。
  4. 最大のプログラムにとって、誠実な参照クラスは何で、基準率は現在の計画をどれだけ反証しますか。
  5. 今日、チームは順序をどう決めていて、遅延のコストで明示的に並べたら、次に築くものは変わりますか。
  6. 組織でコミットメントが受け入れられるとき、不確実性は決定の一部として記録されますか。それとも日付が書かれた瞬間に消えますか。

要点

  • 見積り、目標、コミットメントを区別しておきます。それらを潰すことが、プロジェクトが自分に嘘をつき始める方法です。
  • 見積りは既知の方向に系統的に間違います。不確実性の円錐が早期の仕事を広げ、計画錯誤が楽観を既定にします。
  • 新しい推測より、測定されたスループットからの確率的な予測を好みます。範囲と確信の水準を示し、継続的に再予測します。
  • 楽観が最も高くつく大きなプログラムでは、参照クラス予測で外部の視点を取ります(10.1章)。
  • 個々の見積りが重要でなくなるよう小さくスライスし、勘ではなく遅延のコストで順序づけます。
  • 決定を変えるときにだけ見積もります。さもなければ無駄です。10.6章(プロジェクトマネジメント)、11.2章(デリバリー)、11.3章(待ち行列理論)、1.5章(意思決定とガバナンス)を参照してください。

参考文献とさらなる読み物

  • Steve McConnell, Software Estimation: Demystifying the Black Art.
  • Daniel Vacanti, Actionable Agile Metrics for Predictability and When Will It Be Done? (probabilistic forecasting from flow data).
  • Troy Magennis, Forecasting and Simulating Software Development Projects (Monte Carlo methods).
  • Bent Flyvbjerg and Dan Gardner, How Big Things Get Done (reference class forecasting and megaprojects).
  • Daniel Kahneman, Thinking, Fast and Slow (the planning fallacy and the outside view).
  • Donald Reinertsen, The Principles of Product Development Flow (cost of delay and queue economics).
  • Vasco Duarte, NoEstimates: How to Measure Project Progress Without Estimating.
  • Frederick Brooks, The Mythical Man-Month (why software schedules go wrong).
  • Todd Little, “Schedule Estimation and Uncertainty Surrounding the Cone of Uncertainty” (IEEE Software, 2006).