メインコンテンツへスキップ

タスクの依存関係を理解する

依存関係は、作業の論理的な順序を定義します。依存関係はあらゆるガントチャートの屋台骨であり、スケジュール管理ソフトウェアが存在する理由でもあります。1つのタスクの遅れがほかの50のタスクにどう波及するかを手作業で追うことは、依存関係なしには不可能です。

依存関係が重要な理由

タスクを依存関係でリンクすると、LoopGantt は単なるカレンダーではなくスケジューリングエンジンになります。タスクの期間を変えたり日付を動かしたりすると、後続のスケジュール全体が即座に再計算されます。これはスケジュールのカスケードと呼ばれ、避けられないスコープ変更のたびに必要となる手作業の再計画を何時間も節約してくれます。

依存関係からは、プロジェクトのクリティカルパス、つまり依存し合うタスクの最も長い連鎖もわかります。クリティカルパス上の遅れは、そのままプロジェクトの終了日の遅れになります。クリティカルパス上にないタスクにはフロート(スラック)があり、納期に影響を与えずにずらすことができます。

4種類の依存関係

FS:終了-開始(最も一般的)

Task A ████████
                Task B ████████
タスク A が終了するまで、タスク B は開始できません。

順番に進める作業に使います。例:「レポートを書く」→「レポートをレビューする」。これは既定の種類で、実際の依存関係の約80%をカバーします。

SS:開始-開始

Task A ████████████
   Task B    ████████
タスク A が開始するまで、タスク B は開始できません。

一緒に始められるものの、連携が必要な並行作業に使います。例:「アーキテクチャ設計」と「API 仕様策定」は同時に開始できますが、仕様はアーキテクチャの作業が進んでいることを前提とします。

ラグ(SS+3)を追加すると、「B は A の開始から3日後に開始する」と指定できます。B を始める前に A がある程度進んでいる必要がある場合に便利です。

FF:終了-終了

Task A ████████████
      Task B ████████
タスク A が終了するまで、タスク B は終了できません。

2つのタスクを同時に終わらせる必要がある場合に使います。例:「QA テスト」と「ベータテスト」を同時に終え、チームがそろって申請に進めるようにします。

SF:開始-終了(まれ)

             Task A ████████
Task B ████████
タスク A が開始するまで、タスク B は終了できません。

最もまれな種類です。ジャストインタイムやシフトの引き継ぎのような場面で役立ちます。例:夜勤の作業者(B)は、日勤の作業者(A)が到着するまで帰れません。ほとんどのソフトウェアプロジェクトでは、SF が必要になることはまずありません。

ラグとリードタイム

どの依存関係にも、ラグ(正の数)またはリードタイム(負の数)を設定できます:

表記意味
FS+2B は A の終了から2日後に開始
FS-1B は A の終了の1日前に開始(重複)
SS+5B は A の開始から5日後に開始
FF+0B は A と同時に終了

リードタイム(負のラグ)を使うと、現実的な並行作業をモデル化できます。たとえば、開発が正式に終わる2日前に結合テストを始める、といった使い方です。

LoopGantt のルール

  • フェーズには依存関係を設定できません。代わりにフェーズ内のタスクをリンクしてください。
  • 循環する依存関係(A → B → A)は自動的に検出され、拒否されます。
  • 1つのタスクに複数の先行タスクを設定できます。その場合、すべての先行タスクの条件が満たされてから開始されます。

依存関係を追加する方法

  1. 後続タスクをクリックしてタスクエディターを開きます。
  2. 依存関係セクションに移動します。
  3. 「先行タスクを選択…」を開き、先行タスクを選びます。
  4. 種類のバッジをクリックして種類(FS/SS/FF/SF)を選び、必要に応じてラグの値をクリックしてラグの日数を設定します。
  5. エディターを閉じます。変更はその都度保存され、チャートはすぐに再スケジュールされます。

ガントチャート上で直接依存関係の線をドラッグすることもできます。バーの右端にマウスを合わせてコネクターのアイコンが表示されたら、対象のタスクまでドラッグします。

この記事は役に立ちましたか?