令和7年度 春期 応用情報技術者試験 午後 問9 CCPMによるスケジュール管理
この問題は2025(R7)春 応用情報技術者 午後に出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。
本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。
学習ガイド
販売管理システム再構築を題材に、CCPM(クリティカルチェーンプロジェクトマネジメント)を扱う問題です。各作業からバッファを取り除いてプロジェクト末尾に集約する手法の狙いを、パーキンソンの法則と結び付けて説明できるかが鍵になります。発注先選定の加重総和法や、遅延発生時にバッファが何日消費されるかの計算も含まれ、この記事では手法の思想と計算の両面から解答を確認します。
この記事で押さえる論点
- 加重総和法による発注先評価を計算・説明する
- CCPMのバッファ集約の考え方とその心理的効果を述べる
- クリティカルチェーン上の遅延がバッファへ与える影響を計算する
出題情報
- 出題
- 2025(R7)春 応用情報技術者 午後 問9
- 配点
- 20点満点
- 模範解答
- 公表(設問ごとに掲載)
出題趣旨・採点講評(IPA 公表)
“人はバッファを含んだ計画値を与えるとその計画どおりに作業してしまいがちである”というパーキンソンの法則が一般に知られている。CCPM(Critical Chain Project Management)はこれに対応する手法の一つであり,各アクティビティに含まれるバッファを取り除いた後にそれらをつなげることによって納期の遅延を最小限に抑えるものである。本問では,小売業を営む会社の販売管理システムの再構築を題材として,CCPMを適用したプロジェクトのスケジュール作成と管理に関する理解及び応用力を問う。
問9では,小売業を営む会社の販売管理システムの再構築を題材に,CCPM(Critical Chain Project Management)を適用したプロジェクトのスケジュール作成と管理について出題した。全体として正答率は平均的であった。
問題本文
問9 CCPM (Critical Chain Project Management) を用いたプロジェクトのスケジュール管理に関する次の記述を読んで,設問に答えよ。
Z社は,小売業を営む中堅企業である。社内で10年以上利用してきた販売管理システムの老朽化対策として,販売管理の新システムを構築することになった。
〔新システム発注先の選定〕
現行の販売管理システム(以下,現行システムという)は,Z社システム部がZ社内の稼働システム全般の維持管理を委託しているJ社によって開発された。現行システムは,利用部門の業務要求を広く受け入れたことで冗長なシステムになり,費用が膨れてしまった。そこで,Z社システム部は,新システムの構築は現行システムの機能保証にこだわらず,費用を抑える方針とした。
この方針の下で検討を進めた結果,新システムとして,販売管理系のSaaSの標準機能を導入(以下,SaaS導入という)し,業務をSaaSの標準機能に極力合わせ,どうしても合わせられない機能に限りZ社独自の業務要求を追加(以下,SaaSアドオンという)することにした。一方で,本稼働後の新システムの維持管理をJ社に委託する予定で,J社には新システムの構築時に,SaaSと連携させる必要がある現行システムの周辺にある関連システム(以下,現行関連システムという)を改修してもらうことに同意を得ている。なお,新システムの構築期間中は,現行システムの機能変更を最小限にとどめることにした。
Z社システム部のX課長は,販売管理系のSaaSを提供する複数のベンダーにRFI及びRFPを段階的に提出し,それぞれの回答内容を基に発注先候補をK社,L社,M社及びN社に絞った。この4社に提案のプレゼンテーションを依頼し,多基準意思決定分析の加重総和法を用いて発注先候補を評価し,選定することにした。発注先候補を多面的に評価するため,評価項目及び主な評価内容を次のとおりとした。
- 費用: 初期費(SaaS導入費,SaaSアドオン費など),運用費(SaaSライセンス費,SaaS環境利用料など)。ここで,現行関連システムの改修費及び運用費は,どのSaaSを採用しても同額とする。
- 要求充足度: Z社の業務要求の充足度。
- 保守性: SaaSアドオンの維持管理支援ツールの充実度。
- 会社実績: Z社との取引実績,会社の規模・信頼度,業界での導入実績。
- 提案内容: プレゼンテーション,RFP記載事項以外の有効な提案の有無。
各評価項目を5点満点で評価する。評価項目にZ社が重要視する度合いに応じて重みを設定し、評価点数に重みを乗じて再評価し、再評価値を算出する。選定基準として,再評価値の合計が最も大きいベンダーを選定する。ただし,一つでも評価点数が2点以下の評価項目があるベンダーは選定しない。発注先候補の選定評価結果を表1に示す。

