1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

二段階エディット法の基本公式

Posted at

二段階エディット法

二段階エディット法は、ソフトウェアテストの分野でバグの総数を推定する手法である。この方法は、2つの異なるテストを用いてバグを発見し、それぞれのテストの結果から全体のバグ数を推定する。

二段階エディット法の基本公式

この手法では、以下のパラメータを定義する:

  • テストAで発見されたバグの数:$N_A$
  • テストBで発見されたバグの数:$N_B$
  • テストAとBで共通に発見されたバグの数:$N_{AB}$

これらの数値を用いて、推定される全体のバグ数$N$は次の公式で計算される:
$$N = \dfrac{N_A \times N_B}{N_{AB}}$$

考え方と導出過程

  1. バグの発見確率:

    • テストAがバグを発見する確率 $P_A$ は $\dfrac{N_A}{N}$ である。
    • テストBがバグを発見する確率 $P_B$ は $\dfrac{N_B}{N}$ である。
  2. テストの独立性:

    • 二段階エディット法では、テストAとテストBが独立していると仮定する。この仮定は重要で、テストが独立でなければ、共通バグ発見確率 $P_{AB}$ が単純な確率の積とは異なる値を持つ。
    • 独立したテストの場合、テストAとBが同じバグを発見する確率 $P_{AB}$ は $P_A$ と $P_B$ の積で表される:
      $$P_{AB} = P_A \times P_B = \left(\dfrac{N_A}{N}\right) \times \left(\dfrac{N_B}{N}\right) = \dfrac{N_A \times N_B}{N^2}$$
  3. 全体のバグ数の推定:

    • 上記の関係から、$N_{AB}$ は $N$ に対するバグの共通発見数として表される:
      $$N_{AB} = \dfrac{N_A \times N_B}{N^2} \times N = \dfrac{N_A \times N_B}{N}$$
    • これを $N$ について解くと、推定される全体のバグ数は以下のようになる:
      $$N = \dfrac{N_A \times N_B}{N_{AB}}$$

具体例

たとえば、テストAで20個のバグを、テストBで25個のバグを発見し、両テストで共通して発見されたバグが5個だった場合、全体のバグ数は以下のように計算される:
$$N = \dfrac{20 \times 25}{5} = 100$$

この例では、推定されるバグの総数は100個となる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?