ITパスポート 2017年 春期 問37
問題文
システム開発の見積方法として、類推法、積算法、ファンクションポイント法などがある。ファンクションポイント法の説明として、適切なものはどれか。
選択肢
ア:WBSによって洗い出した作業項目ごとに見積もった工数を基に、システム全体の工数を見積もる方法
イ:システムで処理される入力画面や出力帳票、使用ファイル数などを基に、機能の数を測ることでシステムの規模を見積もる方法(正解)
ウ:システムのプログラムステップを見積もった後、1人月の標準開発ステップから全体の開発工数を見積もる方法
エ:従来開発した類似システムをベースに相違点を洗い出して、システム開発工数を見積もる方法
🔒 解説は解答すると表示されます
ファンクションポイント法の説明問題【ITパスポート 解説】
正解の理由
この問題の正解は イ です。
ファンクションポイント法(Function Point法:システムの「機能規模」を測る手法)は、ユーザーから見える機能、たとえば「入力画面」「出力帳票(レポート)」「問い合わせ」「内部で保持するファイル数」などを数えて、システムの規模を見積もります。ポイント(Function Point)として合計し、その合計から生産性(1人月あたりのFPなど)を使って工数に換算します。したがって「入力画面や出力帳票、使用ファイル数などを基に機能の数を測る方法」を述べる選択肢が正しい説明です。
ファンクションポイント法(Function Point法:システムの「機能規模」を測る手法)は、ユーザーから見える機能、たとえば「入力画面」「出力帳票(レポート)」「問い合わせ」「内部で保持するファイル数」などを数えて、システムの規模を見積もります。ポイント(Function Point)として合計し、その合計から生産性(1人月あたりのFPなど)を使って工数に換算します。したがって「入力画面や出力帳票、使用ファイル数などを基に機能の数を測る方法」を述べる選択肢が正しい説明です。
(用語補足)WBS(Work Breakdown Structure:作業分解図)は作業を細かく分ける手法、1人月は「1人が1か月働く量」を意味します。これらはファンクションポイント法本体の説明ではありません。
解法ステップ
- 問題文で「ファンクションポイント法」の特徴的なキーワードを探す。例:「入力画面」「出力帳票」「ファイル数」「機能の数」など。
- 各選択肢と照らし合わせる:
- 「作業項目ごとに見積もる」「WBS」「1人月の標準開発ステップ」「類似システムをベースに相違点を洗い出す」などは別の見積法を表す語句であり、ファンクションポイント法とは異なる。
- 「ユーザーから見える機能を数える」という表現を含む選択肢を選ぶ。これがファンクションポイント法です。
選択肢別の誤答解説
-
ア: WBSによって洗い出した作業項目ごとに見積もった工数を基に、システム全体の工数を見積もる方法
- 説明:これは「積算法」や「ボトムアップ見積もり」に近い考え方です。WBS(作業分解図)で作業を細かくし、それぞれの作業工数を合算して全体を出します。ファンクションポイント法とは考え方が異なります。よって誤りです。
-
イ: システムで処理される入力画面や出力帳票、使用ファイル数などを基に、機能の数を測ることでシステムの規模を見積もる方法
- 説明:ユーザーへの見え方(機能)を数値化して規模を求める点が、ファンクションポイント法の本質です。正解です。
-
ウ: システムのプログラムステップを見積もった後、1人月の標準開発ステップから全体の開発工数を見積もる方法
- 説明:これは「ソースコードの行数(LOC: Lines Of Code)」や「プログラムステップ数」を基にした見積もりに近く、開発側の内部作業量(実装量)を基準にしています。ファンクションポイント法はユーザー視点の機能量を基準にするため、誤りです。
-
エ: 従来開発した類似システムをベースに相違点を洗い出して、システム開発工数を見積もる方法
- 説明:これは「類推法(類似見積もり)」です。過去のプロジェクトを基に修正して見積もる手法で、ファンクションポイント法とは別のアプローチです。よって誤りです。
よくある誤解
-
「ファンクションポイント法はプログラミング規模を数える方法だ」
- 誤りです。ファンクションポイント法はユーザーに見える機能(入力・出力・ファイルなど)を数えます。プログラムの行数(LOC)や内部ステップ数とは別物で、実装言語に依存しないのが特徴です。
-
「ファンクションポイントはそのまま工数になる」
- 単純にFPの合計が直接工数ではありません。通常はFPに対して組織やプロジェクトの生産性(例:1人月あたり何FPか)を掛けて工数に換算します。プロジェクトやチームにより生産性は変わります。
-
「すぐに正確な見積もりが出せる」
- 要件定義の段階で概算を出すのに有効ですが、詳細仕様が固まっていないと精度は上がりません。また、FPには複雑度評価や補正係数を使う場合が多く、単純に数えるだけでは不十分なことがあります。
補足コラム
ファンクションポイント法の構成要素(代表的な5つ)
- 外部入力(EI:External Input)…ユーザーからの入力画面やデータ登録
- 外部出力(EO:External Output)…レポートや出力帳票
- 外部照会(EQ:External Inquiry)…検索・照会処理
- 内部論理ファイル(ILF:Internal Logical File)…システム内部で管理するデータファイル
- 外部インターフェースファイル(EIF:External Interface File)…他システムのデータ参照
一般的な流れ(簡略)
- それぞれの機能を数える(上の5つのカテゴリでカウント)
- カウント結果に重み(簡単・普通・複雑)を付けて合計(未補正FP)
- 必要に応じて補正係数(Value Adjustment Factor)を掛けて最終FPを算出
- 過去の生産性からFP→工数に換算
歴史的にはIBMのアラン・アルブレヒト(Allan Albrecht)が1970年代に提案した手法で、言語に依存しない見積もり法として広く使われています。標準化団体(例:IFPUG)や別の尺度(COSMIC)もあります。
FAQ
Q1: ファンクションポイント法とLOC(ソース行数)どちらが良いですか?
A1: 目的によります。早い段階で要件ベースの見積もりをしたい場合はファンクションポイント法が適しています。実装量や詳細設計後で正確さを求めるならLOC指標を使うこともあります。
A1: 目的によります。早い段階で要件ベースの見積もりをしたい場合はファンクションポイント法が適しています。実装量や詳細設計後で正確さを求めるならLOC指標を使うこともあります。
Q2: 非エンジニアでもファンクションポイントは使えますか?
A2: はい。ユーザー視点の「何をするか」を数える手法なので、要件を把握できる人なら参加できます。ただし、重み付けや補正係数の扱いは経験が必要です。
A2: はい。ユーザー視点の「何をするか」を数える手法なので、要件を把握できる人なら参加できます。ただし、重み付けや補正係数の扱いは経験が必要です。
Q3: ファンクションポイントを自動で測るツールはありますか?
A3: 要件ベースのFPは基本的に人手で数えることが多いですが、仕様書やコードから補助的に算出するツールやサービスも存在します。自動化は完全ではなく、レビューが必要です。
A3: 要件ベースのFPは基本的に人手で数えることが多いですが、仕様書やコードから補助的に算出するツールやサービスも存在します。自動化は完全ではなく、レビューが必要です。
関連キーワード: ファンクションポイント、見積もり手法、WBS、類推法、積算法、LOC、機能規模、IFPUG、COSMIC

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

