ファンクションポイントの調整係数から調整済みFP値を求める

皆さん、こんにちは。技術開発グループのn-ozawanです。
最近、喉を痛めて話すのもままならなかったのですが、ようやく回復しました。一度体調を崩すと長期化しやすいので、日ごろから体調に気を付けていきたいです。

本題です。
前回前々回でデータファンクションとトランザクションファンクションからFP値を求めました。次は調整係数を求めて、調整済みFP値を求めたいと思います。なお、本稿ではファンクションポイント法の調整係数とFP計測に焦点を当てています。ファンクションポイント法の概要を知りたい方は以前の投稿を参照ください。

調整係数

調整係数とは

調整係数は、そのアプリケーションの複雑度を14の項目からなる「一般システム特性」で評価して、FP値に加味します。調整係数が加味されていないFP値(データファンクションとトランザクションファンクションのみで求めたFP値)を「未調整FP値」と呼びます。また、調整係数を加味したFP値を「調整済みFP値」と呼びます。

なお、この調整係数はオプション扱いとなっており、やらなくても良いです。調整係数でFP値を加味しない場合は、「未調整FP値」を単に「FP値」と呼びます。

一般システム特性

調整係数は、一般システム特性と呼ばれる14の項目から評価します。その14項目は以下の通りです。

番号調整項目影響度 (DI)
C1データ通信(端末制御などを含む)を行うか0 ~ 5
C2分散処理をするか0 ~ 5
C3パフォーマンス要求の度合い0 ~ 5
C4システム構成的に無理をしていないか(余裕度はどの程度か)0 ~ 5
C5トランザクションの量は0 ~ 5
C6オンラインデータ入力をするか0 ~ 5
C7利用者の作業効率向上のために、オンライン機能の面に工夫が必要か0 ~ 5
C8論理的内部ファイルをオンラインで更新するか0 ~ 5
C9処理内容は複雑か0 ~ 5
C10再利用を考慮したプログラミングを行う必要はあるか0 ~ 5
C11コンバージョンや移行作業を容易にするための配慮が必要か0 ~ 5
C12利用者にとっての使いやすさや運用の容易さへの配慮は必要か0 ~ 5
C13複数サイト(事業所)へインストールするための配慮は必要か0 ~ 5
C14開発終了後の改変しやすさをどの程度考慮する必要があるか0 ~ 5

それぞれの項目に対して影響度を0 (まったく影響しない) から5 (非常に強く影響する) の6段階で評価します。

調整係数の計算

調整係数(VAF)は以下の式にて求めます。この式により調整係数は0.65~1.35の範囲で求められます。調整係数はオプション扱いですので、もし調整係数の計算を省略する場合は、調整係数(VAF)は1とします。

VAF = (TDI × 0.01) + 0.65

TDI … 影響度(DI)の合計値

FP計測

未調整FP値と調整係数が求まりましたので、調整済みFP値を求めます。ファンクションポイント法では、3つの計測方法があります。

新規開発FP計測

新規開発FP計測は、新しく開発するシステムの調整済みFP値を計測します。

DFP = ( UFP + CFP ) × VAF

DFP … 新規開発FP計測の調整済みFP値
UFP … 未調整FP値
CFP … データ移行機能のFP値
VAF … 調整係数

CFPはデータ移行をする際に使用する機能のFP値です。データ移行とは、古いシステムから新しいシステムに切り替える際、古いシステムのデータを新しいシステムのデータに引越しすることです。データ移行では単純に入れ替えるだけで済む場合もあれば、古いデータに対して何かしらの加工をしてから新しいデータとする場合もあります。CFPはその処理を行う機能のFP値です。

機能拡張FP計測

機能拡張FP計測は、既存システムの追加・変更・削除された分の調整済みFP値を計測します。

EFP = ( ( ADD + CHGA + CFP ) × VAFA ) + ( DEL × VAFB )

EFP … 機能拡張FP計測の調整済みFP値
ADD … 追加導入される機能の未調整FP値
CHGA … 変更される機能の変更後の未調整FP値
DEL … 削除される機能の未調整FP値
CFP … データ移行機能の未調整FP値
VAFA … 機能拡張FP計測後の調整係数
VAFB … 機能拡張FP計測前の調整係数

アプリケーションFP計測

新規開発FP計測と機能拡張計測は、今回の開発に関わるFP値を計測する方法です。アプリケーションFP計測は、純粋なアプリケーションの調整済みFP値を計測します。計算方法は2つに分かれます。

新規開発の場合

AFP = ADD × VAF

AFP … アプリケーションFP計測の調整済みFP値
ADD … 未調整FP値
VAF … 調整係数

データ移行が無い開発の場合は、新規開発FP計測と同じ結果になります。

更新開発の場合

AFP = ( ( UFPB + ADD + CHGA ) – ( CHGB + DEL ) ) × VAFA

AFP … アプリケーションFP計測のFP値
UFPB … アプリケーションFP計測前の未調整FP値
ADD … 未調整FP値
CHGA … 変更される機能の変更後FP値
CHGB … 変更される機能の変更前FP値
DEL … 削除される機能のFP値
VAFA … アプリケーションFP計測後の調整係数

おわりに

前回前々回でも述べましたが、FP値はそのシステムの規模を表す値でしかなく、必ずしも実際の工数を表す値ではありません。同じ1FPでも、その1FPに要する工数はプロジェクトによって異なります。そのプロジェクト特性とも呼べる差異をFP値に反映しようとしたのが調整係数のように思えます。

しかし、システム開発の手法が多様化した現在、この調整係数で全てが反映出来るのかと言うと疑問が残ります。調整係数でFP値を調整するよりも、過去の実績から得た生産性(FP/人時)から工数を算出した方が良いと感じます。調整係数がオプション扱いとなった経緯は分かりませんが、時代にそぐわなくなったのかもしれません。

ではまた。

Recommendおすすめブログ