FP法によるソフトウェア規模の計測(計測手順・工数算定・データ活用)
F-3 見積り・工数計画 > F. 実行計画(プロジェクト) 元資料: ◆FP法によるソフトウェア規模の計測について【第2編】(14枚)
目的・概要
◆FP法によるソフトウェア規模の計測について
- #メトリクス・データ活用
考え方・観点
見積りの概要とFP計測
- 機能
- 品質
- 技術
- その他
- (非機能)
- 成果物
- 作業量
- 論理量
- 物理量
- 要件定義
- プロジェクト管理
- レビュー
- 開発本体
- 基本
- 詳細
- 製造
- 結合Test
- System Test
- 品質強化
- インフラ構築
- 移行
- 顧客教育
- 運用構築
- 保守
- 的確な指標やモデルを選択して工数を算出
- (根拠が必要)
- 論理
- 物理
- FPなど
- 画面や帳票、
- ページ数など
- 人件費以外
- のコスト
- 基本設計~ST
- 全体
- リスク対応、
- 品質対策など
- 要件ヒアリングや
- プロジェクト運営など
- イメージ
- 要求
- 要件
- 規模
- 生産性
- 工数
- 補正
- 売価
- コスト
- 最終
- 調整
- #メトリクス・データ活用
FP法について①
- FunctionPoint法(FP法)
- ソフトウェアの規模を計測するための一手法
- FP法は、IFPUG法、COSMIC法、フルファンクションポイント法、フィーチャポイント法、MarkⅡ法、NESMA概算法、SPR法などさまざまな分野のソフトウェアに対してさまざまな計測手法が存在する
- FP法の主な特徴
- ユーザの視点で計測を行う
- アプリケーションの構築基盤には依存しない
- 生産管理や品質管理、各種見積に活用できる(FP法自体は見積り手法ではない)
- 各種ベンチマーク等、マネジメントでの活用ができる
- 定量化によりアプリ全体をマクロに把握できる一方で、ポイントの重みづけはかなりアバウト
- アルゴリズムの複雑さは全く考慮されていない・・制御系の分野では、COSMIC-FFPの手法などがある
- #メトリクス・データ活用
FP法について②
- エンタプライズ系ソフトウェアに対しては、IFPUG法が用いられることが多い
- IFPUG法はIFPUG(*1)が標準化した手法で、ISO/IECによる国際規格化(*2) もなされている
- *1: IFPUG(International FP Users Group)、1984年設立、日本支部のJFPUGは1994年に設立
- *2: ISO/IEC 20926:2009ソフトウェア及びシステム工学-ソフトウェア測定-IFPUG機能サイズ測定法2009Software and systems engineering -- Software measurement -- IFPUG functional size measurement method 2009
- 参考・・国際規格化されている代表的な機能規模測定法
- ISO/IEC 24570:2018ソフトウェア工学-NESMA機能サイズ測定法-定義及び機能ポイント分析の適用のための計数指針Software engineering -- NESMA functional size measurement method -- Definitions and counting guidelines for the application of function point analysis
- ISO/IEC 20968:2002ソフトウェ工学-Mk ll機能ポイント分析-計数実務マニュアルSoftware engineering -- Mk II Function Point Analysis -- Counting Practices Manual
- #メトリクス・データ活用
FP法について③
- 機能規模測定に関する国際規格であるISO/IEC 14143-1(*3)では、ソフトウエアで実現する利用者要件は「機能要件」、「非機能要件」に分類されており、機能規模は、「機能要件」のみが対象になる
- IFPUG法はもともと、「一般システム特性」を評価し、一度算出した機能規模に対して、機能要件以外の要素で調整をかけていたが、国際規格の流れもあり、この調整をかける部分はオプション扱いとなった・・評価項目自体、時流に合った内容ではないため、実質的には無効化したと考えてよい
- *3: 機能規模測定の国際標準
- ISO/IEC 14143-1:2007情報技術-ソフトウェア測定-機能規模測定-第1部:概念の定義Information technology -- Software measurement -- Functional size measurement -- Part 1: Definition of concepts
- *3: 機能規模測定の国際標準
- #メトリクス・データ活用
FP計測の重要ポイント
- 計測対象システムの境界を明確にする
- 計測対象は大きくしすぎない
- ユーザーを特定し、ユーザーの視点で計測する
- データ→トランザクションの順で計測する
- 途中で境界やデータが変わった場合は、最初から計測をやり直す
- 一般システム特性は使用しない(IFPUG法の場合)
- 細かなルールにこだわりすぎない→悩ましいケースの計測事例をナレッジ化しておく
- #メトリクス・データ活用
計測ツール(Excel)
- 簡易計測機能を付加したExcelツールです
- #メトリクス・データ活用
計測ツールのFP変換値(通常/簡易)
- FP_MesurementTool の右側ワークエリアに変換用のTBLがあります。下記簡単ですが、データ項目のみの低・中・高の判断のしきい値を示します。
- 内部論理ファイル(ILF)
- 外部インターフェースファイル(EIF)
- 外部入力
- (EI)
- 外部出力
- (EO)
- 外部参照
- (EQ)
- スコープ内のテーブル
- スコープ外のテーブル
- 入力処理
- 出力処理→画面表示、帳票出力など
- 入出力一体の処理→検索表示など
- 正規の計測の際の判定のしきい値
- ( IFPUG法 )
- 簡易計測の際の判定TBL
- →データ項目数のみを使う
- 低
- 中
- 高
- ここが”yes”の時、ツールは簡易
- 計測モードに
- #メトリクス・データ活用
見積りの概要とFP計測
- 機能
- 品質
- 技術
- その他
- (非機能)
- 成果物
- 作業量
- 論理量
- 物理量
- 要件定義
- プロジェクト管理
- レビュー
- 開発本体
- 基本
- 詳細
- 製造
- 結合Test
- System Test
- 品質強化
- インフラ構築
- 移行
- 顧客教育
- 運用構築
- 保守
- 的確な指標やモデルを選択して工数を算出
- (根拠が必要)
- 論理
- 物理
- FPなど
- 画面や帳票、
- ページ数など
- 人件費以外
- のコスト
- 基本設計~ST
- 全体
- リスク対応、
- 品質対策など
- 要件ヒアリングや
- プロジェクト運営など
- イメージ
- 要求
- 要件
- 規模
- 生産性
- 工数
- 補正
- 売価
- コスト
- 最終
- 調整
- #メトリクス・データ活用
FP計測データ活用の重要ポイント
- 計測直後のデータは不確実性が高いため、複数手法での検証を行う
- データ活用の目的を明確にする
- 生産性指標の獲得による見積り精度向上 や品質指標の活用による品質コントロールの実現 など
- FPと対比して獲得するデータの定義を確実に行う
- 工程、工数(時間)、テストケース、不具合数(事象、原因)など
- 獲得したデータを特性ごとに取り出せるよう、特性の定義を行う
- 計画と実績データだけでなく、途中の変動情報も獲得することで、指標を構築する際のノイズをできるだけ取り除く
- #メトリクス・データ活用
分析に必要なデータ・ミニマム
- 基本情報、利用技術、 FP数、工数(工程別)・時間、テスト件数・バグ数、物理量、測定時間、コスト、契約情報など を見積時、変更時、終了時 のタイミングで集計し分析に利用
- #メトリクス・データ活用
データ活用 ・・必要に応じ別途ご説明します
- モデルや各種指標の構築例を下記に示す | モデル | 指標 | 備考 | | --- | --- | --- | | ①工数モデル | FP→工数 | | | ②見積モデル | FP(→工数)→金額 | | | ③品質モデル | FP→バグ収束判断、テスト密度判断 など | | | ④ビジネスモデル | FP→資産管理、投資対効果の判断 など | | | ⑤取引基準 | FP→受発注の基準 など | |
- #メトリクス・データ活用
イメージ図
手順・進め方
FP計測手順
- FP計測手順は「CPM4110_抜粋版.pdf」に示します
- ここでは計測上の留意点について「IFPUG計測ガイドライン_CPM4110ベース.pdf」で解説します
- なお、カウントマニュアル(CPM)の最新はVer.4.3.1ですが、計測精度に大きな影響を及ぼす箇所は少ないと判断したため、CPM4.1をもとに解説します
- #メトリクス・データ活用
IFPUG計測手順・概略
- 下記に計測手順の概略を示す
- #メトリクス・データ活用
手法・理論
テンプレート・ツール
事例・サンプル
FPから工数を算定するケース
- ISO/IEC14143-1
- で定義される3つの要件
- 工数算定においては
- 機能以外の
- 要件の考慮が必要となる
- 画面デザイン
- 外部システムとのシステム間IF
- 設定ファイルの調整
- ・・はどこで計測/工数を換算するか?
- #メトリクス・データ活用

