バグ数はコード数に比例する理論
バグ密度はちょっと違うか
「コード行数がLなら、バグ数BはB=f(L)になるはずだ」みたいな理論
fは比例的な関数
(なんと呼ぶ?一次関数?数学用語忘れたsta.icon)
関数でないこともある
table:こんな感じで経験則的に対応表つくられてたり
行数 バグ数
~100 1
~1000 10
これが開発プロセスとして(守るべきルールとして)定められている
ゆえに以下のようなことが起こる
「2KLならバグは20個あるはず」「20個出てないのはおかしい」「出せ」 20個出るまでテスト頑張るか、(多くの場合はこっちになるが)作文と数字いじりを頑張ることになる
ひぇっmrsekut.icon
指数関数的なのでは?miyamonz.icon
少なくとも二乗のオーダー以上な気がするねnishio.icon
モジュール間の組み合わせと考えれば$ {}_n C_2ですしねmiyamonz.icon
この爆発を抑える手段として、インターフェースを定めたり、テスト書いたり…
かもしれないです(中身の式うろ覚え)sta.icon
今度見てみよう
線形関数だった……
一応問題ないラインだと思っているけど、記載消えたら察してください
でも、100行のコード10個と1000行のコード1個でどちらのバグが多いかと思うと、後者のほうが多いかは自明ではない気がするyosider.icon
テストがあるかどうかで印象が変わる基素.icon
ユニットテストがある100行のコード10個
ユニットテストがある1000行のコード1個
前者の方がかなりバグが少なそう
テストがやりやすいから