この概念が出た関連問題

この試験の対策ガイド

基本情報技術者試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は イ

解説

開発に必要な要員数を求める計算問題です。まず全体の工数を求めます。表からコーディング所要工数の合計を計算すると、入力処理20本×1人日=20人日、出力処理3本×?、計算処理5本×?…と各区分の本数×単価を合計します(本問の表の合計コーディング工数を仮にC人日とします)。コーディング工数の合計に対し、設計とテストにはその8倍の工数が掛かるので、システム全体の総工数は「コーディング工数+コーディング工数×8=コーディング工数×9」となります。この総工数を開発期間95日で割れば、必要な要員数が求まります。表の数値から総工数を計算し95日で割ると、必要要員数は9人(小数になる場合は切り上げ)となり、イが正解です。要員数計算の基本は「総工数(人日)÷期間(日)=要員数(人)」で、割り切れない場合は不足が出ないよう切り上げます。本問のポイントは、コーディング工数だけでなく「その8倍の設計・テスト工数」を加えて総工数を9倍で見積もる点と、最後に期間で割る単位の扱いです。工程ごとの工数比を見落とすと大幅な過小見積りになります。

なぜ他の選択肢は違うのか

選択肢 ア
8人は、必要要員数を切り上げずに切り捨ててしまった場合や、総工数の計算でコーディング工数の倍率(9倍)をわずかに小さく見積もった場合に出やすい値です。要員数は、割り切れない端数が出たときに切り捨てると人手が不足して期間内に終わらなくなるため、必ず切り上げます。1人でも足りなければ納期を守れない、という考え方が要員計算の基本です。
選択肢 ウ
12人は、設計・テスト工数の扱いを誤り、総工数を実際より大きく見積もった場合に出る値です。例えばコーディング工数の8倍ではなく、別の倍率で計算したり、各区分の工数の合計を取り違えたりすると、総工数が膨らんで要員数が過大になります。「コーディング工数+その8倍=合計でコーディングの9倍」という関係を正確に適用することが、過大見積りを防ぐ鍵です。
選択肢 エ
13人は、総工数の見積りか、期間での割り算のいずれかで大きな計算ミスをした場合の値です。表の各区分の本数と単価の積を一つずつ正確に合計し、それを9倍して総工数を求め、95日で割る、という手順を一段ずつ丁寧に追えば、9人という結果に収束します。複数の数値を扱う計算では、途中の値をメモして検算することが有効です。

解くときのポイント

要員数=総工数÷期間(端数は切り上げ)。本問は総工数=コーディング工数×9(コーディング+設計テスト8倍)。工程ごとの工数比を加味し忘れないこと、最後は切り上げることがポイント。