マナビングITパスポート

コスト見積手法3種は記述のどこを見れば区別できるか

ITパスポート試験 令和6年度 問49 / プロジェクトマネジメント › プロジェクトマネジメント

過去問にチャレンジ

令和6年度 問49

ソフトウェア開発プロジェクトにおける、コストの見積手法には、積み上げ法、ファンクションポイント法、類推見積法などがある。見積りで使用した手法とその特徴に関する記述a〜cの適切な組合せはどれか。 a プロジェクトに必要な個々の作業を洗い出し、その作業ごとの工数を見積もって集計する。 b プロジェクトの初期段階で使用する手法で、過去の事例を活用してコストを見積もる。 c データ入出力や機能に着目して、ソフトウェア規模を見積もり、係数を乗ずるなどしてコストを見積もる。

令和6年度 問49の図
  1. ア

    積み上げ法:a、ファンクションポイント法:c、類推見積法:b

  2. イ

    積み上げ法:b、ファンクションポイント法:a、類推見積法:c

  3. ウ

    積み上げ法:c、ファンクションポイント法:a、類推見積法:b

  4. エ

    積み上げ法:c、ファンクションポイント法:b、類推見積法:a

会話形式の解説

講師講師
今回は、ソフトウェア開発のコストを見積もる3つの手法と、その特徴の組合せを答える問題です。記述a〜cのそれぞれが、何を手がかりに見積もっているかに注目してください。
受験者受験者
積み上げ法は名前のとおり、何かを足していく手法だと思います。ただ、ファンクションポイント法はカタカナで、何を数えるのかがはっきり分かりません。
講師講師
積み上げ法の見当は合っています。記述aは「個々の作業を洗い出し、作業ごとの工数を見積もって集計する」とあります。工数は作業にかかる手間の量のことです。作業を細かく分けて足し上げるので、aが積み上げ法です。
受験者受験者
作業を細かく分けるというのは、WBSのように作業を分解していくイメージでよいですか。
講師講師
そのイメージで大丈夫です。WBSなどで分解した作業ごとに工数を見積もって合計します。次にファンクションポイント法です。ファンクションは機能という意味で、入出力や内部ファイルなど、利用者から見た機能を数えます。機能の数と難易度に応じた点数でソフトウェアの規模を求めます。
受験者受験者
それなら、「データ入出力や機能に着目して規模を見積もる」と書いてあるcがファンクションポイント法ですね。cの後半にある「係数を乗ずる」は何をしているのでしょうか。
講師講師
求めた規模に生産性などの係数を掛けて、工数やコストに換算しているのです。規模をまず出して、それをお金や手間に置き換える流れになっています。ここまでもファンクションポイント法の特徴です。
受験者受験者
残ったbは「過去の事例を活用」とあるので、類推見積法ですね。過去の似たものから推し量るという意味で、名前ともつながります。
講師講師
そのとおりです。類推見積法は、過去の似たシステムやプロジェクトの実績を基に見積もります。作業の詳細がまだ決まっていない初期段階でも使えるので、bの「初期段階で使用する」という説明とも合います。
受験者受験者
整理すると、積み上げ法がa、ファンクションポイント法がc、類推見積法がbで、この組合せになっているのはアです。ウは類推見積法のbだけ合っていますが、aとcが入れ替わっていますね。
講師講師
正確です。イは3つとも対応がずれていて、エもすべて誤りです。たとえばエは、作業を集計するaを類推見積法に当てています。「作業ごと」「機能・入出力」「過去の事例」という語が、3つの手法を見分ける手がかりになります。
受験者受験者
「初期段階」という語が出てきたら、類推見積法と考えてよいでしょうか。
講師講師
その語だけで決めるのは避けてください。この問題では「初期段階で、過去の事例を使う」という組合せで類推見積法だと判断しています。補足すると、ファンクションポイント法は機能の量で規模を測るので、プログラミング言語の違いに左右されにくい手法です。積み上げ法は細かく分けるほど精度が上がりますが、作業の洗い出しに漏れがあると見積りが小さくなりすぎます。類推見積法は、どの事例を参考にするかで精度が大きく変わります。