図の説明テキスト
表1 発注先候補の選定評価結果
| 評価項目 | 評価項目の重み | 評価点数 K社 | 評価点数 L社 | 評価点数 M社 | 評価点数 N社 |
|---|---|---|---|---|---|
| 費用 | 2.0 | 4 | 3 | 4 | 3 |
| 要求充足度 | 1.5 | 4 | 3 | 5 | 3 |
| 保守性 | 1.0 | 4 | 3 | 5 | 4 |
| 会社実績 | 1.0 | 3 | 4 | 2 | 5 |
| 提案内容 | 1.0 | 4 | 4 | 4 | 5 |
| 注記 評価点数 1:著しく不足, 2:不足, 3:普通, 4:ほぼ十分, 5:十分 |
再評価の結果,X課長は,今回の選定基準に従って a 社(以下,SaaS提供会社という)を選定し,Z社内で承認された。
〔開発スケジュールの作成〕
新システムの構築プロジェクトのPMに任命されたX課長は,部下のY君に開発スケジュールの作成を指示した。Y君は,図1に示すアローダイアグラムを作成した。

図の説明テキスト
図1 Y君が作成したアローダイアグラム
以下の構成要素と依存関係を持つアローダイアグラム:
- 開始ノードから「[A]要件定義 30日」を経てノード1へ。
- ノード1から分岐:
- 「[B]SaaS導入 30日」を経てノード2へ。
- 「[C]SaaSアドオン設計 40日」を経てノード3へ。
- 「[E]現行関連システム設計 10日」を経てノード4へ。
- ノード2からダミーアクティビティ(破線矢印)を経てノード3へ。
- ノード3から「[D]SaaSアドオン開発 60日」を経てノード5へ。
- ノード4から「[F]現行関連システム改修 20日」を経てノード6へ。
- ノード6からダミーアクティビティ(破線矢印)を経てノード5へ。
- ノード5から「[G]システムテスト 20日」を経て終了ノードへ。
凡例: 矢印の上に「[アクティビティ]内容」、下に「所要日数」。破線矢印は「ダミーアクティビティ」。
ここで,アクティビティ[A]の開始日を1日目とする。各アクティビティの日数は1日単位で数え,依存関係にある先行アクティビティが終了した翌日に後続アクティビティを速やかに開始する。図1中の[B]に関して,最早開始日は[A]を開始してから31日目であり,最遅開始日は b 日目である。
Z社の過去のプロジェクトでは,所要日数のうち10%の日数をアクティビティごとに安全余裕(以下,バッファという)として設定していた。Z社システム部及び外部委託先の開発担当者(以下,開発担当者という)は,バッファを含んだ所要日数で作業スケジュールを作成し,作業の実施でバッファを不必要に消費する傾向にあった。これが原因で,開発スケジュール全体が遅延したことが度々あった。
このような状況を改善し,バッファを含む完了予定日までにプロジェクトを完了させるために,X課長は次のとおりCCPMの考えを取り入れたガントチャート形式の開発スケジュールを作成して,スケジュールを管理するようY君に指示した。
- アローダイアグラムの①アクティビティごとに設けられたバッファを削除してクリティカルチェーンを設定する。
- クリティカルチェーンのアクティビティから削除したバッファを合計して c バッファを設定する。クリティカルチェーンのアクティビティの進捗が遅延した場合はこのバッファを使い,これ以降のアクティビティのスケジュールを,遅延した日数だけ後ろにずらす。
- クリティカルチェーンにないアクティビティが遅延してもスケジュール全体に影響しないように,クリティカルチェーンにつながるアクティビティの直後に d バッファを設定する。
SaaS提供会社のSaaSアドオンはローコード開発が特長で,数日間のオンライン研修を受講すればローコード開発の技術を習得できるということであった。J社は,本稼働後の新システムの維持管理を見据え,現行システムの維持管理要員のうち数名に研修を受講させた。そこで良い感触をつかんだJ社から,“弊社がSaaSアドオンの設計及び開発を担当すれば,御社の外部委託費用を抑えることができる”という提案があった。X課長は,元々J社の現行システムの維持管理要員に委託する予定であった[E],[F]に加え,SaaS提供会社に委託する予定であった[C],[D]もJ社に委託することにし,J社と新たに準委任契約を締結することに決めた。これによって,J社内で[C]〜[F]間の要員シフトの調整が可能になった。
さらにJ社から,[C]を独立に実施可能な[C1]と[C2]に分割して並行作業し,[D]も同様に[D1]と[D2]に分割して並行作業し,加えて当初予定の2倍の要員を投入して各アクティビティの所要日数を半分にするという提案があった。J社は,J1チーム([C1]及び[D1]を担当),J2チーム([C2]及び[D2]を担当),及びJ3チーム([E]及び[F]を担当)の3チーム体制を作り,各バッファの期間を含めて十分な要員を確保することを約束した。これらを反映した開発スケジュールを図2に示す。

