放射能被害の定量的「見積り」について

早川さんが放射能汚染のリスクを数値化すると言っていたので、日頃、ソフトウェア開発の実務的な「見積り」をやってる立場からひとこと。

1. 先輩に教わった見積り
 会社に入った時に先輩に教わった見積り方法です。
 「まず、目いっぱい、仕事が遅れて人数が膨らんだ時の工数をはじけ」
 「それに2を掛けろ」
 「そして、桁をひとつ上げろ」

2. ソフトウェア技術者の憲章
 これは目茶苦茶な見積りですが、数値以外にも問題があります。

 IEEE, ACMが共同で出したソフトウェア技術者の憲章には、
 「ソフトウェア技術者は、見積りを一つの数値として出すのではなく、予想される範囲とその範囲に収まる確率として算出する」
 という文があります。

 つまり、見積りを出してくれと言われて「12か月、50人月でやり切りますっ!!」と回答するような奴はソフトウェア技術者じゃねーよ、とIEEEACMが言っているのですね。

 それはコミットメントだと。エスティメートじゃないよと。
 見積りというものは技術的な根拠をもとに、このくらいになる可能性が何%と計算することであって、一点見積りは「だめ」。確率分布を出しなさいと。

 つまり、「10か月から16か月以内、30人月から90人月の間に収まる確率が80%です」というのが本来の見積りなのです。

3. じゃあ、80%以上の確率で正しい見積りは?
 スティーブマコネルの「ソフトウェア見積り」という本の最初に、「海の水の体積は?」「アジア大陸の面積は?」などという質問に対して80%以上の確率でその範囲に入る値(上限、下限)を数分以内に計算しなさい、という問題があります。

 これをソフトウェア技術者にやらせると、80%なんて全然達成できない。つまり、精度の高い=狭い範囲であてようとしすぎちゃうんです。
 これと同じ匂いを早川さんや森口さんにも感じていて、昔、言ったのですが覚えておられるだろうか。

 福島のコメを食べたときの死者数を算出するなら、「2人」じゃなくて、「0.5人から500人の範囲に収まる確率は80%以上」と言うのが、ACMIEEEの流儀です。
 それを提示されて、じゃあその確率で話していいものなのか、上限がそれで大丈夫なのか、という議論が始まるのであって、一点見積りなんて素人みたいなことされても困るなあ。