応用情報技術者 2012年 秋期 午後 問10
プロジェクト計画に関する次の記述を読んで、設問1~3に答えよ。
文具類の販売を行うZ社では、販売予算システムを開発することになった。販売予算システムは、予算登録、予算集計、承認ワークフローの三つのサブシステムから構成される。システム部のY君が、プロジェクトマネージャに任命され、スケジュールを立案することになった。
〔アクティビティリストとプロジェクトスケジュールネットワーク図の作成〕
プロジェクトでは、販売予算システム全体を対象に基本設計を行った後、各サブシステムの詳細設計を開始する。詳細設計では、サブシステムを構成する全てのプログラムの画面項目や処理内容の詳細仕様を決定し、最後にレビューを行う。詳細設計、プログラム作成・テスト、結合テストは、サブシステムごとに行い、サブシステム同士は同時並行に開発を行うことができる。全てのサブシステムの結合テストが完了すると、システム結合テストを開始する。
Y君は、必要なアクティビティ、順序と所要期間を、表1のアクティビティリストにまとめた。

各サブシステムの作業は、表2のサブシステム作業要員リストに基づいて行う。

Y君は、表1を基に、図1のプロジェクトスケジュールネットワーク図を作成した。

アクティビティの最早開始日、最早終了日、最遅開始日、最遅終了日はプロジェクトの開始日を1日目とした日数で表し、休日は考慮しない。最早終了日と最遅終了日の差は余裕日数である。プロジェクトの完了予定日は、開始から185日目となった。
〔プロジェクト期間短縮の検討〕
Y君がプロジェクトの完了予定日を上司に報告したところ、多少コストが増えても構わないから、期間短縮を検討するよう指示された。そこでY君は、期間短縮策として、次の二つの方式を検討した。
方式1:他のプログラムと独立した機能については、サブシステムを構成する個々のプログラムの詳細設計を完了する都度、最後のレビューを待たずに、逐次プログラム作成・テストに着手する。詳細設計とプログラム作成・テストを並行して行うことによって期間を短縮する。予算登録サブシステムでは、設計者とプログラマの日程調整を行えば、この方式で、プログラム作成・テストの開始を20日間早められることが分かった。以後、表1の所要期間のままで、予算登録サブシステムのプログラム作成・テスト完了までの期間を20日間短縮できる。予算集計と承認ワークフローの各サブシステムについては、開発体制などの理由によって、この方式での期間の短縮はできないことが分かった。
方式2:プログラム作成・テストにプログラマを追加投入することによって、期間を短縮する。Y君は、各サブシステムの所要期間の短縮と必要なコストを検討し、表3のプログラム作成・テストの期間短縮策の候補一覧を作成した。表3の番号①~③の期間短縮策の候補は、複数を同時に実施することができる。ただし、それぞれは1回ずつしか実施できない。


〔プロジェクト実施要員変更の検討〕
Y君が部内の要員の作業計画を立案していたところ、上司から、R君をより優先度が高い別のプロジェクトに従事させたいので、期間短縮はできなくてもよいから、R君が担当する予定だった作業をQ君に担当させられないか、再検討するよう指示された。そこでY君は、R君と同等の能力をもつQ君が予算集計と承認ワークフローの作業を当初予定の所要期間で順次行うことにし、図1のプロジェクトスケジュールネットワーク図を見直した。見直し後のプロジェクトスケジュールネットワーク図を、図2に示す。

