システム開発プロジェクトがスタートした時に、経営者としてまず思うのが、「このプロジェクトは成功するだろうか」ということである。ここで言う「成功」とは、利益がきちんと出ることを意味している。
会社であるから、やはり利益を追求しなければならない。システム開発の現場で損失を出さないようにし、プロジェクトの利益を確保するのがプロジェクトマネジャー(PM)の役割である。
すべてのプロジェクトでPMBOK通りに管理する必要があるのか
プロジェクトマネジメントの標準的な知識体系である「PMBOK(the Project Management Body Of Knowledge)」は、プロジェクトの管理対象として、大きく9つの内容を定義している。
(1)スコープ管理(開発の目的・開発範)
(2)人的リソース管理(顧客を含むプロジェクト全員)
(3)時間管理(タイムスケジュール)
(4)リスク管理
(5)品質管理
(6)コスト管理
(7)統合管理
(8)コミュニケーション管理(方法・対処法など)
(9)調達管理
さて、PMはシステム開発時に、これらすべての管理を本当に行わなければならないのか?
実際にすべてを真剣にやるのは大変だ。開発着手時には、PMはほぼ100%の時間を管理作業の準備に取られることになる。仕事(業務)に入ってからは、常に50%(0.5人月)ぐらいの工数を管理作業として見込んでおかないと、うまく稼働しない気がする。
中には、PMが管理作業に費やす工数を見込まないで赤字になってしまったという、笑うに笑えないプロジェクトもあるのではないだろうか?
以前、IT業界で「オブジェクト指向」ブームが来た時に、すべてのプロジェクトをオブジェクト指向で開発しようという流れがあった。だが、規模の小さなシステム開発案件でオブジェクト指向開発を行おうとしたところ、逆に効率が悪くなるだけだったという経験をした人は少なくない。
PMBOKについても、同様のことが言える。あらゆるプロジェクトで9つの管理対象をすべて定義し、管理する必要はない。システム開発案件の個別の状況に応じた必要最低限の定義で十分かと思う。