マナビング基本情報技術者

開発工数から必要な最少要員数をどう求めるか

基本情報技術者試験 平成31年度春期 午前 問54 / プロジェクトマネジメント › プロジェクトの資源

過去問にチャレンジ

平成31年度春期 午前 問54

システムを構成するプログラムの本数とプログラム1本当たりのコーディング所要工数が表のとおりであるとき、システムを95日間で開発するには少なくとも何人の要員が必要か。ここで、システムの開発にはコーディングのほかに、設計及びテストの作業が必要であり、それらの作業にはコーディング所要工数の8倍の工数が掛かるものとする。

平成31年度春期 午前 問54の図
  1. ア

    8

  2. イ

    9

  3. ウ

    12

  4. エ

    13

会話形式の解説

講師講師
まず、表の工数はプログラム1本当たりの値です。種類ごとに、本数を掛けるとどうなりますか。
受験者受験者
入力処理が20×1=20人日、出力処理が10×3=30人日、計算処理が5×9=45人日です。合計は95人日です。
講師講師
その95人日はコーディングだけの工数です。設計とテストの分はどう計算しますか。
受験者受験者
コーディング工数の8倍なので、95×8=760人日です。これをそのまま開発全体の工数にしてよいですか。
講師講師
760人日は設計とテストの分です。コーディングの95人日も必要なので、全体では95+760=855人日です。
受験者受験者
8倍という数字だけを見て、760÷95=8人としそうでした。8人ではコーディングの分が抜けますね。
講師講師
はい。8人が95日間で担当できるのは760人日で、必要な855人日に95人日足りません。
受験者受験者
全体の855人日を95日で割ると9人です。9人ならちょうど担当できます。
講師講師
そのとおりです。8人では不足するので、9人が最少人数です。
受験者受験者
12人や13人でも期限内に終えられますが、「少なくとも」と聞かれているので選ばないのですね。
講師講師
はい。必要人数を求めるときは、全体の工数を日数で割ります。端数が出た場合は、人数として切り上げます。

まとめ

プログラムの本数に1本当たりの工数を掛けて合計すると、コーディング工数は95人日です。設計とテストにはその8倍の760人日が掛かるため、開発全体では855人日になります。855人日を95日で割ると9人で、8人では足りません。したがって、必要な最少人数は9人です。

解答・解説

正解はイです

この問題のテーマ

プログラムごとのコーディング工数から開発全体の工数を求め、期限内に必要な最少人数を計算する問題です。

解き方の考え方

表から、入力処理は20本×1人日=20人日、出力処理は10本×3人日=30人日、計算処理は5本×9人日=45人日です。コーディングは合計95人日で、設計とテストにはその8倍の760人日が掛かるため、開発全体では855人日です。95日間で終えるために必要な人数は855÷95=9人となり、正解のイと一致します。

選択肢ごとの解説

  1. ×ア  8
    8人が95日間で担当できるのは760人日です。開発全体に必要な工数より95人日少ないため、期限内に終えられません。
  2. ○イ  9
    9人なら、95日間で必要な工数をちょうど担当できます。8人では不足するので、9人が最少人数です。
  3. ×ウ  12
    12人なら期限内に必要な工数を担当できます。しかし、9人で足りるため、「少なくとも何人」という問いの答えにはなりません。
  4. ×エ  13
    13人でも期限内に必要な工数を担当できます。ただし、必要な最少人数を超えているので、この設問では選びません。

POINT

  • 表の工数はプログラム1本当たりなので、種類ごとに本数を掛けてから合計します。
  • 「コーディング所要工数の8倍」は設計とテストの合計分であり、コーディング分も開発全体の工数に含めます。
  • 必要人数は総工数を開発日数で割り、端数が出た場合は人数として切り上げます。

※出典:平成31年度春期 基本情報技術者試験 午前 問54(一部改変)