クリティカルパス法: プロジェクト管理における CPM の使い方

Asana チーム 寄稿者の画像Team Asana2021年7月5日00
facebooktwitterlinkedin
クリティカルパス法記事バナー画像

概要

クリティカルパス法とは、プロジェクトを完了させるために実行しなければならないタスクを特定する手法です。プロジェクト管理におけるクリティカルパスとは、プロジェクト全体の完了に向けて計画どおりに終了させていかなければならない連続した一連の作業のうち、パス (経路) が最長となるものことです。クリティカルパスを知るための手順を以下にご紹介します。次回のプロジェクトにお役立てください。

ロードマップを作成すると、プロジェクトの目標到達に向けて何をすべきかを可視化することができます。その際に役立つのがクリティカルパス法であり、プロジェクトを完了するために対応が求められる重要 (クリティカル) なタスクを計画するプロジェクト管理手法です。

この手法を活用すると、タスクの依存関係を管理し、現実的な期間設定が可能になります。この記事では、クリティカルパス法の仕組みと、チームで使用することでプロジェクトのタイムラインをどのように最適化していけるかをご紹介します。

クリティカルパス法 (CPM) とは?

クリティカルパス法 (CPM) とは、プロジェクトを完了させるために実行しなければならないタスクを特定し、スケジュールの柔軟性を判断する手法です。プロジェクト管理におけるクリティカルパスとは、プロジェクト全体の完了に向けて計画どおりに終了させていかなければならない一連の作業のうち、一番長時間かかるもののことです。重要タスクに遅れがあれは、プロジェクトの後続する作業にも遅れが発生します。

CPM は、プロジェクトのタイムライン上でタスクの依存関係を特定し、タスクの期間を計算し、最も重要なタスクを発見することをベースとする手法です。

CPM は、1950年代後半、非効率なスケジューリングによるコスト増の問題を解決する手法として開発されました。それ以来、CPM はプロジェクトプロジェクトの計画やタスクの優先順位付けの手法として普及しました。複雑なプロジェクトを個々のタスクに分解し、プロジェクトの柔軟性についての理解を深めるのを助けます。 

クリティカルパス法を使うべき理由とは?

CPM は、プロジェクトの計画、リソースの割り当て、タスクのスケジュール設定などの方法について、貴重なインサイトを与えてくれます。 

この手法を使うべき理由は以下のとおりです。 

  • 将来の計画を改善できる: 想定の作業と実際の進捗状況の比較に CPM を用いることができます。現在のプロジェクトで使用しているデータは、将来のプロジェクト計画に反映できます。

  • より能率的なリソース管理に貢献する: CPM は、プロジェクトマネージャーがタスクの優先順位付けやリソースの配置方法の見極めを行う際に役立ちます。

  • ボトルネックを回避できる: プロジェクトにボトルネックがあると、貴重な時間が無駄になってしまいます。プロジェクトの依存関係をネットワーク図で示すと、並行して実行できる作業とそうでない作業とを分別したスケジュール作成ができます。   

Asana でプロジェクト計画を試す

クリティカルパスの見つけ方

クリティカルパスを見極めるには、所要期間に応じてタスクがクリティカルかそうでないかを調べます。以下に、例を挙げて手順を説明します。 

1. 作業のリストアップ

作業分解構成図を用いて、成果物の制作に必要となるプロジェクトの作業やタスクをすべてリストアップします。作業分解構成図の作業リストを基礎にして、CPM を実行していきます。 

作業のリストアップ

たとえば、マーケティングチームがインタラクティブなブログ記事を新たに制作するとします。作業分解構成図には次のようなタスクが含まれます。

作業分解構成図

必要な作業が明確になったら、タスクの依存関係を把握していきます。

2. 依存関係を把握する

作業分解構成図に基づいて、タスク間の依存関係を確認していきます。これにより、他のタスクと並行して行える作業の有無について確認することもできます。

上記の例に基づいたタスクの依存関係は以下のとおりです。

  • タスク B はタスク A に依存する

  • タスク C はタスク B に依存する

  • タスク C とタスク D は並行して実行できる

  • タスク E はタスク D に依存する

  • タスク F はタスク C、タスク D、タスク E に依存する

依存関係にあるタスクのリストは作業シーケンスと呼ばれ、クリティカルパスの決定に用いられます。 

3. ネットワーク図の作成

次のステップでは、作業分解構成図からネットワーク図 (作業を時系列で示すフローチャート) を作成します。タスクごとにボックスを作り、タスクの依存関係を矢印で図示します。 

時間的制約のある他の要素をネットワーク図に追加していくと、最終的にプロジェクトの大まかなスケジュールが固まってきます。 

4. タスクの所要期間の推定

