これまでは、規模見積の話を中心に紹介してきましたが、規模から工数を見積もる際の話をしたいと思います。
<<工数と規模の関係>>
規模と工数の関係ですが以下のような関係になります。
工数=規模*生産性*単価
家を建てる場合は、基本的には建築面積がります。
ある面積の家を建てるときに、工法によって必要となる時間(手間)が変わってきます。
例えば、100㎡の家を建てるといっても、プレハブの家を建てるのと、設計士さんに設計を依頼してオーダーメイドで建てるのでは、当然必要となる時間(手間)が異なるわけです。
また、時間(手間)が同じであっても、大工さんの工賃が異なれば、必要となる金額も変わってくるわけです。
例えば、家を建てるのに2ヶ月必要だとしても、工賃が50万円/月の大工さんと工賃が100万円/月の大工さんとでは、金額に2倍の差が出てくるわけです。
システムについても同様で、システム規模が仮に同じだとしても、設計手法や担当者のスキルによって、必要となる時間(手間)が変わってきます。
また、同じ時間(手間)であっても、担当者の単価(人月)によって金額が異なってくるわけです。
そこで、重要となるのは、生産性の数値と単価です。
見積を行う側からは、生産性の数値を方法論や開発言語ごとに集計しておく必要があります。
また、単価についてもスキルレベル等から単価を設定しておく必要があります。
ユーザ側においても、過去の実績を分析し、生産性や単価の基礎数値を把握しておくことが、見積金額の評価において重要となります。
また、工数の見積については、COCOMOというモデルがあります。
FP法で見積を行うのは、あきまで規模ですので、生産性を考慮せずに工数や期間を見積もるという場合は、このCOCOMO/COCOMOⅡというモデルを使用します。
<<COCOMO>>
1981年にBoehm(ベーム)により提唱された工数見積のモデルです。
COCOMOには、以下の基本モデル、中間モデル、詳細モデルの3つのモデルが存在します。
開発作業の中間モデルでの工数見積は以下の式によって計算します。
見積工数(人月)=3.0×開発規模(LOC)1.12×調整係数
開発期間(月)=2.5×(開発工数)0.35
以下の調整要因を評価し、調整係数を算出します。
<<COCOMOⅡ>>
COCOMOモデルは、現状の開発環境に適合していないため、1997年にBoehm(ベーム)や南カリフォルニア大学の学生たちによってCOCOMOⅡが提唱されました。
COCOMOⅡでは、アプリケーション組み立てモデル、初期設計モデル、ポストアーキテクチャーモデルの3つのモデルが存在します。
初期設計モデルでは、次の式により計算します。
PMadj=名目工数×コスト係数=A×(サイズ)B×コスト係数
A:開発規模が開発工数に与える影響=2.45
サイズ:開発規模をKLOCで表す。(FPからは言語ごとの変換係数により逆算)B:開発規模が生産性に及ぼす影響で以下の調整要因を1(極めて低い)~7(極めて高い)の影響度を評価する。
以下の調整要因を評価し、調整係数を算出します。
以上、COCOMO/COCOMOⅡについての紹介を行ってきましたが、ここで注意して欲しいのは、このモデルを利用する上でも規模の数値が前提となっているということです。(引数として与える必要があります。)
既存システムが存在する場合は、LOC(ステップ数)を利用するか、LOCからFPを逆算して計算することが可能ですが、新規システムの場合はこれまで紹介してきたような方法で規模の見積を行う必要があるということです。
※コメント投稿者のブログIDはブログ作成者のみに通知されます