ついに登場! 究極の見積もり技法(その2:実践編):山浦恒央の“くみこみ”な話(39)(2/2 ページ)
[山浦恒央 東海大学 大学院 組込み技術研究科 准教授(工学博士),@IT MONOist]
生産性指標の算出が、全ての基礎になります。なお、生産性指標の数値が「1」違うだけで、工数、開発期間、開発規模の計算に大きな誤差が出ますので、きちんと算出する必要があります。生産性指標は、過去の開発データから算出しますが、過去のデータの蓄積がない場合は平均値として「13」を使うとよいでしょう。
算出手順は、以下の通りです(Excelファイルの「計算式1」を使用)。
- 過去のソフトウェア開発データから、開発時間(単位:月)、工数(単位:人月)、プログラムサイズ(LOC)を求め、Excelファイルの「計算式1」を適用し、生産性指標を求める
- 生産性指標は、以下の要素の影響を受けるので、類似データで算出することが望ましい
・プロジェクトの構成人員と人数
・開発対象ソフトウェアの分野
- 求めた生産性指標をCMM(Capability Maturity Model)のレベルと比較し(CMMと生産性指標の関係は前回を参照)、妥当性をチェックする
算出手順は、以下の通りです(Excelファイルの「計算式2」を使用)。
- 上記の「ステップ1:プログラムサイズ、工数、開発時間から生産性指標を計算」の手順に従って、過去のソフトウェア開発データあるいはCMMのレベルから、生産性指標を求める。過去のデータがない場合は、平均値の「13」を使う
- βとして、取りあえず、適当な値(例えば、0.28)を選ぶ
- コストを人月単価で割り、投入可能な工数(単位:人月)を求める。例えば、開発コストが3200万円で人員単価が80万円/月だとすると、投入可能な工数は40人月になる
- Excelファイルの「計算式2」を使用し、プログラムサイズ(LOC)を計算する
- βの値とLOCの関係が以下の表に適合すれば終了。範囲外ならばβを調整し、4.へ戻る
|
|
|
|
|
|
|
プログラムサイズ(KLOC) |
5〜15 |
20 |
30 |
40 |
50 |
70〜 |
β |
0.16 |
0.18 |
0.28 |
0.34 |
0.37 |
0.39 |
表1 βの値とプログラムサイズの関係 |
算出手順は、以下の通りです(Excelファイルの「計算式3」を使用)。
- 上記の「ステップ1:プログラムサイズ、工数、開発時間から生産性指標を計算」の手順に従って、過去のソフトウェア開発データあるいはCMMのレベルから、生産性指標を求める。過去のデータがない場合は、平均値の「13」を使う
- ソフトウェアの開発規模(プログラムサイズ(LOC))を見積もる。規模見積もりは、FP試算法プログラムを適用するとよい
- プログラムサイズ(LOC)から、該当するβの値を選ぶ(表1)
- Excelファイルの「計算式3」を使用し、工数(単位:人月)を計算する
- 求めた工数に人月単価を乗じれば開発コストを算出できる。例えば、工数が40人月で人員単価が80万円/月だとすると、開発コストは3200万円になる
算出手順は、以下の通りです(Excelファイルの「計算式4」を使用)。
- 上記の「ステップ1:プログラムサイズ、工数、開発時間から生産性指標を計算」の手順に従って、過去のソフトウェア開発データあるいはCMMのレベルから、生産性指標を求める。過去のデータがない場合は、平均値の「13」を使う
- ソフトウェアの開発規模(プログラムサイズ(LOC))を見積もる。規模見積もりは、FP試算法プログラムを適用するとよい
- 算出したプログラムサイズ(LOC)から、該当するβの値を選ぶ(表1)
- 開発コストを人月単価で割り、投入可能な工数(単位:人月)を求める。例えば、開発コストが3200万円で人員単価が80万円/月だとすると、投入可能な工数は40人月になる
- Excelファイルの「計算式4」を使用し、開発時間(単位:月)を計算する
今回はExcelを用い、SLIMのソフトウェア開発関係式を適用した、工数(コスト)、開発期間(月)、機能総量(規模)、(プロセス)生産性の具体的な算出法を解説しました。
SLIMのトレードマークともいうべき考え方が「最短開発期間」です。これは、「開発技術者を何万人投入しても、これより早くは開発できない」という“時間(月)”のことです。「18カ月かかるところを12カ月でやれ!」といわれて、「それは無理です」と答えると、必ず「何の工夫もしないでできない何て言うな!!」と上層部から叱責を受けます。その場合の究極の反撃法が、このSLIMで算出する最短開発期間です。「最短開発期間を計算したところ、14カ月となりました。ですので、12カ月で開発することは不可能です」と根拠のある反撃ができます。次回は、この“最短開発期間の算出方法”について解説します。お楽しみに! (次回に続く)
【 筆者紹介 】
山浦 恒央(やまうら つねお)
東海大学 大学院 組込み技術研究科 助教授(工学博士)
1977年、日立ソフトウェアエンジニアリングに入社、2006年より、東海大学情報理工学部ソフトウェア開発工学科助教授、2007年より、同大学大学院組込み技術研究科助教授、現在に至る。
主な著書・訳書は、「Advances in Computers」 (Academic Press社、共著)、「ピープルウエア 第2版」「ソフトウェアテスト技法」「実践的プログラムテスト入門」「デスマーチ 第2版」「ソフトウエア開発プロフェッショナル」(以上、日経BP社、共訳)、「ソフトウエア開発 55の真実と10のウソ」「初めて学ぶソフトウエアメトリクス」(以上、日経BP社、翻訳)。
Copyright © ITmedia, Inc. All Rights Reserved.