クリティカルパス (一連の重要タスクが最長となる経路) の算出では、まず各作業の所要期間を見積もる必要があります。 

所要期間の見積もりでは、以下を試してみてください。 

  • 経験と知識に基づいて推測する

  • 過去のプロジェクトのデータをもとにする

  • 業界標準をもとにする

また、往路時間計算 (フォワードパス)、復路時間計算 (バックワードパス) という手法もあります。

  • フォワードパス: 事前に指定された開始日から順々に、最早開始日 (ES) と最早終了日 (EF) を計算する方法です。ES は先行作業の EF のうち最大値であり、EF は「ES + 所要期間」です。計算は、最初の作業の ES で「0」から始まり、スケジュールの進行に沿って進んでいきます。ES と EF の日付を決定すると、プロジェクトに早期にリソースを割り当てることができます。

  • バックワードパス: 最遅開始日 (LS) と最遅終了日 (LF) を計算する方法です。LS は、「LF - 所要期間」で、LF は後続作業の LS のうち最小値です。計算は、スケジュールの最後の作業から始まり、スケジュールの初めまで逆算していきます。    

そして、ES と LS と終了日をもとに、各タスクのフロート (スケジューリングの柔軟性) を算出できます。 

5. クリティカルパスの算出

クリティカルパスは手動でも計算できますが、アルゴリズムを用いると時間短縮につながります。 

まず、クリティカルパスを手動で計算する手順をご紹介します。

ステップ 1: 各作業の横に開始日と終了日 (または開始時刻や終了時刻) を書いておきましょう。

  • 最初の作業の開始日は 0、終了日が作業の所要期間となります。

  • 次の作業の開始日は直前の作業の終了日で、終了日は開始日に所要期間を加えたものになります。

  • すべての作業について計算します。

ステップ 2: シーケンスの中で最後となる作業の終了日をもとに、全体の所要期間を求めます。 

ステップ 3: 所要期間が最も長い作業シーケンスがクリティカルパスです。

前述の例をもとにした、クリティカルパス図は次のようになります。 

クリティカルパスを手動で計算する手順

把握したクリティカルパスをもとに、実際のプロジェクトのスケジュールを組み立てます。

6. フロートの算出

フロート (スラック) とは、タスクの柔軟性の高さを指します。後続するタスクやプロジェクトの終了日に影響が出ない、タスク遅延の許容範囲のことです。 

フロートを見極めておくと、プロジェクトの柔軟性を判断するのに役立ちます。フロートは、プロジェクトにおけるリスクや不測の事態への対応を想定したリソースです。 

クリティカルなタスクでは、日程が決まっており、フロートはゼロになります。フロートが正の値であるタスクは、非クリティカルパスに属し、遅延してもプロジェクトの完了日に影響は出ません。非クリティカルなタスクは、時間やリソースが不足する場合には省略できます。 

フロートは、アルゴリズムを用いて、または手動で計算できます。トータルフロートとフリーフロートは、以下のセクションの式で計算します。 

トータルフロートとフリーフロートの比較

2 種類のフロートの詳細は次のとおりです。

  • トータルフロート: プロジェクト終了日の遅延や、スケジュール制約条件からの逸脱が出ない範囲で、ある作業の開始を最早開始日から遅らせることができる期間です。トータルフロート = LS - ES または LF - EF

  • フリーフロート: 後続のタスクに遅延が出ない範囲で、ある作業の開始を遅らせることができる期間です。フリーフロートができるのは、2 つ以上の作業に共通して 1 つの作業が後続する場合のみとなります。ネットワーク図を見ると、作業が一つに収束する箇所です。フリーフロート = ES (次のタスク) - EF (現在のタスク)

フロートをしっかり理解しておくと、プロジェクトマネージャーにとって次の点で有益です。

  • 計画どおりにプロジェクトを進行できる: プロジェクトのトータルフロートを監視することで、プロジェクトが順調に進んでいるかどうかを判断することができます。フロートが大きいほど、早期にまたは予定どおりに終了する可能性が高くなります。  

  • 優先順位付けできる: 作業にフリーフロートがあるかどうかを見極めることで、優先すべきタスク、先送りする余裕があるタスクを把握することができます。

  • 有用なリソースとなる: フロートとは、プロジェクトにおけるリスクや不測の事態への対応にあてられる時間的な余裕のことです。フロートの量を把握しておくと、時間を有効に活用できます。

クリティカルパスの見つけ方

クリティカルパス法の使い方とは?

CPM を使うと、プロジェクトの進捗状況を可視化し、タスクや完了時期を監視することができます。また、CPM は、次のような目的で活用することができます。 

スケジュールの短縮

