人月は神話ではあるが、それでも人月商売はなくならない

ソフトウェア開発では、人月の神話という著名でかつ開発に携わる者にとっては、バイブルみたいな本がある。発刊から20年以上経っており、今読むと、時代遅れな部分もあるが、コンセプトは今尚通じるものであるし、人月という言葉を誤って使い人を大量に投入して失敗することは、よくあることだ。

「人月」はソフトウェア工学で特定のソフトウェアを実装するのに必要となる工数として、人と時間との単純な掛け算という形で表現した単位である。 例えば 5人が 3ヶ月かかってソフトウェアを実装する場合 15人月の工数ということになる。

本書では、「人月」について誤って認識している人々が多い。人月とは見積りとスケジューリングに使われる仕事の単位である。「コストは実際に人数と月数の積に比例する。が、進捗はそうではない。したがって、仕事の大きさを測る単位としての人月は、疑うべき危険な神話なのだ。人月とは、人と月とが互いに交換できるという意味だからである。」と述べている。

人月の神話

人月の神話

人月商売だからと、人がいればどうにかなる商売ではないというのは、ソフトウェア開発をしたことがあれば当たり前といえば、当たり前なのだが、現実は、この本のように全てを実践できている人は少ないだろう。

見積もった人月に見合うは人をアテて、頭数を揃えて進めればうまくいくかというとそういう訳でもない。実際には作戦・立案・実行が予定どおりに行けばという前提である。そしてその前提はいつもアテにはならない。
大事なのは、頭数を揃えるのではなく、いかにメンツを集めるかの方が実は重要である。どういう人が予想したポジションで、きっちり人月分の働きをしてくれるのか、もしくは、それ以上の仕事をしてくれる人たちだろうか?ということである。

要求を満たすための仕事は、人月で調整がつくかもしれないが、それ以上の価値をつけることで人月の価値を超えるというのが、人月計算から逃れる唯一の道かもしれない。