設問1:
図1において、クリティカルパスを構成する一連のアクティビティは何か。連のアクティビティの記号を、順序に従って、“、”で区切って全て答えよ。
模範解答
A, B1, B2, B3, E
解説
解答の論理構成
- クリティカルパスとは、最早終了日と最遅終了日が一致し、すなわち余裕日数が 0 になっているアクティビティ列です。
図1の凡例には「ES:最早開始日」「EF:最早終了日」「LS:最遅開始日」「LF:最遅終了日」と示されています。 - 図1の各アクティビティを確認すると、
- 「A」の上下段はともに「1 75」で、余裕 0。
- 「B1」は「76」「105」で上下段が一致し余裕 0。
- 「B2」は「106」「135」で上下段が一致し余裕 0。
- 「B3」は「136」「155」で上下段が一致し余裕 0。
- 「E」は「156」「185」で上下段が一致し余裕 0。
これらはすべて余裕日数 0 で直列に接続されています。
- 他経路の例として「C1」は上段「76」「100」、下段「86」「110」と 10 日の余裕があります。したがって C 系列はクリティカルパスになり得ません。同様に「D1」以下も余裕があります。
- 以上より、余裕 0 で連続する経路は
「A, B1, B2, B3, E」
だけであり、プロジェクト全体の期間「185」日を規定しているクリティカルパスになります。
誤りやすいポイント
- 「図1」で上下段の数字が異なる場合は余裕があることを見落とし、C 系列や D 系列を誤って選択する。
- クリティカルパスに必ず終端アクティビティ「E」を含めることを失念し、「B3」までで止めてしまう。
- 所要期間だけを合計して最長経路を探そうとし、ネットワーク図上の制約(分岐・合流)を無視してしまう。
FAQ
Q: クリティカルパスは常に最長所要日数の経路ですか?
A: はい。プロジェクト完了日を決定する最長経路であり、余裕日数が 0 になります。
A: はい。プロジェクト完了日を決定する最長経路であり、余裕日数が 0 になります。
Q: 途中で余裕 0 のアクティビティが複数ある場合、すべて同じクリティカルパス上ですか?
A: 接続関係が連続していれば同一クリティカルパス上にありますが、分岐後に再合流するケースでは異なるパスに余裕 0 が発生することもあります。図を確認して連続しているかを判断してください。
A: 接続関係が連続していれば同一クリティカルパス上にありますが、分岐後に再合流するケースでは異なるパスに余裕 0 が発生することもあります。図を確認して連続しているかを判断してください。
Q: クリティカルパス上の作業を短縮すると、プロジェクト全体の期間は必ず短縮されますか?
A: そのとおりです。クリティカルパス上の所要期間が短くなると、プロジェクト完了日も同じだけ前倒しされます。
A: そのとおりです。クリティカルパス上の所要期間が短くなると、プロジェクト完了日も同じだけ前倒しされます。
関連キーワード: クリティカルパス、アクティビティ、最早開始日、最遅終了日、余裕日数
設問2:Y君の考えた期間短縮策について、図1を基に(1)〜(3)に答えよ。
(1)方式1及び方式2それぞれの所要期間短縮方法の名称を解答群の中から選び、記号で答えよ。また、各方式によって、プロジェクトの完了予定日は、最短で開始から何日目にすることが可能かを答えよ。
解答群
ア:クラッシング
イ:シミュレーション
ウ:ファストトラッキング
エ:平準化
オ:リードタイム
模範解答
方式1:
名称:ウ
完了予定日:175
方式2:
名称:ア
完了予定日:170
解説
解答の論理構成
-
方式1の本質
- 問題文には「方式1:…詳細設計とプログラム作成・テストを並行して行うことによって期間を短縮する。」とあります。
- “順序関係にある作業を並列実行して日程を前倒しする”手法はプロジェクトマネジメント知識体系で Fast Tracking と呼ばれます。解答群の該当語は「ウ:ファストトラッキング」です。
-
方式1による完了予定日の計算
- 表1で A→B1→B2→B3→E の所要日数は「75+30+30+20+30=185」。
- 方式1では「プログラム作成・テストの開始を20日間早められる」と明記されており、B1 と B2 が 20 日重なるため B1+B2 が「60→40」に短縮。
- A–B 系列は「75+40+20+30=165」。
- しかし E は「B3, C3, D3」の完了を待つ必要があります。C 系列は 145 日、D 系列は 115 日で終わるので、E の最早開始は 146 日目、E 自身が 30 日なので完了は「146+29=175」日目。
- よって方式1で達成できる最短日は「175」。
-
方式2の本質
- 問題文には「方式2:プログラム作成・テストにプログラマを追加投入することによって、期間を短縮する。」とあります。
- “追加コストをかけて作業期間を直接短縮する”手法は Crashing と呼ばれます。解答群では「ア:クラッシング」が該当します。
-
方式2による完了予定日の計算
- 表3の候補①~③は同時実施可能。
- 現行クリティカルパスは A→B1→B2→B3→E(185 日)。
- 候補①「B2 30→15」で 15 日短縮すると A–B 系列は 170 日になるが、A–C 系列(175 日)が新クリティカルパスに繰り上がり完了は 175 日のまま。
- 候補②「C2 25→15」で A–C 系列が 10 日短縮し 165 日になる。
- 候補①+②を同時に行うと
・A–B 系列:185−15=170
・A–C 系列:175−10=165
・A–D 系列:145(不変)
最大値は 170 日となり、これが新しいクリティカルパス。 - 候補③を加えても A–B 系列 170 日が依然最長なので 170 日より短くはならない。
- したがって方式2で達成できる最短日は「170」。
-
以上より模範解答と同じ結果に到達します。
- 方式1:ウ(ファストトラッキング)、完了予定日 175
- 方式2:ア(クラッシング)、完了予定日 170
誤りやすいポイント
- B 系列が 20 日短縮された瞬間に「クリティカルパスが必ず B 系列のまま」と思い込み、E の開始条件(B3, C3, D3 同時完了)を見落とす。
- Crashing は「期間短縮=追加要員」で覚えていても、Fast Tracking と混同して語句を逆に選んでしまう。
- 候補①だけで 15 日短縮すると 170 日と計算し、A–C 系列 175 日の存在を忘れる。
FAQ
Q: ファストトラッキングを行うと品質リスクは増えますか?
A: はい。上流工程が終わらないうちに下流工程を開始するため、手戻りの可能性が高まりリスク管理が重要になります。
A: はい。上流工程が終わらないうちに下流工程を開始するため、手戻りの可能性が高まりリスク管理が重要になります。
Q: クラッシングで短縮できる日数はどのように見積もりますか?
A: 通常は作業の生産性曲線や追加要員の熟練度を基に、投入コストと短縮効果のトレードオフ表(今回の表3のような形)を作成して決定します。
A: 通常は作業の生産性曲線や追加要員の熟練度を基に、投入コストと短縮効果のトレードオフ表(今回の表3のような形)を作成して決定します。
Q: 期間短縮後、ガントチャートは必ず引き直すべきですか?
A: はい。クリティカルパスや要員負荷が変わるため、日程とリソース表を更新して関係者に再共有することが推奨されます。
A: はい。クリティカルパスや要員負荷が変わるため、日程とリソース表を更新して関係者に再共有することが推奨されます。
関連キーワード: クリティカルパス、ガントチャート、作業重畳、追加要員投入、コスト‐スケジュールトレードオフ
設問2:Y君の考えた期間短縮策について、図1を基に(1)〜(3)に答えよ。
(2)表3のプログラム作成・テストの期間短縮策の候補の中で、単独で実施しても、他の候補と組み合わせて実施しても、プロジェクト期間の短縮に貢献しないものはどれか。①〜③の番号で答えよ。
模範解答
③
解説
解答の論理構成
-
現状のクリティカルパスを確認
- 表1によれば、全体に共通する「A 基本設計 75 日」の後、
「B1 30 日 → B2 30 日 → B3 20 日 → E 30 日」と続く経路の合計は
75 + 30 + 30 + 20 + 30 = 185 日 です。 - 問題文に「プロジェクトの完了予定日は、開始から185日目」とあることからも、この “A‐B1‐B2‐B3‐E” がクリティカルパスであると分かります。
- 表1によれば、全体に共通する「A 基本設計 75 日」の後、
「B1 30 日 → B2 30 日 → B3 20 日 → E 30 日」と続く経路の合計は
-
候補①~③を単独で実施した場合
- 番号①は「B2 短縮前30 日 → 短縮後15 日」。
クリティカルパス上の作業を 15 日 短縮するので、プロジェクト全体も 185 日 → 170 日 になります。 - 番号②は「C2 短縮前25 日 → 短縮後15 日」。
C 系列は元々 175 日 で 10 日の余裕があるため、②だけでは クリティカルパスは依然 185 日 のままです。 - 番号③は「D2 短縮前15 日 → 短縮後10 日」。
D 系列は元々 145 日 なので、③だけでもやはり 185 日 のままです。
- 番号①は「B2 短縮前30 日 → 短縮後15 日」。
-
組み合わせて実施した場合
- ①+②
①で B 系列が 170 日、②で C 系列が 165 日 となり、プロジェクトは 170 日。②も期間短縮に貢献しています。 - ①+③
B 系列 170 日、C 系列 175 日、D 系列 140 日。クリティカルパスは C 系列になり 175 日。③は効果なし。 - ②+③
B 系列は変わらず 185 日。どちらも効果なし。 - ①+②+③
B 系列 170 日、C 系列 165 日、D 系列 140 日。プロジェクトは 170 日。③は依然効果なし。
- ①+②
-
結論
番号③「D2 短縮前15 日 → 短縮後10 日」は、単独でも他候補と同時でもクリティカルパスを短縮できません。
よって解答は ③ です。
誤りやすいポイント
- 追加コストの大小で判断してしまう
(短縮に効果があるかどうかはコストではなくクリティカルパス上かどうかで決まります)。 - “短縮すれば必ず期間も短くなる” と思い込み、余裕(フロート)を確認しない。
- ①を適用した後のクリティカルパスが C 系列に移ることに気付かず、②の効果を過小評価してしまう。
FAQ
Q: クリティカルパスはどうやって決まりますか?
A: 全経路の所要期間を合計し、最長になる経路がクリティカルパスです。その経路上の作業は余裕が0日なので、1日でも短縮すればプロジェクト全体が同じだけ短縮します。
A: 全経路の所要期間を合計し、最長になる経路がクリティカルパスです。その経路上の作業は余裕が0日なので、1日でも短縮すればプロジェクト全体が同じだけ短縮します。
Q: 番号②は単独では効果がないのに、①と同時に実施すると効果が出るのはなぜですか?
A: ①を実施するとクリティカルパスが B 系列から C 系列に移動します。その状態で C 系列の②を短縮すると、新しいクリティカルパスがさらに短くなり、結果としてプロジェクト期間も短縮されます。
A: ①を実施するとクリティカルパスが B 系列から C 系列に移動します。その状態で C 系列の②を短縮すると、新しいクリティカルパスがさらに短くなり、結果としてプロジェクト期間も短縮されます。
Q: ③はまったく効果がないのですか?
A: 本問題の範囲(①~③を一度ずつしか適用できない条件)では効果がありません。他のアクティビティをさらに短縮できる余地があれば、③にも意味が出る場合があります。
A: 本問題の範囲(①~③を一度ずつしか適用できない条件)では効果がありません。他のアクティビティをさらに短縮できる余地があれば、③にも意味が出る場合があります。
関連キーワード: クリティカルパス、アクティビティ、フロート、ネットワーク図、プロジェクト短縮
設問2:Y君の考えた期間短縮策について、図1を基に(1)〜(3)に答えよ。
(3)方式2において、プロジェクト全体の期間を最大限短縮するために最低限必要な追加コストは何万円か。
模範解答
300
解説
解答の論理構成
-
クリティカルパスの確認
- 図1より、最早‐最遅が同じで余裕のない経路は
“記号”「A」→「B1」→「B2」→「B3」→「E」で、所要日数は
「75」+「30」+「30」+「20」+「30」=「185」日です。 - よって、この経路がプロジェクト期間を決めています。
- 図1より、最早‐最遅が同じで余裕のない経路は
-
方式2の候補が与える影響
表3の短縮策は次のとおりです。 -
①のみを実施した場合
- クリティカルパスの「B2」が15日短くなり、経路長は
75+30+15+20+30=170日。 - ただし経路「A」→「C1」→「C2」→「C3」→「E」は
75+25+25+20+30=175日で新たに最長となり、結果の期間は「175」日。 - 短縮効果は「10」日。
- クリティカルパスの「B2」が15日短くなり、経路長は
-
①+②を実施した場合
- 「C2」をさらに10日短縮すると同経路は
75+25+15+20+30=165日。 - 再び「A」→「B1」→「B2」→「B3」→「E」(170日)が最長となり、 プロジェクト期間は「170」日。
- 短縮効果は合計「15」日(185→170)。
- 「C2」をさらに10日短縮すると同経路は
-
①+②+③を実施した場合
- 「D」系はもともと最長ではなく、③を加えても170日を下回るため
プロジェクト期間は変化しません。 - 追加コストだけが増える非効率策となります。
- 「D」系はもともと最長ではなく、③を加えても170日を下回るため
-
結論
- 最大短縮は「15」日であり、それを達成する最小コストは
①「200」万円+②「100」万円=「300」万円。 - よって解答は「300」。
- 最大短縮は「15」日であり、それを達成する最小コストは
誤りやすいポイント
- クリティカルパスが短縮策の採用で変化することを見落とし、①の効果をそのまま15日と勘違いする。
- ③を追加しても全体期間が縮まらない理由を確認せず、余計なコストを計上してしまう。
- 「複数を同時に実施できる」= 全部入れれば最短、と早合点する。実際にはコスト効率と経路長のバランスが重要。
FAQ
Q: ②だけを採用するとどうなりますか?
A: クリティカルパスは依然として「A‐B1‐B2‐B3‐E」で「185」日のままなので、期間短縮は起きません。
A: クリティカルパスは依然として「A‐B1‐B2‐B3‐E」で「185」日のままなので、期間短縮は起きません。
Q: ①と③を採用した場合の期間とコストは?
A: 期間は①の効果で「175」日、追加コストは「200」+「50」=「250」万円です。②を含めた方が+50万円でさらに5日短縮できます。
A: 期間は①の効果で「175」日、追加コストは「200」+「50」=「250」万円です。②を含めた方が+50万円でさらに5日短縮できます。
Q: 方式1と方式2を組み合わせる設問ではないのですか?
A: 本設問は「方式2において」と限定しています。したがって方式1の“20日間早められる”効果はここでは考慮しません。
A: 本設問は「方式2において」と限定しています。したがって方式1の“20日間早められる”効果はここでは考慮しません。
関連キーワード: クリティカルパス、所要期間短縮、アクティビティ、追加コスト、スケジュールネットワーク
設問3:
図2中のa〜dに入れる適切な数値を答えよ。
模範解答
a:101
b:115
c:111
d:125
解説
解答の論理構成
- 依存関係の確認
【問題文】には
・“基本設計(記号 A)” 完了後に各サブシステムの詳細設計が始まる
・見直し後は “C1 から下方向に…矢印が…『D1』に接続”
とあるので、D1 は “A と C1 がともに終わってから着手” という条件になります。 - D1 の最早開始日 ES=a
A の EF は “1―75”、C1 の EF は “76―100” なので、 ES(D1) = 100+1 = 101(引用:図2の C1 の EF が “100”) - D1 の最早終了日 EF=b
所要期間は【表1】の “D1…15 日”。
EF(D1) = 101+15-1 = 115 - 後ろ向き計算(遅れ日数の算出)
D1 の後続は “D2” と “C2 系列” の 2 経路です。
・D2 について
LS(D2) は後続 “D3→E” から逆算し 131(図2の D2 下段左)。
ここから求めると LS(D1)=131-1-15+1=116 となります。
・C 系列について
C2 は “LS=111”(図2の C2 下段左)。
この 111 が D1 の締切を 5 日早めるため、 LF(D1)=111-1=110+15=125、LS(D1)=125-15+1=111
2 経路のうち “より厳しい(小さい)値” を採用するのが PERT/CPM のルールです。
したがって
LS(D1)=c=111、LF(D1)=d=125 - 結果
a:101、b:115、c:111、d:125
誤りやすいポイント
- “C1→D1” の矢印を「D1→C1」と読み違え、ES を 76 にしてしまう。
- 後ろ向き計算で“最も遅くてもよい開始日”は、複数後続があるときに「最小の LS-1」を取る手順を忘れる。
- Duration 計算を として 1 日ずれてしまう(正しくは )。
FAQ
Q: 前後 1 日を足し引きする理由は何ですか?
A: 本問は “開始日を 1 日目と数え、終了日も日数に含める” という前提なので、 「次の作業は前作業の終了日の翌日から開始」です。したがって
前向き計算では +1、後ろ向き計算では −1 を入れます。
A: 本問は “開始日を 1 日目と数え、終了日も日数に含める” という前提なので、 「次の作業は前作業の終了日の翌日から開始」です。したがって
前向き計算では +1、後ろ向き計算では −1 を入れます。
Q: LS を求めるとき、後続が複数なら平均を取るのですか?
A: いいえ。“最も早く着手しなければならない(=制約の厳しい)後続” を基準にします。
具体的には「後続の LS の最小値 −1」を使います。
A: いいえ。“最も早く着手しなければならない(=制約の厳しい)後続” を基準にします。
具体的には「後続の LS の最小値 −1」を使います。
Q: 余裕日数はどこで確認できますか?
A: 図中の “最遅終了日−最早終了日” です。D1 の場合は 125−115=10 日が余裕です。
A: 図中の “最遅終了日−最早終了日” です。D1 の場合は 125−115=10 日が余裕です。
関連キーワード: PERT, クリティカルパス、前方計算、後方計算、余裕日数