まとめ

ソフトウェア開発のコスト見積手法である積み上げ法、ファンクションポイント法、類推見積法の特徴を対応付ける問題で、正解はアです。積み上げ法は個々の作業を洗い出し、作業ごとの工数を見積もって合計します。ファンクションポイント法は入出力などの機能を数えてソフトウェアの規模を求め、生産性などの係数を掛けて工数やコストに換算します。類推見積法は過去の似たプロジェクトの実績を基に見積もる手法で、詳細が決まっていない初期段階でも使えます。記述の中の「作業ごと」「機能・入出力」「過去の事例」という語が、手法を見分ける手がかりになります。

解答・解説

正解はアです

この問題のテーマ

ソフトウェア開発のコストを見積もる代表的な3つの手法(積み上げ法、ファンクションポイント法、類推見積法)について、それぞれの特徴を正しく対応付けられるかを問う問題です。

解き方の考え方

記述a〜cのそれぞれから、何を手がかりに見積もっているかを示すキーワードを拾います。aは「個々の作業を洗い出し…集計」なので作業を足し上げる積み上げ法です。bは「過去の事例を活用」なので過去の実績に倣う類推見積法、cは「データ入出力や機能に着目」して規模を求めるのでファンクションポイント法です。最後に、表の中から積み上げ法=a、ファンクションポイント法=c、類推見積法=bの行を探すと、アが該当します。

選択肢ごとの解説

  1. ○ア  積み上げ法:a、ファンクションポイント法:c、類推見積法:b
    積み上げ法にa、ファンクションポイント法にc、類推見積法にbを当てるこの組合せは、3つの手法の特徴とすべて合っています。作業を足し上げる、機能から規模を出す、過去の事例に倣う、という各手法の考え方がそのまま対応しています。
  2. ×イ  積み上げ法:b、ファンクションポイント法:a、類推見積法:c
    積み上げ法にbを当てていますが、過去の事例を活用するbは類推見積法の特徴です。また、個々の作業の工数を集計するaは積み上げ法の説明なので、ファンクションポイント法には当たりません。類推見積法に当てたcも、本来はファンクションポイント法の説明です。
  3. ×ウ  積み上げ法:c、ファンクションポイント法:a、類推見積法:b
    類推見積法=bは正しいものの、積み上げ法とファンクションポイント法の対応が入れ替わっています。入出力や機能に着目するcはファンクションポイント法、作業を洗い出して集計するaは積み上げ法の特徴です。
  4. ×エ  積み上げ法:c、ファンクションポイント法:b、類推見積法:a
    3つの手法すべてで対応を誤っています。たとえば類推見積法に当てたaは、作業を洗い出して工数を集計する積み上げ法の特徴です。過去事例を使うbをファンクションポイント法に当てているのも誤りです。

補足

ファンクションポイント法は機能の量で規模を測るため、プログラミング言語の違いに左右されにくい点が特徴です。積み上げ法は細かく分解するほど精度が上がりますが、作業の洗い出し漏れがあると見積りが過小になります。類推見積法は、どの事例を参考にするかで精度が大きく変わります。「初期段階」という語が出てきたら、まず類推見積法を思い浮かべると判断しやすくなります。

POINT

  • 積み上げ法は、WBSなどで作業を細かく分解し、作業ごとの工数を見積もって合計する手法です。
  • ファンクションポイント法は、入出力や内部ファイルなど利用者から見た機能を数え、機能の数と難易度に応じた点数で規模を求める手法です。
  • 類推見積法は、過去の類似したシステムやプロジェクトの実績を基に見積もる手法で、作業の詳細がまだ決まっていない初期段階でも使えます。
  • 記述の中の「作業ごと」「機能・入出力」「過去の事例」という語が、それぞれ積み上げ法、ファンクションポイント法、類推見積法を見分ける手がかりになります。

※出典:令和6年度 ITパスポート試験 問49(一部改変)