作業が多すぎて、実際には非効率的なのではないか?
これも、多くの現場から聞かれる反応です。今現在、開発作業が混乱し、既に納期が遅れている状況で、このような取り組みを持ち込まれても困るというわけです。
その結果、多くの場合、「このプロジェクトが終わってから」ということになるのですが、これは完全に間違った判断です。つまり、今のプロジェクトが既に遅れている状況であり、この先、この遅れが増幅しないための方策を持っていない以上、次のプロジェクトの「開始」が遅れてしまうことは明白で、その前に新しい取り組みの準備が入る余地はありません。その結果、次のプロジェクトも、結局は、前回の時と同じやり方で突入してしまうことになります。これがこの種の取り組みを遅らせてきた実態です。
このような状況を回避するためには、プロジェクトの途中からでも、それ以上の遅れを回避するための取り組みを組みが必要です。たしかに、途中からでは画期的な効果をもたらすことは無理としても、それ以上悪くしない方法は幾つか考えられます。それをCMMの中に求めるわけです。
もう一つ大事なことは、今の状況をそのままにして新しいやり方(開発方法)には取り組めないということです。両手に一杯の状態で、新しいことには取り組めません。CMMで提案されている幾つかの主要テーマに取り組む時は、それに対応する現状の(混乱した)作業を止める必要があります。あるいは、CMMの取り組みを入れることで、後ろの方の工程が変わるように、作業を組み立てる必要があります。
例えば、詳細なスケジュールを書いて、それを各自が追跡することで、問題を1日単位で見つけることができるので毎週の進捗会議を省くことも可能になります。あるいは担当者間の段取りの食い違いや、手はずの悪さを早く見つけることで、今までだったら無駄に捨てられていた時間をしっかり稼ぐこともできます。また遅れが顕在化したときに、そこで作られていた詳細なスケジュールによって作業の順序や分担を変える判断がスムースに運ぶことにも繋がります。
要求仕様書にしても、それを後工程でどのように利用、活用するかというところまで考えることで、不必要な作業の膨張を防ぐことができます。品質保証の支援によって、効果を生まない作業が見直され、そのことからも、時間を稼ぐことができます。
要するに、CMMに取り組むということは、段取りの悪さや頻繁なリワーク、分析や設計作業をごちゃまぜにした実装作業などによって、どこか訳の分からないところで蒸発していた時間(の1部)を最初に集めて使うことで、トータルとして時間を節約することが出来るのです。したがって、現状以上の時間が必要になることは無いはずです。