CPM(クリティカルパスメソッド)について

作って満足しがちなCPM

CPM(クリティカルパスメソッド)というのをご存知でしょうか?
エンジニアでリーダー経験があると分かると思いますが、頭の中でやっている人多いですよね?
この機能を作ってからこれを作ろう。これは時間が空いた時にやろう。
みたいなものを図式化したものになります。
その際に、最短経路と最遅経路を考え、クリティカルパスになるものをブラさないように管理する方法です。
もう少し細かく言うと、ウィークリンクなどもあり、「これとあれができたら、ここで結合」といった内容は
2軸が交差する点なので気を付けるポイントだねーというのが分かります。


CPMを作るメリット
大きくは2点。

  1. スケジュールの中の重要度が見える為、スケジュール調整がしやすい。頭の整理がしやすい。

この辺はまあ見てわかる通り、遅れちゃいけないものといつやってもいいものがハッキリするので、
毎度毎度頭の整理をしなくても見れば分かるようになる。

  1. 共通認識が取りやすい

メンバーにお願いする時にもCPMを共有しておくことで、自身が作業するに辺り、前に誰がいて、後ろに誰がいるのか分かります。
このおかげで「まあ1日ぐらい遅れても…」という甘えが使えなくなりますし、相互協力体制が築きやすいというのがあります。
また、危険ポイントの後ろの作業者に強い人を入れておくことで、後ろの人(責任感が強く能力が高い)は自分の作業に遅れが出ないように
前の人の作業に気を配ります。
そうする事で自身の作業に手戻りや不明点が無いようにする為なわけですが、自動的に協力体制が組めます。


CPMは作って終わりではない

プロジェクトを進めて行くとクリティカルパスが変わる事や大幅に変更される事もあるでしょう。
一度作ったCPMを変えられないものだと思っていませんか?それだとプロジェクトは成功しないでしょう。
プロジェクトは生き物です。期間によって使える交渉術も変わってきます。
最初はコスト削減の為に人員追加などもってのほかと言われていても、作業中に事業成長が見込める事や市場ニーズの高まりが見えると
決裁者はブーストしたがります。
そういうタイミングでしっかり交渉できれば、人員追加ができ、クリティカルパスを(多少コストが掛かっても)折る事ができます。
また、あまりプロジェクトを回したことが無いエンジニアがPMになると、A→B→C→Dというwebシステムの流れをそのままCPMにしてしまいますが、
実際にはデータの種類で同時に進められるものデータの相互関係や機能の被り方によって同時並行開発が可能な部分はままあります。

CPMを使って共通認識とし、相互協力体制を築きやすいプロジェクトにできます。