工数見積もりのコツ

適当ではなく、精度が高い見積もりを行うには、以下がポイントです。

  • 作業を細分化して個々に数字を出す。
  • 過去の実績をフィードバックする。
  • バッファを加算する。
  • 上長のクロスチェックを受ける。

作業の細分化

趣味でソフトウェア開発をしている場合は、ただひたすらにプログラミングするだけであることが多く、概ね以下の流れになります。

  1. バグの原因を調べる
  2. バグのコードを修正する
  3. プログラムを動かして修正確認する

これが仕事となると、作業工程が大きく変わってきます。会社やプロジェクトにより文化が異なりますが、一般的には以下の流れになります。

  1. バグの原因を調べる。
  2. 原因が根本原因6であるかを判断する。根本原因でなければ1へ戻る。
  3. なぜ、そのバグが摘出されたのかを見解を作る。
  4. バグの修正方法を検討する。もっとも影響範囲が少なくなるように。
  5. 設計バグであれば設計書を修正する。
  6. ソースコードを修正する。
  7. エビデンス7のクロスレビューを行う。レビューが完了するまで5と6を繰り返す。
  8. 修正箇所に関して、プログラムの単体テストを行う。
  9. 修正箇所に関して、プログラムの機能テストを行う。
  10. 修正箇所に関して、レグレッションテスト8を行う。

以上のように、単純にソースコードを直せばよいとはならないことを理解する必要があります。一口に「バグ修正」と言っても、複数の項目に細分化されます。項目ごとに工数を見積もります。

項目工数(人H)
原因調査8
修正検討3
設計書修正2
コード修正2
テスト項目作成2
レビュー対応2
単体テスト3
機能テスト5
退行テスト3
合計30

バッファの加算

見積もった工数にかならずバッファを足し込みます。バッファというのは余剰工数のことです。見積もりなんて、所詮は予測値でしかないため、実際に作業を進めてみると、事前に予想していなかった作業が出現することがありますし、思いのほか時間がかかる作業項目があるかもしれません。

そういったトラブルに対応するために、工数に余裕を持たせておくのです。

見積もった工数を1.5倍しておくとよいです。この「1.5倍」という数字に意味はなく、単なる筆者の経験則です。


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です