
532
30
章
10
倍が意味するものは?
プログラマの生産性のばらつき測定
この程度のばらつきは、ソフトウェアに限ったことではありません。
Norm Augustine
の調査では、
作家、野球、警察の仕事、その他の職業など、プロにおいては広く、上位
20%
の人がアウトプットの
50%
を生み出している、ということが分かりました[
Augustine 1979
]。アウトプットとはタッチダウン、
特許、事件解決、ソフトウェアなどを指します。自分でも考えてみれば、よく分かると思います。私た
ちはみな、すごい学生、すごいアスリート、すごいアーティスト、すごい両親、などを知っています。
これらの違いは人間の振舞いの通常の部分であり、だとすればなぜソフトウェア開発だけ違うというふ
うに考える必要があるでしょうか?
悪い側の個人的ばらつきの極端さ
Augustine
の調査で観察されたのは、一部の人は一切の実のある貢献をしない(タッチダウンをしな
いクォータバック、特許を持たない発明家、事件を解決していな
い探偵など)ので、おそらくデータは
実際の生産性におけるばらつきを過少評価しているのだろう、ということです。
このことはソフトウェアにおいては本当のようです。ソフトウェア生産性に関する公表されたいくつ
かの論文では、約
10%
の被験者が実験の課題を完了できていません。論文では「従って、これらの被験
者たちの結果はデータセットから除外しました」と書かれています。しかし現実の生活では、誰かが「課
題を終えていない」としても、「データセットから彼らの結果を除外する」 ...