/note/tech

最も良い見積もり手法は見積もりをしないことだ

要約:

■ 1. 背景と前提

  • システム業界においてSIerの存在感が低下し自社プロダクト開発に携わるエンジニアの割合が増加している
  • 自社開発であっても工数見積もりの問題は依然として多くのエンジニアを悩ませている
  • 本稿は自社プロダクトをアジャイルで開発するシチュエーションを前提とする

■ 2. 見積もりをなくすという主張

  • 最善の見積もり手法は見積もりをしないことである
  • 自社プロダクト開発では作業粒度を小さくできるため「できた時が完成」方式が有効である
  • 見積もり自体が困難である以上見積もりをなくすことと比較する価値がある

■ 3. 見積もりをなくすための手法

  • 作業単位をなるべく細かくする
  • 管理者がある程度の作業量とリスクを判断できるようにする
  • 結果で判断する
  • チーム全体のスループットを定量的に測る
  • できないものはできないと認め諦める

■ 4. 見積もりをなくすことによるメリット

  • 見積もりにかかる時間がなくなる
  • 余計なバッファを積まなくて良くなる
  • 積んだバッファを無駄に消費しなくて良くなる
  • リスクの顕在化が早くなる
  • 結果に注目し正しい評価ができるようになる
  • 全体的に開発がスピードアップしスループットが向上する

■ 5. 管理者の役割

  • 管理者の仕事は経営陣や上司からの「見積もりしろ」という圧力をはねつけることである
  • チームのパフォーマンスを最大化するために必要な措置をとることがマネージャーの責務である
  • 現代のビジネスではスループットと柔軟性をもって組織の価値を判断することが求められる

■ 6. 締切が絶対である場合の対応

  • 締切がマストなタスクには締切の設定とともに内容の取捨選択を行う
  • 予算・品質・納期の三要素を同時に全て満たすことはできない
  • 納期が絶対である場合は予算と品質で調整するしかない
  • 締切から逆算する
  • リスク評価を最速で行う
  • バックアッププランを可能な限り用意する
  • 人員配置や補給など最善を尽くす