測ることからすべてが始まる ~ファンクションポイント法による ソフトウェア定量化のススメ~ 日本ファンクションポイントユーザ会(JFPUG) Copyright JFPUG 2014 第1部 ファンクションポイントとは Copyright JFPUG 2014 1.ファンクションポイントとは あらゆるものには規模の尺度がある あらゆるもの(製品や資源)にはその規模を把握するための なんらかの尺度がある。 ものの規模尺度は価格とおおよその相関があり、取引の目 安となっている場合が多い。 【製品や資源の規模尺度の例】 住居:床面積( ㎡ ) 自動車:エンジン排気量(cc) テレビ:画面サイズ(インチ) 船:積載量(t) 食肉:重さ(㎏) 石油:量(ガロン) ソフトウェアの規模尺度って何だろう? Copyright JFPUG 2014 1.ファンクションポイントとは 規模(サイズ)と価格相場の関係例 液晶テレビの画面サイズ毎の実勢価格(千円) メーカ シリーズ SH社 AQ 44 PA社 VE1 59 76 VE2 104 115 BR1 45 90 BR2 63 106 165 RG1 47 59 116 RG2 100 188 WO1 43 65 WO2 94 RL1 46 SO社 T0社 HI社 MI社 平均 32インチ 65 37インチ 40インチ 42インチ 46インチ 198 269 330 付加機能 4原色 3D対応 3D対応 258 3D対応 120 112 113 録画機能 138 117 172 258 ①全体的な傾向として画面サイズ(規模)が大きいほど価格が高い ②サイズの割りに高い機種には付加機能がついている。 サイズを軸に価格を見ると納得感がある Copyright JFPUG 2014 52インチ 94 105 99 47インチ 330 1.ファンクションポイントとは ソフトウェアの規模をどう捉えるか? ソフトウェアの規模を把握する場合、内部仕様(実装)から捉 えるアプローチと外部仕様から捉えるアプローチがある 【内部仕様(実装)から捉える規模の例】 プログラム本数 条件分岐数 関数やAPIの数 SLOC(Source Lines Of Code,プログラムステップ数) etc 【外部仕様から捉える規模の例】 画面や帳票の数 定義された要件の数 ユースケースポイント ファンクションポイント(FP) etc Copyright JFPUG 2014 1.ファンクションポイントとは ファンクションポイントとは ソフトウェアの機能規模を測る尺度 1979年に米国のA. J. Albrecht氏 が考案したものが母体。 IFPUGとその支部(日本支部JFPUG)が世界中で普及推進 している。 ISO/IECの国際標準規格となっている。 日本国内ではJIS規格 ファンクションポイントは、ソフトウェアの機能規模尺度 Copyright JFPUG 2014 1.ファンクションポイントとは ISO/IEC規格およびJISの発行 国際社会においても、機能規模計測の重要性を認識し、 1993年からISO/IEC規格発行の検討を開始 1998年の「ソフトウェア機能規模の概念定義 (ISO/IEC14143-1)」を発行し、以後次々と各規格を発行 ソフトウェアの機能規模の概念、標準適合性、利用適合性、 参照モデル、適用領域の規定の標準化が目的 国内でも並行してJIS(翻訳JIS)の発行が行われている ファンクションポイントは、国際標準の尺度 Copyright JFPUG 2014 1.ファンクションポイントとは ファンクションポイントの有意性 様々な規模尺度の中からFPを選ぶ理由 外部仕様から計測する ユーザ、ベンダー共に客観的に評価できる 上流工程から規模を推定しやすい 構築環境に依存しない 単位の大きさが均一 計測対象によるばらつきが比較的少ない 統計分析の対象に適している SLOC法など に比べ 計測ルールが普及している 他社と生産性・品質が比較できる 計測スキルを継承できる Copyright JFPUG 2014 画面数、要求 数などに比べ 独自に策定さ れた計測法に 比べ 第2部 ファンクションポイントの計測 Copyright JFPUG 2014 2.ファンクションポイントの計測 なにを機能と考えるか? アプリケーションB 情報B Aの登録 参照 ②情報の 出し入れ Aの検索 ①情報 アプリケーションA トランザクションファ ンクション •外部入力(EI) •外部出力(EO) •外部照会(EQ) Aの帳票 出力 Copyright JFPUG 2014 Aのデータ渡し アプリケーションC 情報A データファンクション • 内部論理ファイル(ILF) • 外部インタフェース ファイル(EIF) 2.ファンクションポイントの計測 検証:スマホアプリの機能を計測してみる 事例:リマインダー(iPhoneやiPadに標準でついている“備忘録”アプリ) GPSとも連動 タスクの詳細内容 を登録する 忘れてはいけないタスクを 一覧にして、チェックする Copyright JFPUG 2014 指定された 日時や場所 でアラームを 表示する 2.ファンクションポイントの計測 ①どんな情報があるか? 日付情報(EIF) 5FP タスク情報(ILF) 7FP 位置情報(EIF) 5FP 情報(データ)は17FP Copyright JFPUG 2014 2.ファンクションポイントの計測 ②どんな情報の出し入れがあるか? タスク一覧の表示(EQ) 日別タスク一覧の表示(EQ) タスクの追加(EI) タスクの完了(EI) タスクの削除(EI) 合計 地図の参照(EQ) 3 FP 15 FP タスクの変更(EI) 日付の参照(EQ) 合計 6 FP リマインド(EQ) スヌーズ(EI) 合計 6 FP 情報の出し入れ(トランザクション)は30FP 総ファンクション規模は17+30=47FP Copyright JFPUG 2014 2.ファンクションポイントの計測 他のアプリと比べてみた 47 106 77 FP FP FP 【リマインダー】 シンプルな備忘 録アプリ Copyright JFPUG 2014 【リフィル】 スケジュールを登録して、 月、週、日毎に管理。リ マインダー機能も付属。 【スリープサイクル】 加速度、傾きセンサーを使っ て寝返りを検知。睡眠の深さ をグラフ化する。 2.ファンクションポイントの計測 やってみてわかったこと アプリ名称 リマインダー リフィル 機能概要 シンプルな備忘録アプリ スケジュールを登録して、月、 週、日毎に管理。リマインダー 機能も付属。 スリープサイクル 加速度、傾きセンサーを使っ て寝返りを検知。睡眠の深さ をグラフ化する。 データFP トランFP 合計FP 17 30 47 45 61 106 12 65 77 1.利用者目線で計測できる。 2.演算ロジックの複雑さは反映されない。 特にビジネス系アプリケーションの規模把握に有効 Copyright JFPUG 2014 第3部 ファンクションポイントの活用 Copyright JFPUG 2014 3.ファンクションポイントの活用 ファンクションポイントの活用領域 主 に ベ ン ダ ー の 領 域 見積り 評価 見積り スコープ 管理 工数管理 ベンダー 評価 ソフトウェア 機能規模 (FP) ソフトウェア 資産管理 品質管理 プロジェクト 評価 Copyright JFPUG 2014 投資効果 評価 運用 評価 主 に ユ ー ザ ー の 領 域 3.ファンクションポイントの活用 ファンクションポイントの活用(1) 開発工数の見積り ソフトウェア開発費用見積りまでの全体像 ユーザ要件 FPを見積る 機能要件 <FP計測可> 機能要件 <FP計測不適> 非機能要件 ・品質要件 ・技術要件 ・FP法の活用 IFPUG法 NESMA法 等 作業内容 から 作業量を 見積る (注1) FP 作業量 LOC, ページ数 等 費用を見積る 工数と期間を 見積る(注2) ・蓄積データの活用 自社の蓄積データ ISBSGのデータ 文献、書籍のデータ ・見積りモデルの活用 COCOMOⅡ Putnumモデル 等 ・作業ごとのWBSの 活用 ・費用科目ごとに 見積もって積み 上げる 開発 工数 開発 期間 人件費 ソフトウェア費用 ハードウェア費用 リスク対応費 瑕疵対応費 その他諸経費 等 (注1) 直接、工数を見積る場合もある (注2) 開発工数を見積るとき、通常、開発期間も併せて見積り、 双方の妥当性検討と調整をおこなう Copyright JFPUG 2014 開発 費用 3.ファンクションポイントの活用 ファンクションポイントの活用(2) スコープマネジメント ソフトウェア開発の不確実性 • 開発の進行に伴いスコープが変動する • 必要な開発リソース(工数など)の量を決められない • ユーザからベンダに要求が正しく伝わらない <ソフトウェア開発における不確実性のコーン(円錐)> コード・ライン数 見積のばらつき 類似システム 要求数 ユースケース数 ファンクションポイント数 わずかな情報 /高いリスク システム化 システム化 要件定義 の方向性 計画 情報の充実 /低いリスク 設計 SEC発行小冊子「ソフトウェア開発見積りガイドブック」より Copyright JFPUG 2014 テストケース数 製造 時間 3.ファンクションポイントの活用 ファンクションポイントの活用(3) 生産性・品質の評価 ■ベンチマークの作成、供給のイメージ 支援活動 ・組織活動 道具立て を整える ベンチ マーク作成 ・ツール ・手法 ・ガイド ベンチマーキング リボジトリ 分析 内部ベンチ マーク 外部ベンチ マーク 精査 ・経済調査会分析 ・SECデータ白書 ・JUAS SWメトリクス ・プロジェクト活動 見 積 データ活用 ベンチマーク: Copyright JFPUG 2014 リポジトリ管理 計 画 実 施 データ活用 データ活用 収集 蓄積 データ 提供 プロジェクト の測定値 終 了 データ活用 特定のITプロジェクトの性能が、組織内外のITプロジェクトと比較して どのレベルに位置するかを評価するため、比較対象として利用する 組織内外の参照情報(基準値) (ISO/IEC29155-1の定義を仮訳) 3.ファンクションポイントの活用 ファンクションポイントの活用(4) 価格指標 供給側 合意形成 需要側 価格 原価 工数 期間 リスク 価値 コスト 構造 機能 規模 利用者 品質 満足 投資 効果 供給コスト(原価)と需要価値のバランスのもとに価格相場が形成される。 機能規模は、原価と価値の双方と相関があるため、合意形成のベース となる。 Copyright JFPUG 2014 3.ファンクションポイントの活用 ファンクションポイントの活用(4) 価格指標 ①供給側は、価格と機能規模(ファンクションポイント)を併記して見積りを提示す る。 ②発注側は、統計情報や自社のベンチマークより価格の妥当性を評価する。 ③投資効果など、ITサービスの価値を考慮する。 お見積書 価格の 合意形成 価格¥123,456,000- 機能要件 1.○○○○ 2.○○○○ ~ 投資 効果 1,234ファンクションポイント(IFPUG法) 性能要件、品質要件 ・・・・・ ① 開発体制、プロジェクト条件 ・・・・・ 統計情報 ベンチマーク Copyright JFPUG 2014 第4部 ファンクションポイントの導入 Copyright JFPUG 2014 4. ファンクションポイントの導入 ファンクションポイントの導入プロセス STEP1 目標の設定 •目的、効果 •適用範囲 •スケジュール •推進体制 Copyright JFPUG 2014 STEP2 基準の策定 •ガイドラインの制定 •基準の策定 •ルールの周知 •教育 STEP3 計測実施 実績の蓄積 •モニタリング •計測結果の記録 •定常的な計測 •フィードバック STEP4 実績分析 継続的改善 •プロファイリング •統計分析 •特異プロジェクトの分析 •改善策の提起 まとめ 測定すると生産性・品質が向上するか? No! 測定せずに生産性・品質を向上することができるか? No! ・生産性・品質の向上には目標設定が第一。 ・目標は社内外で客観的に比較できる尺度が良い。 ・目標を達成するために打つ施策が、生産性や品質を向上させる。 ・計測できないものは、管理できない。 Copyright JFPUG 2014 ありがとうございました Copyright JFPUG 2014
© Copyright 2024 ExpyDoc