今回はPMBOKの知識エリアの一つである「スケジュールマネジメント」について解説していきます。
プロジェクト目標の必須項目には納期遵守があります。納期を守るためにはプロジェクトマネージャーが積極的に進捗管理や工程管理を行い、プロジェクトの進行度が見積もりに対して想定通りに進んでいるか否かを常にチェックしていなければなりません。
適切なスケジュールマネジメントを行い、プロジェクトの進捗を想定通りに進める事が、プロジェクト成功のカギと言っても過言ではありません。
このスケジュールマネジメントの方法をしっかりと押さえて業務の中で活かせるようにしましょう。ここから具体的に解説をしていきます。
コンテンツ
スケジュールマネジメントとは
スケジュールマネジメントとは、プロジェクト目標の必須項目として挙げられる「納期」を遵守するために、スケジュールの管理を行う活動の事を言います。
納期を守る事ができないプロジェクトは失敗プロジェクトと言わざるを得ません。納期遵守のためにどの様な活動を行う必要があるのでしょうか。
スケジュールマネジメントの計画
実施プロセス:計画プロセス
アウトプット:スケジュールマネジメントの計画書
スケジュールマネジメントをどの様に行うかの計画建てを行い、文書化します。この資料はプロジェクトマネジメント計画書に付随するものであり、プロジェクトの運命を握る重要資料となります。
アクティビティの定義
実施プロセス:計画プロセス
アウトプット:アクティビティ・リスト
WEBを作成する際にワークパッケージ(WBSの最小単位)の定義を行っているはずです。このワークパッケージをさらに細分化を行い、実際のスケジュール管理対象となる作業の最小単位「アクティビィ」として定義を行います。
このアクティビィは一般的な現場ではタスクとも呼ばれるものになります。
アクティビティの順序設定
実施プロセス:計画プロセス
アウトプット:プロジェクト・スケジュール・ネットワーク図
PDM(プレジデンス・ダイアグラム法)・ADM(アロー・ダイアグラム法)といった技法を使って、アクティビティの順序関係を考えます。
アウトプットとなるプロジェクト・スケジュール・ネットワーク図はアクティビィの順序関係を論理的に表現したもので、この図を作成できれば順序設定もできている、という事になります。
最近はPDMを活用する事が多いですが、依存関係や論理的な順序関係をどの様に表現するのかを理解していなければ、PDMを活用しきる事はできません。技法の使い方などもしっかりと覚えておきましょう。
※ちなみに、PDMとADMの違いはPMPやプロマネ試験等でも問われる事があります。
アクティビティ所要時間の見積もり
実施プロセス:計画プロセス
アウトプット:アクティビティ所要時間の見積もり結果
アクティビティの見積もりを行います。一般的に語られる見積もりもこのプロセスに概要する事が多いです。
よく使われる見積もり技法としては、
- 類推見積もり
- 係数見積もり
- 三点見積もり
があります。
※多くの現場が類推見積もりと言いつつ、かなりざっくりとした見積もりをしてしまうのは、これが一番楽で早いからだと言われています。とはいえ、限られた時間の中である程度の見積もりを行う場合はこの方法を採用するのが妥当です。
それぞれの見積もり技法についてもう少し詳しく紹介します。
類推見積もり
過去の類似プロジェクトでの実績や経験を元にした見積もり方式になります。
実際の現場でプロジェクトマネージャーやエンジニアをされている方であれば、よく見る見積もり方式なのではないでしょうか。
過去に開発経験のあるシステムであれば、ある程度精緻の見積もりを作成する事が可能であり、何よりも見積もりにかかる時間が早いという特徴があります。
その一方で、感に頼った見積もりをしてしまうと、見積もりの根拠が不明確になってしまったり、プロジェクト経験の浅いメンバーに対しても類推見積もりを依頼した結果、実績が大きく異なってしまうというリスクもあります。
係数見積もり
基準値・関数といった数学的な根拠を元にして見積もりを行う方式です。
※COCOMO等が有名
見積もりの根拠を明確化にしやすく、見積もりと実績に乖離があった場合の原因分析がし易いという特徴があります。さらに、見積もりを実施する人の感覚等に左右されずに見積もりできるため、見積もりの方法さえ分かっていれば誰でもほぼ同じ結果が算出されるメリットがあります。
その一方で係数見積もりの方法を分かっている人でなければ見積もりができないというリスクがあります。また、基準値等を予め決めておく必要があります。
三点見積もり
以下の3つの値を加重平均して見積もりを行う方式です。
- 最頻値・通常値(最も実現可能性が高い値)
- 楽観値(最良の状態でプロジェクトが進んだ場合の値)
- 悲観値(最悪の状態でプロジェクトが進んだ場合の値)
一般的に以下の加重平均の式が使われます。
(最頻値×4+楽観値+悲観値)÷6
係数見積もりの場合と同様に見積もり根拠が明確であり、誰が計算をしても同じ結果になるといったメリットがあります。
その一方で、計算に必要なサンプル値を予め揃えておく必要があります。
スケジュール作成
実施プロセス:計画プロセス
アウトプット:スケジュールのベースライン、マイルストーン
想定要員の資源等を考慮(資源標準化)し、これまでのスケジュールマネジメントで行った作業をベースにスケジュールを作成します。クリティカルパス法やクリティカルチェーン法といった技法を駆使して、精度の高いスケジュールを作成する事が重要になります。
このプロセスで作成されるスケジュールが実際の作業の大元となりますので、非常に重要な作業になります。
スケジュールのコントロール
実施プロセス:監視・コントロールプロセス
既に作成済みのスケジュールとプロジェクト開始後の進捗実績等を比較して差異の有無を確認します。差異がある場合は、原因分析を行った上でスケジュールの見直しを行う事になります。
このコントロールを怠ると予定と実績の判断が付かなくなり、プロジェクト終盤になってから、プロジェクト目標の破綻を招くような事にもなりかねません。
進捗の管理は正確に細かく実施する必要があります。
スケジュールマネジメントの活用
スケジュールマネジメントの具体的な活用方法についてご紹介します。
プロジェクトメンバーへの影響
プロジェクトのメンバーはスケジュールの内容を見て、プロジェクトマネージャーの能力や性格を判断するとも言われています。厳しいスケジュールを立てるのか、余裕を持ったスケジュール立てるのか、何かスケジュール上の抜けはないか等を冷静に判断される事になります。
スケジュールを立てる際は、今回のスケジュールマネジメントで学んだ内容を活かして、必要な作業をしっかりと洗い出す様にしましょう。そうする事で「この人は細かい部分までよく考えられる人だな。」という評価を得る事もできます。
また、スケジュールをメンバーに開示する際には、個々の作業のスケジュール・プロジェクト全体としてのスケジュールの作成根拠を明確に伝える様にしましょう。何かしらの理由で単体テストのスケジュールがタイトになってしまった場合、スケジュールを見るだけではその理由は伝わらず、無理なスケジュールを立てる人だなと思われてしまいます。
これらはメンバーの作業モチベーションにも影響しますので、作成意図を明確化したり、細かい部分の考慮を忘れない様にしましょう。
進捗遅延の予防
進捗管理を行っていると遅延が発生する事があります。
遅延の原因は様々ですが、大抵はどのプロジェクトにも共通のリスクとして挙げられるものばかります。
一度プロジェクトマネジメントで進捗管理を行った経験があれば、その時に遅延の原因となった内容を一覧化してリスク管理を行う事も大切です。リスク管理により、事前に予防策を立てておけば、同様の遅延を防げる可能性が高くなります。
ちなみに、遅延の原因としてよくあるのは、
- 見積もりの誤り
- 担当者の理解不足により生産性が低い
- 仕様変更等による手戻り
です。これらはどのプロジェクトでも共通課題ですから、スケジュールを立てる段階で、予防策も立てておくようにしましょう。
進捗遅延時の対応
上述の通りに遅延予防を行ったとしても、進捗遅れが発生してします事もあります。進捗遅れが発覚した場合には、早急に事後対策を行う必要があります。
対策は基本的に以下の流れで行われます。
- 遅延の原因分析
- 遅延原因の除去
- 遅延分の挽回
これはどのプロジェクトでもほぼ同じ流れで行われます。
遅延した分を挽回する際にはクラッシング(コストをかけて遅延を取り戻す)等を使う事が一般的です。
※ただ単に増員をすればコストが増えてしまうだけになるので要注意です。
まとめ
冒頭でもお伝えしている通り納期厳守というのは、どのプロジェクトでも目標に挙げられると思います。そのプロジェクト目標達成のためにはスケジュールマネジメントは必須になります。
見積もりやスケジュール作成の技法というのは少々面倒なものや、覚えなければならない事が多いものもあります。ただ、精度の高いスケジュールを作成して、その後の管理も正しく行う事ができる様にするために、しっかりと押さえておかなければならないポイントでもあります。
計画段階でどれだけ精度の高いスケジュールを立てられるか?という事がプロジェクトの成否を大きく左右すると言っても過言ではありませんから、その考え方をしっかりと身に付けておきましょう。