応用情報技術者 2011年 春期 午前2 問52
問題文
あるプログラムの設計から結合テストまでの開発工程ごとの見積工数を表1に示す。また、この間の開発工程ごとの上級 SE と初級 SEの要員割当てを表2に示す。上級SEは、初級 SE に比べて、プログラム作成・単体テストについて2倍の生産性を有する。表1の見積工数は、上級SEの生産性を基に算出している。
すべての開発工程で、上級 SE を1人追加して割り当てると、この間の開発工程の期間を何か月短縮できるか。ここで、開発工程の期間は重複させないものとし、要員全員が1か月当たり1人月の工数を投入するものとする。

選択肢
ア:1
イ:2
ウ:3
エ:4(正解)
🔒 解説は解答すると表示されます
要員換算による期間短縮【午前2解説】
正解の理由
表1の見積工数は「上級SEの生産性を基に算出」されているため、工程ごとの実働要員を上級SE換算で計算してから工数を割る必要があります。上級SEと初級SEの生産性差は「プログラム作成・単体テストのみ上級が初級の2倍」であり、したがって初級SEはプログラム工程において上級SEの0.5人分として換算します。すべての工程で上級SEを1人追加したときの各工程の期間を計算すると、設計は か月 → か月、プログラムは か月 → か月、結合は か月 → か月となり、合計で か月の短縮になります。よって選択肢は エ(4か月短縮)が正しいです。
解法ステップ
- 表2の各工程の「実質上級SE換算人数」を求める。
- 上級SEはそのまま1人=1(上級換算)。
- 初級SEはプログラム工程のみ上級の0.5倍なので、プログラム工程に限り1人=0.5(上級換算)。
- 各工程の期間を「見積工数 ÷ 実質上級SE換算人数」で算出する(見積工数は上級SE基準の人月)。
- 「上級SEを1人追加」した後の換算人数で各工程期間を再算出する。
- 全工程期間の差を取る。
具体的計算:
- 初期の実質上級SE換算人数
- 設計: 上級2、初級0 → 実質 =
- プログラム: 上級2、初級2 → 実質 =
- 結合: 上級2、初級0 → 実質 =
- 初期の工程期間
- 設計: か月
- プログラム: か月
- 結合: か月
- 合計 = か月
- 追加後(各工程に上級SEを+1)の実質換算人数
- 設計:
- プログラム:
- 結合:
- 追加後の工程期間
- 設計: か月
- プログラム: か月
- 結合: か月
- 合計 = か月
- 短縮 = か月
以上から、正解は エ(4か月短縮)です。
選択肢別の誤答解説
- ア: 1
- 1か月短縮になる誤りは、追加人員の効果を一工程(例えばプログラム工程のみ)に限定して計算した場合に出やすい値です。本問は「すべての工程で上級SEを1人追加」するため、全工程での再計算が必要です。
- イ: 2
- 2か月短縮は、設計とプログラムの短縮のみを考慮して結合テストの短縮を見落とした場合や、初級SEを上級と同等に扱って換算を行わなかった場合に生じる誤りです。結合テストは上級のみで割り当てられており、ここも短縮が生じます。
- ウ: 3
- 3か月短縮は、結合テストの短縮量を1か月と誤認(本来は2か月短縮)した場合などに出る値です。結合は か月から か月へ2か月短縮される点を見落とすとこの誤りに陥ります。
- エ: 4(正答)
- 上記のように各工程で正しく上級換算を行い、工数÷実質要員で期間を再計算すると合計で4か月短縮になります。
よくある誤解
- 初級SEを上級SEと同じ生産性とみなしてしまう
- 問題文に「プログラム作成・単体テストについて2倍の生産性」とあるため、初級はその工程で上級の0.5に換算する必要があります。
- 生産性換算をプログラム工程以外にも適用してしまう
- 生産性差は「プログラム作成・単体テストについて」だけと限定されているため、設計や結合テストで初級の換算を行うのは誤りです。
- 工程の期間短縮を重複(並行)させて合算する考え方
- 問題は「開発工程の期間は重複させない」と明示しているため、各工程の期間短縮は直列に合計します。
補足コラム
- 一般式として、各工程iの期間は次で表されます。
見積工数が「上級SE基準」である場合、この換算を必ず行ってください。 - 実務では人月÷人数で出た値が小数になることが多く、切り上げ・切り下げのルールをプロジェクトで定める必要があります。本問では整数で割り切れているため明確です。
FAQ
Q1: 初級SEの0.5換算は全工程に適用すべきですか?
A1: いいえ。本問では「プログラム作成・単体テストについて2倍の生産性」とあるため、初級SEの換算(0.5)はその工程に限って適用します。設計・結合では初級の割当がないか、差が述べられていればそれに従います。
A1: いいえ。本問では「プログラム作成・単体テストについて2倍の生産性」とあるため、初級SEの換算(0.5)はその工程に限って適用します。設計・結合では初級の割当がないか、差が述べられていればそれに従います。
Q2: 表1が上級SE基準でない場合はどうなりますか?
A2: 表1の基準が変われば換算の方向が変わります。見積が「混成基準」や「初級基準」であれば、逆に上級を初級換算するなど適切な換算を行ってから期間を算出してください。
A2: 表1の基準が変われば換算の方向が変わります。見積が「混成基準」や「初級基準」であれば、逆に上級を初級換算するなど適切な換算を行ってから期間を算出してください。
Q3: 追加人員を「ある工程にのみ」割り当てる場合の考え方は?
A3: 割り当てる工程だけの実質換算人数を変え、その工程の期間のみ再計算します。今回のように「すべての工程で追加」する場合は全工程を再計算します。
A3: 割り当てる工程だけの実質換算人数を変え、その工程の期間のみ再計算します。今回のように「すべての工程で追加」する場合は全工程を再計算します。
関連キーワード: 要員換算、生産性換算、工数÷人数、人月、工程別期間短縮

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

