Skip to content

平成26年度 秋期 ITパスポート試験 問88

This question's explanation and your answers so far.

問88
頻出度★★★

機械メーカのS社では,製品Xに組み込むソフトウェア(以下,Xソフトという)の開発作業A~Hを表1のように計画した。ここで,前作業とは当該作業を開始する前に終了していなければならない作業のことであり,各作業は前作業が終了すればすぐに開始する。各作業に掛かった費用は,各作業完了時に計上する。 表1 Xソフト開発の作業

作業日数費用前作業
A25なし
B37A
C44B
D45A
E56D
F25A
G66D, F
H712C, E, G

図1は,表1に基づいて作成したアローダイアグラムである。 前作業が終了していないことが原因で, 作業Hの開始が1日遅れるという状況が発生した。遅れた原因と考えられるものとして, 適切なものはどれか。

出典 平成26年度 秋期 ITパスポート試験 問88
解説

問 88

  • Incorrectア

    If the completion of task C is delayed by 3 days, its finish becomes 9+3=12. However, H's start is originally determined by G's finish of 12, so even if C finishes at 12 the maximum is still 12 and H's start does not move from 12. C's slack (float) is exactly 12−9=3 days, and a 3-day delay only uses up that slack; H's start is not delayed by even one day. It therefore cannot be the cause of the delay.

  • イ

    正解 The correct answer is イ. First, using the durations and preceding tasks in Table 1 (Question 86), lay out the earliest schedule on the assumption that each task starts as soon as its preceding tasks finish. A has no preceding task, so it runs from day 0 to day 2; B comes after A, 2 to 5; C comes after B, 5 to 9; D comes after A, 2 to 6; E comes after D, 6 to 11; F comes after A, 2 to 4; G can begin only after both D and F have finished, so it starts at max(6, 4)=6 and runs 6 to 12; and H begins only after C, E, and G have all finished, so its start is max(9, 11, 12)=12. In other words, what directly determines H's start day is the finish of G (12), while C finishes at 9 and therefore has 3 days until 12, and E finishes at 11 and therefore has 1 day of slack (float). Now, H's start being delayed by one day to 13 means that the finish of one of its preceding tasks was pushed out to 13. In the case of C, its original finish of 9 has 3 days of slack, so up to a 3-day delay (finish at 12) it merely ties with G and H is not delayed. Only with a 4-day delay does its finish become 13, moving H's start from 12 to 13, exactly one day later. Therefore イ, which states that the completion of task C was delayed by 4 days, is the appropriate cause that explains this situation.

  • Incorrectウ

    If the completion of task F is delayed by 1 day, its finish becomes 4+1=5. But G has two preceding tasks, D and F, and D finishes at 6, so G still starts at max(6, 5)=6, unchanged, and G still finishes at 12. As a result, H's start of 12 does not change either. F is not on the critical path and has 6−4=2 days of slack, so a 1-day delay is completely absorbed.

  • Incorrectエ

    If the completion of task F is delayed by 2 days, its finish becomes 4+2=6, which is exactly the same as D's finish of 6, so G still starts at max(6, 6)=6 and still finishes at 12. This merely uses up F's 2 days of slack exactly, so H's start of 12 is unchanged. A delay of F starts to affect H only when it is 3 days or more, so a 2-day delay is not appropriate as the cause.

ここがポイント
  • How to find the earliest start time from the relationships between preceding tasks: a task's start is determined by the maximum of the finish times of all its preceding tasks. In this question, H's start is determined by 12, the largest among C(9), E(11), and G(12), and this path (A→D→G→H) is the critical path.
  • Slack (float) and the propagation of delay: tasks that are not on the critical path have slack, and a delay within that number of days does not affect the overall schedule. C has 12−9=3 days of slack and F has 6−4=2 days, so to delay the whole schedule by one day, C would need a 4-day delay and F a 3-day delay. Grasp the relationship that the delay in days minus the days of slack is the amount of delay passed on to the following tasks.
用語

Your answers