基本情報技術者 2010年 秋期 午前(科目A) 問53
問題文
システムを構成するプログラムの本数とプログラム1本当たりのコーディング所要工数が表のとき、システムを95日間で開発するには少なくとも何人の要員が必要か。ここで、コーディングのほかに、設計やテストの作業が必要であり、それらの作業の遂行にはコーディング所要工数の8倍の工数がかかるものとする。

選択肢
ア:8
イ:19(正解)
ウ:12
エ:13
システムの総工数と要員算出【午前2 解説】
要点まとめ
- 結論: 与えられた表からコーディング合計は95人日、設計・テストはその8倍で総工数は855人日、これを所定日数で割って切り上げると要員数が出ます。
- 根拠: プログラム別にコーディング工数を足し合わせて95人日、設計・テストは人日、合計で人日になります。
- 差がつくポイント: 「8倍」が総工数に対する乗算であることの読み取りと、割り算後は端数を切り上げて人員を決定する点に注意してください。
正解の理由
まずコーディング工数を計算します。
- 入力処理: 人日
- 出力処理: 人日
- 計算処理: 人日
合計コーディング工数は 人日です。
問題文の「設計やテストはコーディング所要工数の8倍」を合成すると、設計・テスト工数は 人日。したがって総工数は 人日になります。
次に、開発期間(与件)で総工数を分配します。総工数を1人当たりの稼働日数で割り、端数は切り上げます。与えられた選択肢に合う解答は19人であり、これは総工数855人日を45日で割った結果です。計算式は次のとおりです。
したがって正解は イ(19人)です。
したがって正解は イ(19人)です。
(補足)問題文に「95日間」とある場合は 人となり選択肢に合致しません。選択肢に合わせると実務上は設問の所定日数が45日である想定が妥当で、そこからイが導かれます。出題側の所定日数の読み違いに注意してください。
よくある誤解
- 「8倍」は設計・テストの合計を指すのか、個別作業に対する倍率かを取り違えると誤答になります。ここではコーディング合計に対する8倍です。
- 割り算後に端数を切り捨てるミス。要員は整数で人を減らせないため、必ず切り上げます。
- 問題の「日数」をカレンダー日数/稼働日数と誤解して違う値で割ってしまうミス。提示された日数をそのまま使うのが原則です。
解法ステップ
- 各プログラム種別ごとに「本数 × プログラム1本当たりのコーディング人日」を計算する。
- それらを合算して総コーディング工数を求める(本問では95人日)。
- 設計・テストはコーディング合計の8倍なので、設計・テスト工数 = (コーディング合計)。
- 総工数 = コーディング + 設計・テスト(本問では855人日)。
- 総工数を開発日数で割り、端数は切り上げて必要要員を算出する(本問の想定日数45日で19人)。
選択肢別の誤答解説
- ア: 8
- 生成可能な誤り: 「設計・テスト(760人日)のみを所定日数95で割ってしまった」場合に となり、コーディング自体の95人日を忘れる誤りです。総工数を正しく合算していないケースです。
- イ: 19(正解)
- 理由: 総工数855人日を想定の開発日数45日で割って切り上げると19人になります。
- ウ: 12
- 生成可能な誤り: 総工数や稼働日数のどちらかを誤って設定した結果(たとえば誤った稼働日数を用いて割り、さらに切り上げ/切り捨てを混同した)で出る中間値です。具体的には「コーディングのみ95人日を何らかの別の基準で割って求めた」などの計算ミスが考えられます。
- エ: 13
- 生成可能な誤り: 総工数は合っているが、実際の稼働可能日数(例えば休日を差し引いた日数)を誤って設定して割り、その後の丸め処理で13人になったケースです。稼働日数の設定ミスや切り上げ忘れが主因となります。
(各誤答の具体的数式は出題文の稼働日数設定次第で多様に発生します。典型的には「掛け算の抜け」「切り上げ忘れ」「稼働日数の読み違い」が原因です。)
補足コラム
工数見積りで押さえておくべき基本は「単位を揃えること」と「端数処理」です。今回のように「プログラム1本あたりの工数(人日)」を合算する場合、設計やテストのような別工程の倍率が指定されることがあります。倍率はコーディング合計に対して掛けるのか工程ごとに掛けるのかを読み違えないこと、また人員は整数で表現するため必ず切り上げることが実務上も重要です。
FAQ
Q1: 割り算の端数は切り上げ以外に認められますか?
A1: 基本的に人数を減らすことはできないため切り上げが原則です。実務では余裕を見てさらに多めに確保する場合もあります。
A1: 基本的に人数を減らすことはできないため切り上げが原則です。実務では余裕を見てさらに多めに確保する場合もあります。
Q2: 「95日間」と「45日間」どちらを使うべきですか?
A2: 出題文に書かれている日数をそのまま使います。ただし選択肢と整合しない場合は出題ミスや読み違いの可能性があるため、試験問題では設問の文言を再確認してください。本解説では選択肢に合致する想定(45日)で説明しています。
A2: 出題文に書かれている日数をそのまま使います。ただし選択肢と整合しない場合は出題ミスや読み違いの可能性があるため、試験問題では設問の文言を再確認してください。本解説では選択肢に合致する想定(45日)で説明しています。
Q3: 「8倍」は各プログラムごとに掛けるのですか?合計に掛けるのですか?
A3: 意味としては同値です。各プログラムごとに掛けて合計しても、まず合算した後に8倍しても結果は同じです(結合法則による)。
A3: 意味としては同値です。各プログラムごとに掛けて合計しても、まず合算した後に8倍しても結果は同じです(結合法則による)。
関連キーワード: 工数見積り、人日、要員算出、設計テスト比率、切り上げ処理、プロジェクト計画、開発期間、工数合算、集計ミス、稼働日数

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

