システム開発の現場において工数の見積もりは必須だ。しかし、従来型の開発では精度の高い見積もりは極めて困難である。見積りのための情報が揃っていることは稀であり、たとえ揃っていたとしてもそれを収集する時間はないからである。
だが多くの現場ではその状況でも見積もらなければならない。不足情報は過去の経験と勘で補うしかない。

あるプロジェクトにSEとして参画したA君の最初のタスクはX機能の設計だった。マネージャーにどれくらいの日数がかかるかを問われたA君はそれぞれ1週間かかると答えた。マネージャーはそれにあわせてスケジュールを組んだ。
ところがA君は見積りを間違えてしまっていた。つまり本来2週間かかる作業を1週間と言ってしまっていた。だが、気付いたのは作業に入って2日目であった。
すぐにマネージャーに報告したが「1週間と見積もったのはあなたなのだから責任をもって間に合わせてくれ」と押し切られてしまった。徹夜で作業をしても期日には間に合わないのは明らかであった。それでも何とかするしかない。結局徹夜と土日出勤の覚悟を決めた。

見積りミスの責任がSEに押し付けられるケースは少なくない。だが技術者の多くは駆け引きを知らない。こうした交渉スキルは管理者が上である。見積もりミスという負い目もあり管理者に「責任を取れ」と言われれば大抵のSEは渋々ながら従う羽目になるだろう。SEはもっとマネージャーとの交渉スキルを磨くべきだ。
A君も、納得していない部分もありながらも「自分のミスだから」と残業を承諾した。しかし寝不足で作られた設計書の品質は低い。品質が低ければ後工程で手戻りが発生する。悪循環となる。

だが、こうした悪循環はSEの交渉スキルの低さだけが原因でおきるわけではない。プロジェクトマネージスキルの低さもあるのだ。

作業Aを行う条件が作業Bの完了である場合、それを考慮してスケジュールを組まなければならない。それができなければログイン画面やメニューができていないのに社員照会画面を開発するような状態になってしまう。
これはパート図を知っていれば簡単な作業だが、驚くべきことに多くのマネージャーはパート図を知らない。パート図はプロジェクトマネージメントの基本である。つまり基本を知らない。

この様なプロジェクトマネージャーの下で働く技術者に心から同情する。