起こりそうにないバグが起こるのはなぜか

落としたトーストがバターを塗った面を下にして着地する確率は、カーペットの値段に比例する

発生確率の非常に低いバグ。窓は狭いし、条件も複雑。
そんなものがよりにもよって、こんなタイミングで、こんなところで発覚するなんて。。。
いわゆるマーフィーの法則? どう考えても運悪すぎない?

・・・というようなこと、経験ないでしょうか。

そうそう起こるとは思えないような発生確率が低い、発生条件も非常に限定的な不具合が、よりにもよって、最悪の時、場所で見つかる。しかも、しょっちゅう。。自分自身も「なんて引きが悪いんだろう。。」って考えていたこともありますが、よく考えれば答えは簡単です。

『発生確率が低い不具合が、たくさん残っているから』

100万分の1の確率で発生するバグだって、そんなバグが100万個残っていれば、すぐにどれかにあたります。『下手な鉄砲も数撃ちゃ当たる』。いや、『ゴキブリを一匹見かけたら◯◯匹いると思え』ですかね。母数がたくさんあれば、当たりもひいてしまいます。

なので、こういったバグを引いた時は、単に「運が悪い」といって片付けるのではなく、まだ見ぬ低確率のバグがまだまだ残っている、言い換えると十分バグは収束していないという認識をもって、次にどういうアクションをとるべきか考えることが重要です。とりあえずの対症療法で済ませるのか、根本対策すべきかなど、その対応は開発ステップによってかわってくるでしょうが、品質のレベルを正しく認識、共有することは、結構、意識的or無意識的に無視orごまかされがちなので、注意したいところです。

4873114799

【関連記事】
このバグ直しますか? - 原因療法と対症療法
バグを潜伏させない工夫
デバッグと不確定性原理
デバッグ指向のススメ


【関連書籍】

本のおすすめ

4274065979

4844337858

482228493X

4904807057

4873114799


プロフィール

  • Author:proger
  • 組み込み関係で仕事してます

ブログ内検索