システム開発のプロジェクトにおいて、スケジュールが遅延することは多々あります(勿論、無い方が良いのですが...)。
そんな時に、「遅延したまま」というのは基本的にありえません。なので、スケジュールの遅延を回復するための処方箋が必要となります。
今回はこのスケジュール遅延回復のための二つの技法である「クラッシング」と「ファスト・トラッキング」を解説します。
ファスト・トラッキングとは?
英語で記述すると「Fast Tracking」で直訳すると「早期着工」みたいな感じですかね。
何を早期着工するかというと、各工程(タスク)を早目に開始します。
通常、プロジェクトの開発スケジュールとは、先行タスクが完了してから後続のタスクを開始する計画にしてますが、スケジュールが遅延してしまった場合は、先行タスクが完了する前に、後続タスクを開始します。これが「ファスト・トラッキング」というスケジュール短縮技法です。
例えば、製造(プログラミング)が完了する前にテストを開始したり、単体のテストが終わる前に結合テストを開始したりすることです。
ただし、ファイルと・トラッキングで並行作業させるタスクは、元々並行で作業をしない(したくない)タスクであり、これを先行させることで、当初の計画と違うことによる「リスクの増大」が発生してしまいます。
例えば、製造に大きな欠陥が発見された際は先行して実施していたテストが無駄になってしまう(つまり手戻りが発生する)ため、ここで発生するリスクを考慮した上で作業を進める必要があります。
タスクの並行作業によるリスク管理が重要になってきますね。
クラッシングとは?
次にクラッシングですが、これは「コストを追加する」ことで、スケジュールを短縮させる方法です。
コストはスケジュールとトレードオフの関係なので、コストを増やせばそれだけスケジュールが縮まるというシンプルな考え方ですね。
例えば、2ヵ月で6人月(6人分)かかる作業を1ヵ月スケジュール短縮したい場合は、3人月(3人分)人員を追加する、という感じです。
具体的には新しい人間を投入したり、残業をするなどがあります。
ただし、スケジュール上は習熟度があるメンバーが作業を行う想定で工数を計算しているので、実際は新規メンバーを単純に投入しても、その分だけ作業を消化できるものではありませんので、製造からテスト工程において、プロジェクトメンバーを減らす予定だったところを残留してもらうような形が現実的ですね。「工数を増やすのではなく、減らさず維持する」ですかね。
また、生産性の上がるツールの導入などもクラッシングとして考えることができるようですね。
因みに、クラッシングは英語で記述すると「Crashing」で「衝突する」とかに訳されますが、これだとイメージ沸かないです。かなり意味を拡大して、「ある部屋に人をいっぱいいれることでぶつかることが多くなる」というイメージでしょうかね。
まとめ
今回はプロジェクトにおけるスケジュール短縮方法として、ファスト・トラッキングとクラッシングを学習してみました。
ファスト・トラッキングの方が実際の現場では使われる機会が多いかと思いますが、ファスト・トラッキングでタスクを先行した場合も、一時的に工数(人員)が必要になるので、この部分はクラッシングを使っているとも言えますね。
両方を組み合わせるハイブリッド型でスケジュール短縮を行うことが良いですね。
勿論、そもそもスケジュール遅延しないプロジェクト運営ができることが良いですが...
以上です!
参考URL)