問44
頻出度★★★
要件定義後の外部設計, 内部設計, プログラミング, 結合テスト, システムテストを行う開発プロジェクトにおいて, 生産性を規模÷工数で表すものとする。プログラミングの生産性を1とした場合の内部設計と結合テストの生産性は2, 外部設計とシステムテストの生産性は4である。外部設計に1人月を要するとき, プロジェクト全体の工数は何人月必要か。
这道题的解析和你的作答记录。
要件定義後の外部設計, 内部設計, プログラミング, 結合テスト, システムテストを行う開発プロジェクトにおいて, 生産性を規模÷工数で表すものとする。プログラミングの生産性を1とした場合の内部設計と結合テストの生産性は2, 外部設計とシステムテストの生産性は4である。外部設計に1人月を要するとき, プロジェクト全体の工数は何人月必要か。
5 相当于把规模错误地设为 2 时的合计(0.5+1+2+1+0.5 = 5)等情况。没有从外部设计为 1 人月、生产率为 4 这一条件正确推导出规模 = 4,导致所有阶段的工时都偏小。
7 是像外部设计 1 + 内部设计 2 + 编程 4 = 7 这样,漏算了集成测试(2 人月)和系统测试(1 人月)工时的结果。没有把全部 5 个阶段相加,因此错误。
正解 由于生产率 = 规模 ÷ 工时,所以工时 = 规模 ÷ 生产率。开发规模在所有阶段都是相同的值。作为基准的外部设计生产率为 4、需要 1 人月的工时,因此规模 = 生产率 × 工时 = 4×1 = 4。各阶段的工时为:外部设计 = 4÷4 = 1 人月,内部设计 = 4÷2 = 2 人月,编程 = 4÷1 = 4 人月,集成测试 = 4÷2 = 2 人月,系统测试 = 4÷4 = 1 人月。合计为 1+2+4+2+1 = 10 人月,因此正确答案是「ウ」。
13 是把生产率的数值直接当作各阶段的工时,算成 4+2+1+2+4 = 13 的错误。混淆了生产率越高的阶段工时越小(成反比)这一关系。