戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

応用情報技術者 2022年 秋期 午前252


問題文

図は、実施する三つのアクティビティについて、プレシデンスダイアグラム法を用いて、依存関係及び必要な作業日数を示したものである。全ての作業を完了するための所要日数は最少で何日か。
応用情報技術者 2022年 秋期 午前2 問52の問題画像

選択肢

11
12(正解)
13
14

🔒 解説は解答すると表示されます

リードとラグの工期計算【午前2解説】

正解の理由

プレシデンスダイアグラムでの関係を正しく式に落とし込むと、各アクティビティの開始・終了時点は次のようになります。Aは開始から6日で終了し、A→Bは「終了―開始(リード2日)」なのでBはAの終了の2日前に開始します。B→Cは「開始―開始(ラグ3日)」なのでCはBの開始の3日後に開始します。これらを計算すると、A終了=6日、B開始=4日、B終了=11日、C開始=7日、C終了=12日となり、全作業の完了は最大値の12日です。したがって正解は (12日)です。

解法ステップ

  1. 各アクティビティの所要日数を確認
    • A:6日、B:7日、C:5日
  2. 関係の意味を数式化する(リードは負のラグと考える)
    • 終了―開始(リード2日): B_start = A_finish − 2
    • 開始―開始(ラグ3日): C_start = B_start + 3
  3. Aを時間0に開始すると仮定して計算する
    • A_start = 0 → A_finish = 0 + 6 =
    • B_start = A_finish − 2 =
    • B_finish = B_start + 7 =
    • C_start = B_start + 3 =
    • C_finish = C_start + 5 =
  4. 全体の所要日数は全作業の終了時刻の最大値 → max(6, 11, 12) =

選択肢別の誤答解説

  • ア:11日
    誤りの典型例は「Bの終了(11日)をプロジェクト終了と見なす」場合です。図ではCがBより後に終わるため、Cを無視すると11日になります。ここではCの開始時刻(B開始+3日)を計算せず、Cの存在を見落としていることが原因です。
  • イ:12日(正答)
    前節の通り、リード(B_start = A_finish − 2)とラグ(C_start = B_start + 3)を正しく適用すると全作業完了は12日になります。選択肢表記では がこれに該当します。
  • ウ:13日
    13日となる誤りは「リードを無視してBをA終了後に開始する」といった誤認に由来します。具体的にはB_start を A_finish(6日)として計算すると B_finish = 6 + 7 = 13 となり、そこで終了と見なすと13日になります(この場合もCを正しく処理していないか、B開始を遅らせてしまった誤りです)。
  • エ:14日
    14日になる誤りは「リードを無視してB_start = 6 とし、その上でラグを正しく適用して C_start = B_start + 3 = 9 とした」ケースで説明できます。すると C_finish = 9 + 5 = 14 となります。つまりリードの符号(開始を早める効果)を誤って扱い、B開始を遅らせたため全体が延びる誤りです。

よくある誤解

  • リードは「余分に待つ日数」ではなく、 successor(後続)が前倒しで開始できる負のラグであると理解していない。符号を逆に扱うと開始時刻が遅くなり誤答につながる。
  • 複数の経路がある場合、プロジェクト終了は単一経路の終了ではなく、全アクティビティの終了時刻の最大値で決まる。特定のパスだけ見て判断してしまうミス。
  • 関係タイプ(FS、SSなど)を取り違える。特に「開始―開始」と「終了―開始」は挙動が異なるので要注意。

補足コラム

  • 用語整理:リード(lead)は「後続を前倒しで開始させる日数」で、ラグ(lag)は「後続を遅らせる日数」。一般的にリードは負のラグとして扱います。
  • 汎用式(2アクティビティ間)
    • 終了―開始(FS)でlag = L(負ならリード): succ_start = pred_finish + L
    • 開始―開始(SS)でlag = L: succ_start = pred_start + L
  • 計算手順のコツ:まず各関係式で「開始時刻」を求め、各アクティビティの終了 = 開始 + 所要日数を計算し、最後に最大終了時刻を選ぶ。

FAQ

Q1. リードが「2日」とあるとき、どちらを2日早めるのですか?
A1. 「終了―開始(リード2日)」の場合、後続(ここではB)の開始を前の作業(A)の終了より2日早めます。式では B_start = A_finish − 2 と扱います。
Q2. 複数の前提(複数前任)があるときの開始日はどう決めますか?
A2. それぞれの前任から導かれる開始時刻の制約のうち最も遅い(最大の)開始時刻を採用します。つまり全制約を満たすために最も厳しい制約に従います。

関連キーワード: プレシデンスダイアグラム、リード、ラグ、FS、SS、工期計算、クリティカルパス
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

応用情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について