ファンクションポイント法が日本に紹介されたのは約20年前のことです。しかしながら、未だファンクションポイント法が誤解されたまま、現場で話が進められているということを時々耳にします。ここでは、そんな誤解に対する正しい答えをお伝えします。

誤解その1:ファンクションポイント法は見積り手法でしょ?

いいえ、違います。

ファンクションポイント法は機能要件を計測するための手法です。 機能要件とは、ユーザーの要求仕様のうち、機能に関わる要件のことを言います。例えば、入力画面などの入力機能や出力帳票といった出力機能がこれに該当します。

機能要件をファンクションポイント法に従って計測すると、ファンクションポイント数(以下「FP数」)として定量化することができます。ソフトウェアを定量化する手法としては、実装されたコード行数を測る手法と同じようなものだと言えます。つまりファンクションポイント法は、「物理行で測る」「論理行で測る」「コメント行は含める」……といった規則を示すものなのです。ですから、「ある時点で手に入る情報からその先の姿を推測する」見積り手法とは異なるのです。

FP数とプログラム行数の違い

誤解その2:FP数はプログラム行数を見積もるために使うものなのよね?

いいえ、違います。

「誤解その1」でもお伝えした通り、FP数とプログラム行数はそれぞれ計測している対象が違います。異なる世界を表した単位なのです。

確かにFP数が大きければプログラム行数も概して大きくなり、それなりの比例関係はあります。約20年前、ファンクションポイント法が日本に紹介された頃はメインフレーム全盛の時代であり、手続き型の単一言語による開発が主体だったので、プログラム行数を見積もるための手法として考えられる向きがありました。しかし今は違います。

高水準言語やフレームワーク、業務パッケージの台頭などにより、「作らない」開発が増えてきている昨今、ファンクションポイント法をプログラム行数の見積り手法として使用するのはもったいない話なのです。機能要件に比例するコストと実装したプログラム行数に比例するコストを分けて考えることが必要な時期なっていると筆者は日々感じます。

誤解その3:FP数は外部設計が終わらないと見積もることができない?

いいえ、違います。 FP数の計測が可能なのは外部設計終了時点ですが、それより上流の工程においても見積もることはできます。

プログラム行数に置き換えて表現すると、「プログラム行数は製造が終わらないと見積もれない」と言っていることと同義となります。

「FP数はまだ使えないからプログラム行数で見積もるか……」という不思議な話を聞くことが少なくないのですが、これは大きな誤解です。ただし、ファンクションポイント法自体は計測手法であるため、見積りのロジックが含まれているわけではありません。プログラム行数の計測規則に見積りのためのロジックが含まれていないのと同様です。

今ある情報から将来の姿を予測するためには、業務ノウハウや核となる実績データの蓄積が必要となります。

執筆者プロフィール

藤貫美佐 (Misa Fujinuki)
株式会社NTTデータ SIコンピテンシー本部 SEPG 設計積算推進担当 課長。IFPUG Certified Function Point Specialist。日本ファンクションポイントユーザー会の事務局長を務める。

『出典:システム開発ジャーナル Vol.5(2008年7月発刊)
本稿は原稿執筆時点での内容に基づいているため、現在の状況とは異なる場合があります。ご了承ください。