ソフトウェアPJの工数に対して工期が3乗根に比例する経験則の理由
ソフトウェアPJの工数に対して工期が3乗根に比例する経験則の理由について、参考になるツイートを見つけたのでメモ。
PM(プロジェクトマネージャー)になったら絶対に読むべきおすすめの本6選(転載) | Books&Apps
「ソフトウェア見積り | スティーブ マコネル」では、統計に基づくスケジュールの基本公式:
スケジュール(月)=3.0×人月(^1/3)
が載っていて、よく知られている。
でも、なぜスケジュールは工数の3乗根になるのか、という理由が分かってなかった。
僕の理解では、こんなイメージ。
一般的なソフトウェアPJの要員計画(リソースヒストグラム)x日数のグラフを書くと、放物線(y=ax^2)になる。
工数は、要員計画の積分値だから、3次間数になる。
工数=日数^3
より、
スケジュール(日数、つまり工期)=工数^(1/3)
となる。
このロジックで気になる点は、ソフトウェアPJの要員計画(リソースヒストグラム)が放物線になるのか?
その前提条件は正しいのか?
一般的に、要件定義や設計フェーズは少数精鋭のSEが担当し、開発・テスト工程で大量のプログラマを雇って、最後のリリース直前にPJメンバーを一気に減らす。
保守フェーズでは、たくさんのメンバーは不要なので、開発経験があり優秀なプログラマとSEのみの少人数チームになる。
だから、経験から考えると、要員計画は定数でもないし1次関数でもない。
よって、グラフは、1次関数の次の2次関数という放物線になるだろう、という推測は直観的には正しいと思う。
ただし、実際の要員計画は離散的だし、左右対称のグラフでもないから、あくまでも目安として使うだけだろう。
| 固定リンク
「プロジェクトマネジメント」カテゴリの記事
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart2~プロセスのレイヤと達成目標のレイヤが異なる(2023.02.18)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart1~CSFはWBSみたいなものと捉える(2023.02.14)
- PM理論では課業志向の方が関係志向よりも生産性が高いことを主張しているのではないか(2023.01.22)
- 現代日本人の弱点はリーダーシップ不足と生産性が著しく低いこと、そしてリスク許容度が著しく低いことだ(2022.12.23)
- プロセス設計はどの範囲を指すのか?~プロマネの仕事はテーラリングにある(2022.06.19)
「ソフトウェア工学」カテゴリの記事
- 「ソフトウェアアーキテクチャ・ハードパーツ」の情報リンク~マイクロサービスの設計技法の課題は何なのか(2023.11.12)
- パッケージ原則とクラス原則の違いは何なのか(2023.10.14)
- パッケージ設計の原則の意義は変化しているのか(2023.09.30)
- QAエンジニアの役割は開発チームのガードレールみたいなものという考え方(2023.08.21)
- テストアーキテクチャ設計モデルとJSTQB概念モデルの比較(2023.07.02)
コメント