プロジェクトの締め切りは、思いがけず前倒しになることもあります。そのような状況で役に立つスケジュールの短縮方法に、「ファストトラッキング」と「クラッシング」の 2 つがあります。

  1. ファストトラッキング: クリティカルパスで、同時進行できる作業を見つけます。プロセスを並行して実行し、全体の所要期間を短縮します。

  2. クラッシング: こちらは、リソースの割り当てを増やして作業を高速化するプロセスです。リソースを増やす前に、プロジェクトスコープの範囲内であることを確認し、変更内容はすべてステークホルダーに知らせます。

事前に描いておいたクリティカルパスがあれば、更新後の締め切りに間に合う、最適な戦略を選択することができます。 

記事: 仕事を楽にするプロジェクトスケジュールの作成方法

リソース不足の解消

CPM で考慮されない点として、リソースの可用性があります。チームメンバーの過密スケジュール、機器や設備の不足など、リソース不足の問題は、リソース平準化の手法を使って解決できます。 

これは、リソースの過剰な割り当てを解消し、現状のリソースを活用してプロジェクトを完了させることを目指す手法です。 

リソース平準化では、プロジェクトの開始日と終了日を調整します。クリティカルパスの再調整ができない場合は、フロートのある作業に限定して実施してください。

記事: チームの影響力を最大化したい方におすすめするリソース配分

データをまとめて今後に備える

CPM では、経験をもとに推測した所要期間からスケジュールを作成し、それに沿って作業するため、しばしば変更が必要になります。プロジェクトの進行に伴い、当初のクリティカルパスと、実際のクリティカルパスを比較しましょう。

比較データは、今後のプロジェクトにおいてタスク期間を見積もる際に、精度を高めるためのよい参考となります。 

クリティカルパス法と PERT の比較

CPM とプロジェクト評価レビューテクニック (PERT) はどちらも 1950年代に開発されました。PERT では、楽観値と悲観値の加重平均を用いて、プロジェクトの各作業について不確実性を推定します。そして、作業を完了するために必要な時間を評価します。 

PERT では、作業にかかる所要期間の範囲を、次の 3 つの推定値から求めます。

  1. 最も可能性の高い推定値 (M)

  2. 楽観値 (O)

  3. 悲観値 (P)

PERT で用いる計算式は、「推定期間 = (O + 4M + P) / 6」です。

PERT と CPM の大きな違いは、作業の所要期間の確実度です。PERT は作業を完了するために必要な時間を推定するために用い、CPM は作業期間がすでに推定済みの場合に用います。 

ここで、2 つの手法を比較してみましょう。

  • PERT は不確実なプロジェクトの作業を管理し、CPM は予測可能なプロジェクトの作業を管理する。

  • PERT はプロジェクトの期限内での達成や期間短縮を図り、CPM は時間とコストの最適化を図る。

  • PERT は確率的モデル、CPM は決定論的モデル。

  • PERT は各作業に対して推定値が 3 つあり、CPM は 1 つのみ。

以上が異なる点です。PERT でも CPM でも、共通して次の項目を分析対象とします。

  • 遂行すべきタスクのリスト

  • 各タスクの推定所要期間

  • タスクの依存関係

この 2 つの手法は、同時に用いることでより高い効果が得られます。クリティカルパスやフロートの算出を行う前に PERT を用いると、より正確にタスクの所要期間を予測することができます。  

クリティカルパス法とガントチャートの比較

ガントチャートは、プロジェクトの作業計画を示す横棒グラフで、設定されたタイムラインに沿って追跡することができます。CPM もガントチャートも、タスク間の依存関係を示します。 

この 2 つのツールの違いを確認しましょう。

CPM

  • クリティカルパスとノンクリティカルパスを可視化し、プロジェクトの所要期間を算出する

  • ボックス同士を矢印で結んだネットワーク図で作業を表示する

  • リソース所要量の情報は含まない

  • 作業計画をネットワーク図にするがタイムスケールは含まない

ガントチャート

  • プロジェクトの作業の進捗状況を可視化する

  • 横棒グラフで作業を表示する

  • 各作業のリソース所要量を表示する

  • 作業計画にタイムスケールが含まれる

ガントチャートと CPM を組み合わせると、経時的にクリティカルパスを追跡し、スケジュールどおりにプロジェクトを進めることができます。 

クリティカルパスを利用した効率的なプロジェクト管理

CPM は、プロジェクト管理において、タスクの計画やリソースの管理に特に役立つアセットです。プロジェクト計画ツールを使うと、スケジュール作成やプロジェクトの追跡作業が楽になります。仕事の効率をさらに向上させるには、今日から生産性を高めるための 12 のヒントをご覧ください。

記事: 今日から生産性を高めるための 12 のヒント

関連リソース

記事

Everything you need to know about creating a RAID log