研究実績の概要 |
バグ予測に基づく最適なテストケース数の配分を決定するための問題の定式化を行い,その解法を明らかにした.本問題の入力は,総テストケース数,各モジュールの特徴量(規模,条件分岐数,サイクロマティック数など),バグ予測結果(各モジュールの潜在バグ数の予測値)であり,各モジュールの期待バグ発見数の和を最大化することが目的関数となる. モジュールの集合M={m_1,..., m_n},総テストケース数t_totalとすると,本問題は,「maximize f(t_1, ..., t_n}=ΣH_i(t_i) subject to Σt_i=t_total」として定式化される.ここで,t_iは,モジュールm_iに割り当てられたテストケース数,H_i(t_i)はモジュールm_iの発見バグ数の期待値,f(t_1,..., t_n}はMの総発見バグ数の期待値である. 本定式化にあたって,テストケース数と発見バグ数との関係を表すモデル式H_i(t_i)が必要となる.本研究では,指数型SRGM(Software Reliability Growth Model)にモジュール規模(またはサイクロマティック数)をパラメータに加えたモデル式を採用した.このモデル式は単調増加かつ凹関数(上に凸)であるため,本問題は,分離凸資源配分問題として解くことが可能である.小規模なデータセットを用いて,greedy法により最適解が得られることを確認した.
|