図の説明テキスト
図2 開発スケジュールの表と凡例。
各アクティビティについて主担当と経過日数(1〜25, 26〜50, 51〜75, 76〜100, 101〜)のタイムラインを示すガントチャート。
凡例:
・実線両矢印: アクティビティ
・白抜き両矢印: c バッファ
・点線両矢印: d バッファ
注記1: 経過日数の下段の数字は、[A]の開始日を1日目とした作業日を表す。
注記2: J3チームの要員は、[F]の作業終了後に現行システムの維持管理対応に戻る予定である。
X課長は,要件定義に参加するZ社の利用部門との間で,費用,及びバッファを含む完了予定日を守ることを念頭においた要件定義の進め方を合意し,図2のとおり作業を開始した。
〔アクティビティの進捗遅延発生時の対応〕
X課長は,週次(作業日ベースで5日ごと)で進捗会議を開催した。進捗会議において,次のとおりアクティビティの進捗が遅延していると報告された。これらのアクティビティ以外は,順調に進捗していた。X課長は,これら2件の遅延報告に対してそれぞれ対策を指示した。
(i) 40日目の進捗会議
遅延報告: 前日時点で[C1]の進捗が3日ほど遅れている。
対策: 4日の遅延で[C1]が終了する見通しとなったので,その4日分は d バッファを使って作業を続けること。
(ii) 70日目の進捗会議
遅延報告: SaaSアドオン開発のスキルが必要とされる作業において,予期しない技術上の問題が発生したことによって作業量が増大したので,[D2]の進捗が遅延している。最大で12日の遅延となるおそれがあり,②その場合,プロジェクトの完了がバッファを含む完了予定日よりも遅れることが懸念される。なお,[D2]の作業手順に問題は見られず,中間成果物の品質は担保されていた。また,並行作業している[D1]は,遅延していないが余裕はない状況である。
対策: これ以上[D2]の遅延を拡大させないように,J2チームの要員を発生した問題の解決作業に専念させ,それ以外の作業を実施するために③早急にリソース視点の対策をとること。
(ii) の対策によって,[D2]の遅延は最小限に抑えられた。[D2]の終了後の[G]は順調に実施され,バッファを含む完了予定日より前にプロジェクトが完了した。
設問と解答・解説
設問1
〔新システム発注先の選定〕について答えよ。
(1)
Z社が新システム構築の発注先の選定評価に加重総和法を用いた狙いを25字以内で具体的に答えよ。
模範解答
費用及び要求充足度を重要視するため
採点基準(配点 3点)
知識・理解度(内容)(2点)
- 2点: 「費用」及び「要求充足度」の両方に言及している。
- 1点: 「費用」または「要求充足度」のいずれか一方にのみ言及している。
- 0点: どちらにも言及していない、または的外れな内容。
論理性(構造)(1点)
- 1点: 重み付けによる評価の目的(重要視するためなど)が論理的に記述されている。
- 0点: 目的が不明確、または記述されていない。
解説
正解の根拠
加重総和法は、評価項目ごとの評価点数に評価項目の重みを乗じた値の総和を求め、その多寡によって対象を評価する方法です。本問において、Z社は費用や要求充足度などの評価項目の重要度を重み付けにより反映させるためにこの手法を用いました。
高得点のポイント
- 費用と要求充足度という具体的な評価項目に言及していること
- これらを重要視するという目的が明確に記述されていること
(2)
本文中の a に入れる適切な社名を英字1字で答えよ。
模範解答
K
採点基準(配点 3点)
正確性(内容)(3点)
- 3点: 正しく「K」と解答している。
- 1点: 未定義
- 0点: 異なる社名や記号を解答している、または未解答。
解説
正解の根拠
本文中の文脈から、加重総和法を用いた新システム構築の発注先の選定評価において、最終的に選ばれるべき適切な社名は K 社となります。
高得点のポイント
- 英字1字で正確に「K」と解答していること
設問1(1)は,正答率がやや高かった。加重総和法は,評価項目ごとの評価点数に評価項目の重みを乗じた値の総和を求め,その多寡によって対象を評価する方法であることはおおむね理解されているようであった。
設問2
〔開発スケジュールの作成〕について答えよ。
(1)
本文中の b に入れる適切な数字を答えよ。
模範解答
41
配点 2点
解説
正解の根拠
各アクティビティに含まれるバッファを取り除いた後の作業日数を合計し、プロジェクトのスケジュールを作成します。問題で与えられたスケジュールとアクティビティの依存関係に基づき計算すると、クリティカルチェーンの長さは 41 日となります。
各選択肢の解説
※本問は数値解答のため誤答選択肢はありませんが、バッファを含んだまま計算したり、クリティカルチェーンを見誤ったりすると異なる数値となります。
(2)
本文中の下線①について,X課長はこの対策によって個々の開発担当者の作業にどのような効果が期待できると考えたのか。20字以内で答えよ。
模範解答
バッファを不必要に消費しなくなる。
採点基準(配点 2点)
知識・理解度(内容)(1点)
- 1点: バッファ(余裕時間)に関する言及がある。
- 0点: バッファに関する言及がない。
論理性(構造)(1点)
- 1点: 不必要に消費しなくなる、または作業を引き延ばさなくなるという効果が正しく記述されている。
- 0点: 効果に関する記述が不適切、または欠如している。
解説
正解の根拠
「人はバッファを含んだ計画値を与えるとその計画どおりに作業してしまいがちである」というパーキンソンの法則を防ぐため、CCPMでは個々のアクティビティからバッファを取り除きます。これにより、開発担当者がバッファを不必要に消費することを防ぎます。
高得点のポイント
- バッファというキーワードが含まれていること
- それを不必要に消費しなくなる(または作業時間を浪費しない)という効果が明記されていること
(3)
本文中及び図2中の c に入れる適切な字句を解答群の中から選び,記号で答えよ。
模範解答
選択肢エ: プロジェクト
配点 2点
解説
正解の根拠
CCPM(Critical Chain Project Management)において、各アクティビティから取り除いたバッファを集約し、クリティカルチェーンの最後に配置するものを プロジェクトバッファ と呼びます。したがって、「プロジェクト」が正解です。
各選択肢の解説
- ア キャパシティ: リソースの能力や容量を指し、バッファの名称としては不適切です。
- イ 合流: 合流バッファは、クリティカルチェーン以外の経路がクリティカルチェーンに合流する箇所に設けるバッファです。
- ウ 資源: 資源(リソース)バッファは、リソースの競合を防ぐためのものであり、文脈と異なります。
- エ プロジェクト: 正解です。プロジェクト全体の納期を守るために最後に配置されます。
(4)
本文中及び図2中の d に入れる適切な字句を解答群の中から選び,記号で答えよ。
模範解答
選択肢イ: 合流
配点 2点
解説
正解の根拠
クリティカルチェーン以外のタスク(合流パス)が遅延し、クリティカルチェーン全体に影響を与えるのを防ぐため、合流パスの最後に配置されるのが 合流バッファ です。したがって、「合流」が正解です。
各選択肢の解説
- ア キャパシティ: 不適切です。
- イ 合流: 正解です。
- ウ 資源: リソース制約に対応するためのものであり、合流点に設けるバッファの説明としては不適切です。
- エ プロジェクト: プロジェクトの最終地点に設けるバッファであり、合流点に設けるものではありません。
設問2(2)は,正答率がやや高かった。CCPMはパーキンソンの法則に対応するプロジェクト管理手法の一つであり,納期の遅延を最小限に抑えるものであることを,受験者はおおむね理解しているようであった。
設問3
〔アクティビティの進捗遅延発生時の対応〕について答えよ。
(1)
本文中の下線②について,対策をせずに最大日数の遅延になった場合,プロジェクトの完了はバッファを含む完了予定日に対して何日遅れるか。数字で答えよ。
模範解答
1
配点 3点
解説
正解の根拠
対策を行わずに最大日数の遅延が発生した場合、クリティカルチェーン上の遅延日数がプロジェクトバッファの許容日数を超過します。図や本文の条件から計算すると、バッファを含む完了予定日に対して 1 日遅れることになります。
各選択肢の解説
※本問は数値解答のため誤答選択肢はありませんが、合流バッファの消費とプロジェクトバッファの消費を混同すると誤った日数になります。
(2)
本文中の下線③について,対策の内容を25字以内で具体的に答えよ。
模範解答
J3チームだった要員を[D2]に投入する。
採点基準(配点 3点)
知識・理解度(内容)(2点)
- 2点: 「J3チーム(だった要員)」というリソース元の指定が正確である。
- 1点: 要員の移動には触れているが、対象(J3チーム)の指定が不正確または欠落している。
- 0点: リソースの移動について触れていない。
論理性(構造)(1点)
- 1点: 投入先が「D2」であることが明確に記述されている。
- 0点: 投入先が不明確、または誤っている。
解説
正解の根拠
プロジェクト全体の進捗を優先し、遅延を最小限に抑えるためには、スケジュールの可視化だけでなく協力体制が不可欠です。クリティカルチェーン上の遅延しているアクティビティ(D2)に対して、余裕のある要員(J3チーム)をシフトさせることが有効な対策となります。
高得点のポイント
- 余裕のあるJ3チームの要員を活用すること
- 遅延しているD2に投入することが具体的に示されていること
設問3(2)は,正答率が平均的であった。プロジェクト内の要員シフトについての解答を期待したが,“スケジュールの延期”という解答が散見された。CCPMはスケジュールの可視化のほか,プロジェクト全体の協力体制を確立する上でも有効であることを理解してほしい。