基本情報技術者 2009年 秋期 午前(科目A) 問53
問題文
入力、出力などを基に複雑さを加味してシステム規模を見積もる方法であり、開発工数の見積りにも使われるものはどれか。
選択肢
ア:COCOMO
イ:標準タスク法
ウ:ファンクションポイント法(正解)
エ:プットナム(Putnum)モデル
入力・出力などを基に複雑さを加味してシステム規模を見積もる方法であり、開発工数の見積りにも使われるものはどれか。【午前2 解説】
要点まとめ
- 結論:ファンクションポイント法は「入力・出力・照会・内部ファイルなどの機能」を数えて規模を算出し工数見積りに使われます。
- 根拠:各機能に重み付けしたUFPに環境要因で調整するVAFを掛けて機能点数を算出し、規模の定量化が可能です。
- 差がつくポイント:言語非依存で早期見積りや生産性比較に有効、LOC換算(バックファイアリング)で工数やコスト推定にも結びつけられます。
正解の理由
ファンクションポイント法は「入力」「出力」「照会」「内部論理ファイル」「外部インタフェースファイル」といった機能を数え、複雑さに応じた重みを適用して機能点(UFP)を算出します。さらに14項目程度のシステム特性(データ通信や性能要求など)の評価で調整係数(VAF)を求め、最終的な機能点(FP)を得ます。このFPはプログラミング言語に依存しないため、設計初期段階から規模を見積もり、過去の生産性データと組み合わせて開発工数を推定できます。問題文の「入力、出力などを基に複雑さを加味して」の記述がファンクションポイント法の特徴そのものです。したがって正解は ウ です。
よくある誤解
ファンクションポイントは「行数(LOC)を直接数える方法」ではなく、機能の観点から規模を評価する方法です。LOCとの換算は可能ですが、言語依存の補正が必要です。
解法ステップ
- 問題文のキーワードを探す:「入力」「出力」「複雑さを加味」などの語句を確認する。
- 各手法の特徴を照合する:ファンクションポイントは機能を数える、COCOMOはLOCベース、Putnamは工程曲線・生産性パラメータ重視。
- 最も記述に合致する手法を選ぶ:機能(入出力等)を基にするのはファンクションポイント法である。
- 選択肢を検証して確定する:ウが該当するため正解とする。
選択肢別の誤答解説
- ア: COCOMO — ソース行数(LOC)やサイズ見積り、コスト係数・スケーリング要因を用いるモデルで、入出力の個別カウントが基本ではありません。
- イ: 標準タスク法 — タスクごとの標準工数を積算する手法で、入出力の機能数を直接数えて重み付けする方法とは異なります。
- ウ: ファンクションポイント法 — 入力・出力等の機能を数え、複雑さを反映する調整を行い、規模や工数推定に用いる手法であり問題文に合致します。
- エ: プットナム(Putnam)モデル — SLIM系のマクロモデルでプロジェクト生産性や時間・労力のトレードオフを扱うが、入出力を数える方法ではありません。
補足コラム
- ファンクションポイント算出の流れ:機能をEI/EO/EQ/ILF/EIFに分類 → 各項目に重みを付けてUFPを算出 → 環境特性の合計でVAFを算出(一般式:) → 。
- 用語:EI=External Input、EO=External Output、EQ=External Inquiry、ILF=Internal Logical File、EIF=External Interface File。
- 実務:FPは言語非依存で早期見積りに有利。過去のFPあたり工数(人時/FP)を集めて生産性データベース化すると精度が上がります。
- LOCへの換算(バックファイアリング)は可能だが言語ごとの係数が必要で、単純比較には注意が必要です。
簡単なFP計算の例(Python)
def function_point(u_fp, sum_factors):
vaf = 0.65 + 0.01 * sum_factors
return u_fp * vaf
# 例:UFP=120、調整係数合計=sum_factors=10
print(function_point(120, 10)) # 約132.0
FAQ
Q: ファンクションポイントは設計完了前でも使えますか?
A: はい。詳細設計前でも外部仕様(入力/出力/データストア等)が分かればUFPを見積もり、早期工数見積りに役立ちます。
A: はい。詳細設計前でも外部仕様(入力/出力/データストア等)が分かればUFPを見積もり、早期工数見積りに役立ちます。
Q: COCOMOとファンクションポイントはどちらが良いですか?
A: 目的と入手可能な情報によります。初期段階で仕様ベースならFP、ソース行数や履歴がある段階ではCOCOMOが適します。両者を組み合わせて補完することも多いです。
A: 目的と入手可能な情報によります。初期段階で仕様ベースならFP、ソース行数や履歴がある段階ではCOCOMOが適します。両者を組み合わせて補完することも多いです。
Q: VAFの範囲はどのくらいですか?
A: VAFは通常0.65〜1.35程度の範囲に収まることが多く、システム特性の合計で変動します。
A: VAFは通常0.65〜1.35程度の範囲に収まることが多く、システム特性の合計で変動します。
関連キーワード: ファンクションポイント, FP法, UFP, VAF, 規模見積り, 工数見積り, COCOMO, Putnam, 見積もり手法, ソフトウェア規模推定

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

