計算問題の解き方・14/20
ファンクションポイント法による FP 値と工数の求め方
機能の個数と重み付け係数の表から FP 値を出す問題と、FP 値と生産性から開発工数を出し、ほかの工数と管理工数を足して全工数を出す問題の 2 つの形で出題されます。どちらも、表と問題文の数値を決まった順番で掛けたり割ったり足したりすれば解けます。
公開過去問での出題:本試験系 7 回・免除試験 10 回(観測値)
覚える式
- 未調整FP = Σ(個数 × 重み付け係数)
- FP値 = 未調整FP × 補正係数
- 開発工数(人月)= FP値 ÷ 生産性(FP/人月)
- 全工数 =(開発工数 + 導入・教育などの工数)×(1 + 管理工数の比率)
解き方の手順
- 表の行ごとに「個数 × 重み付け係数」を計算します。個数が 0 の行は 0 として扱います。
- 行ごとの値をすべて足して未調整FP を出します。
- 問題文に補正係数があれば、未調整FP に掛けて FP 値にします。補正係数で割ったり、補正係数を足したりはしません。
- 工数を問われたら、FP 値を 1 人月当たりの生産性(FP)で割って開発工数(人月)を出します。
- 導入・教育など開発以外の工数を足します。管理工数が「〜を合わせた工数の◯%」と書かれていたら、どこまでを合わせた工数なのかを問題文で確かめてから、その合計に(1 + 比率)を掛けます。
例題
あるソフトウェアにおいて,機能の個数と機能の複雑度に対する重み付け係数は表のとおりである。このソフトウェアのファンクションポイント値は幾らか。ここで,ソフトウェアの全体的な複雑さの補正係数は 0.75 とする。
| ユーザファンクションタイプ | 個数 | 重み付け係数 |
|---|---|---|
| 外部入力 | 1 | 4 |
| 外部出力 | 2 | 5 |
| 内部論理ファイル | 1 | 10 |
ア 18
イ 24
ウ 30
エ 32
出典:平成30年度 春期 基本情報技術者試験 午前 問54(解き方は当サイト作成)
解き方と答えを見る
- 外部入力:1 × 4 = 4
- 外部出力:2 × 5 = 10
- 内部論理ファイル:1 × 10 = 10
- 未調整FP = 4 + 10 + 10 = 24
- FP値 = 24 × 0.75 = 18
答え:18(ア)
ひっかけ
- 未調整FP の合計で止めてしまう誤りです。問題文に補正係数が書かれていたら、最後に必ず掛けます。
- 補正係数で割ってしまう誤りです。補正係数は掛けるものです。0.75 のように 1 より小さい係数なら、答えは未調整FP より小さくなります。
- 管理工数の比率を開発工数だけに掛けてしまう誤りです。「開発と導入・教育を合わせた工数の◯%」とあれば、比率は足し合わせた後の合計に掛けます。
- 管理工数を足し忘れて、開発工数とその他の工数の合計を答えにしてしまう誤りです。比率の条件があれば、最後に(1 + 比率)を掛けたかを確かめます。
類題(手順を使って解く)
類題 1
FP 値を生産性で割って開発工数を出し、導入・教育の工数を足してから管理工数の比率を合計に掛ける、手順 4〜5 の順番が試されます。
ある新規システムの機能規模を見積もったところ,500FP(ファンクションポイント)であった。このシステムを構築するプロジェクトには,開発工数のほかに,システム導入と開発者教育の工数が,合計で 10 人月必要である。また,プロジェクト管理に,開発と導入・教育を合わせた工数の 10% を要する。このプロジェクトに要する全工数は何人月か。ここで,開発の生産性は 1 人月当たり 10FP とする。
出典:平成30年度 秋期 基本情報技術者試験 午前 問54(問題文は IPA の公開問題。答えと解説はリンク先)
類題 2
個数が 0 の行を含む表で、手順 1〜3(行ごとの掛け算、合計、補正係数の掛け算)を正しく進められるかが試されます。
表の機能と特性をもったプログラムのファンクションポイント値は幾らか。ここで,複雑さの補正係数は 0.75 とする。
| ユーザファンクションタイプ | 個数 | 重み付け係数 |
|---|---|---|
| 外部入力 | 1 | 4 |
| 外部出力 | 2 | 5 |
| 内部論理ファイル | 1 | 10 |
| 外部インタフェースファイル | 0 | 7 |
| 外部照会 | 0 | 4 |
出典:平成27年度 秋期 基本情報技術者試験 午前 問52(問題文は IPA の公開問題。答えと解説はリンク先)
類題 3
管理工数の比率を、開発工数だけでなく導入・教育の工数も合わせた合計に掛けられるかが試されます。
ある新規システムの開発規模を見積もったところ,500FP(ファンクションポイント)であった。このシステムを構築するプロジェクトには,開発工数の他にシステムの導入や開発者教育の工数が 10 人月必要である。また,プロジェクト管理に,開発と導入・教育を合わせた工数の 10%を要する。このプロジェクトに要する全工数は何人月か。ここで,開発の生産性は 1 人月当たり 10FP とする。
出典:平成26年度 春期 基本情報技術者試験 午前 問54(問題文は IPA の公開問題。答えと解説はリンク先)