【ふぁんくしょんぽいんとほう】

ファンクションポイント法 とは?

💡 「機能の数」でシステムの大きさを測る
📌 このページのポイント
ファンクションポイント法:機能の規模を数値化 システム境界 内部論理ファイル ILF(データの保持) 外部IF EIF(参照データ) 外部入力 EI 外部出力 EO 外部照会 EQ FP = EI + EO + EQ + ILF + EIF の各機能を複雑度別に重み付けして合計 → コード行数に依存しない見積もり手法
ファンクションポイント法の5つの要素
ひよこ ひよこ

コード行数(LOC)での見積もりと何が違うの?

ペンギン先生 ペンギン先生

LOCはプログラミング言語によって大きく変わるよね。同じ機能でもJavaPythonでは行数が数倍違う。ファンクションポイントは「ユーザーから見た機能の量」で測るから、言語に依存しない。要件定義の段階で見積もりができるのも大きなメリットだよ

ひよこ ひよこ

5つの機能タイプって?

ペンギン先生 ペンギン先生

①外部入力(EI:画面入力など)、②外部出力(EO:帳票出力など)、③外部照会(EQ:検索・参照)、④内部論理ファイル(ILF:システム内のデータ群)、⑤外部インターフェースファイル(EIF:外部システムから参照するデータ群)。各機能タイプにデータ項目数に応じた重みを付けて合計するんだよ

ひよこ ひよこ

実務で使われてる?

ペンギン先生 ペンギン先生

大規模SIer案件やIPA調達ガイドラインでは今でも使われるよ。ただしアジャイル開発ではストーリーポイントの方が一般的。ファンクションポイントは「正確だけど計測に時間がかかる」から、契約上の見積もり根拠として使い、開発現場ではストーリーポイントを使う、という使い分けが多いね

ひよこ ひよこ

IPA試験での出題パターンは?

ペンギン先生 ペンギン先生

「以下の機能一覧からファンクションポイントを算出せよ」という計算問題が定番だよ。5つの機能タイプの分類ができれば解ける。あとは「ファンクションポイント法の特徴として正しいものを選べ」のような知識問題も出る。LOC法との比較で特徴を整理しておこうね

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ファンクションポイント法」って出てきたら「機能の量でソフトウェアの規模を測る見積もり手法」と思えればだいたいOK!
📖 おまけ:英語の意味
「Function Point Analysis」 = ファンクションポイント分析
💬 1979年にIBMのアラン・アルブレヒトが考案。プログラミング言語に依存しない見積もり手法として画期的だったよ
← 用語集にもどる