NESMA試算法
NESMA(Netherlands Software Metrics Association)が開発したFPカウント手法の1つ。
- NESMA概算法やIFPUG法と比べて、大雑把だけど手軽な見積もり手法。
- データファンクションとタイプを決定するだけで自動的にFPを算出できる。
- 開発初期段階で素早くシステム規模を見積もるために使用できる。
使用例
以下のようなユーザ要求について考えてみる。
顧客データと、製品データを維持管理し、供給者データを参照することを要求している。
手順は至ってシンプル。
- データファンクションを洗い出す
- 各データファンクションのタイプ( ILF or EIF )を決定する
- ILFなら35FP、EIFなら15FPとして計算する
- 合計してシステム全体のFPを算出する
1. データファンクションを洗い出す
データファンクションとは、ユーザが認識できるデータのまとまり(定義) のこと。
- 設計でいうところの、エンティティやデータストア
- 実装でいうところの、テーブルやファイル
今回でいうと、顧客データ・製品データ・供給者データの3つが該当する。
2. 各データファンクションのタイプ( ILF or EIF )を決定する
- ILF : Internal Logical File
- 対象システムで作成・更新・参照・削除を行うもの
- EIF : External Interface File
- 他のシステムによって提供され、対象アプリケーションは参照だけするもの
今回のケースだと、顧客データ・製品データはILF、供給者データはEIFになる。
3. ILFなら35FP、EIFなら15FPとして計算する
顧客データ・製品データはILFなので35FP
供給者データはEIFなので15FP
4. 合計してシステム全体のFPを算出する
データファンクション | タイプ | FP値 |
---|---|---|
顧客データ | ILF | 35 |
製品データ | ILF | 35 |
供給者データ | EIF | 15 |
合計 | 85 |
今回のシステムの規模は、85FPという結果になった。
工数換算
85 (FP) ÷ 11.15 (FP/人月) ≒ 7.6 (人月)
FP/人月について
FPを工数に換算するためには、「1人月(人日・人時)あたりのFP」を事前に把握しておく必要がある。
基本的に過去プロジェクトの実績で算出するが、手元にデータがない場合はソフトウェア開発データ白書などが参考になる。
今回使用した 11.15 FP/人月 という値は、上記白書から中央値(新規開発/400FP未満)を引用している。