ぱと隊長日誌

ブログ運用もエンジニアとしての生き方も模索中

プロジェクト・マネジメントのためのスケジューリング理論の基礎を学ぶ

はじめに

プロジェクト・マネジメント・ソフトウェア(例えば Microsoft Project)を使いこなすにはスケジューリング理論の基礎を理解していることが必要です。
現場ではプロジェクト・マネジメント・ソフトウェアが勝手に日程をずらす!とか、組みたい日程で設定させてくれない…というぼやきをよく聞きます。ですが、これらの挙動はプロジェクト・マネジメント・ソフトウェアが設定されたタスク・リソース・順序関係・制約からスケジュール理論を基に最適解を導き出そうとした結果であることがほとんどです(まれにバグやソフトウェアの制約のこともありますが)。つまり、プロジェクト・マネジメント・ソフトウェアの基礎をなすスケジューリング理論を学ぶことで、それらの挙動の理由を知り、真価を発揮することができるのです。
本エントリではプロジェクト・マネジメントのためのスケジューリング理論の基礎を学ぶことに役立つ資料を紹介します。

書籍

建設エンジニアのためのPMSによるプロジェクト計画入門―基礎からリスクスケジューリングまで

建設エンジニアのためのPMSによるプロジェクト計画入門―基礎からリスクスケジューリングまで

建設エンジニアのためのPMSによるプロジェクト計画入門―基礎からリスクスケジューリングまで

この本のタイトルは2つの点で損をしています。それは、建築エンジニア向けをうたっていること、そしてPMSという耳慣れない略語を使っていることです。

まず、この本の対象読者は建設エンジニアに限定しません。スケジュール管理に関わる全てのマネージャそしてエンジニアが対象となります。説明例は主に建設にかかわるものですが、スケジュール管理に関する基本的な部分は業種を問わず適用できます。

また、PMSという略語は"Project Management Software"のことです。具体的には以下のようなソフトウェアのことです。

  • Microsoft Project
  • ProjectLibre
  • Artemis Schedule Publisher
  • Primavera

この本ではスケジューリング理論の基礎から実際のプロジェクト管理の方法まで幅広くカバーしています。また、説明例は建設にかかわるものですが、専門的な用語は少なく、他業種の方でも内容を十分に理解することができます。
また、日本語でスケジューリング理論の基礎に関して説明した数少ない本です(本屋、AmazonGoogleで探しましたが他に見つかりませんでした)。スケジュール理論を勉強するための入門書としてお勧めします。

本の目次から主だったトピックを挙げます。

  • プロジェクト計画の立て方
  • リソースを考慮した計画
  • ネットワーク工程計画法
  • クリティカル・パス法 (CPM)
  • 実施フェーズにおける進捗管理
  • リスクを考慮したプロジェクト計画

また、後述する mosaic の Core Scheduling Papers の一部を含んだ内容となっています。この本で概略をつかんだうえで、Core Scheduling Papers を読み進めると理解しやすいです。例えば、以下のような内容が含まれています。

  • アロー型モデルとプレシーデンス型モデルの違い
  • 順序関係(FS, FF, SS, SF)
  • フロートの種類(トータル・フロート、フリー・フロートなど)
  • タスクの中断

Mosaic Core Scheduling Papers

オーストラリアの Mosaic Project Services Pty Ltd は自社のウェブサイトでプロジェクトの計画とスケジュールに関する資料を公開しています。
Planning and Scheduling

その中に Core Papers として公開された資料があります。この中から特に有用と思われる資料とそこで説明されているトピックを以下に挙げます。
全て英語ですが、ここで挙げた資料は図が豊富に使われており比較的理解しやすいです。英語が苦手な方も理解できるところからつまみ読みしてはいかがでしょうか。
資料によってはトピックが重複していることもありますが、異なった視点から議論しているため、併せて読むことをお勧め増します。

Links, Lags and Ladders - the subtleties of overlapping tasks -

http://www.mosaicprojects.com.au/PDF/Links_Lags_Ladders.pdf

  • 順序関係 (FS, FF, SS, SF)
  • リードとラグ
  • オーバーラッピング・アクティビティの管理
    • 順序関係の論理的矛盾
    • ラダー
  • ハンモック・アクティビティ

Calculating and Using Float

http://www.mosaicprojects.com.au/PDF/Schedule_Float.pdf

  • ADMとPDMにおけるフロートの扱い
  • フロート計算
  • カレンダーとフロートの関係
  • ネガティブ・フロート
  • ハンモック・アクティビティ(サマリー・アクティビティ)

Basic CPM Calculations

http://www.mosaicprojects.com.au/PDF/Schedule_Calculations.pdf

  • アクティビティの要素と定義
  • PDMのスケジュール計算
    • 順序関係 (FS, FF, SS, SF)
    • 制約
    • 複数の先行/後続アクティビティ
    • オーバーラッピング・アクティビティ
  • フロート計算
  • カレンダーとスケジュール計算

記事・ブログ

DRAGとCostの解説

納期が延びる要因を指標化する - スケジュールのDRAGとはどんな尺度か : タイム・コンサルタントの日誌から
Drag Cost - 納期を加味した真のコストを考える : タイム・コンサルタントの日誌から

DRAGとはあるアクティビティがクリティカル・パスに対してどれだけ影響しているかを計るための指標です。また、これにCostを加味することで、クリティカル・パス短縮のために攻めるべきアクティビティをコストの観点から検討することができます。

英語版Wikipediaで"Critical path method"の解説を見ると、"Critical path drag"が度々登場しています。対して、日本語版Wikipediaの"クリティカルパス法"の解説ではDRAGについて触れられていません。DRAGの日本での普及はまだまだのようですが、今後に向けて知っておくべき手法と思われます。

本ブログのエントリ紹介

本ブログではここまで紹介してきた資料をベースにしたエントリを公開しています。以下に紹介させていただきます。

ADM(アロー・ダイアグラム法)、PDM(プレシデンス・ダイアグラム法)、AON(アクティビティ・オン・ノード)の違い - ぱと隊長日誌
ADM / PDM / AON は表現の違いに着目されがちですが、順序関係の扱いや歴史的経緯まで含めて比較を行いました。

ADM(アロー・ダイアグラム法)及びPDM (プレシデンス・ダイアグラム法)におけるタイミングとフロートの計算方法 - ぱと隊長日誌
ADM / PDM を明確に区別した上で用語の定義と計算式を説明しています。また、同じことを指す場合でも資料によって異なる名前を使う場合があるため、よく使われる別名も併せて記載しています。

PDM (プレシデンス・ダイアグラム法)のスケジュール計算における制約の影響 - ぱと隊長日誌
PDMにおいてはアクティビティに対する制約を考慮したスケジュール計算をする必要があります。また、それによってネガティブ・フロートを発生する場合があることを示しています。

PDMにおいてSS/FF関係を持つアクティビティのトータル・フロートのパラドックスを解消する - ぱと隊長日誌
PDMで前後のアクティビティとSS/FF関係を持つアクティビティにてトータル・フロートにパラドックスが生じるケースを説明し、その解決策を提示しています。

スケジュール計算とラグとカレンダーの関係 - ぱと隊長日誌
スケジュール理論を議論する際にカレンダーはしばしば無視されます。ですが、実際のプロジェクトでカレンダーを適用したときに考慮すべき点をまとめています。

おわりに

ここで紹介した資料以外にも役に立つもの、参考になるものがまだまだあると思います。ご存知の方はぜひ本エントリのコメントやTwitter(@)などでご教示いただければ幸いです。