SPAMフィルタを用いた不具合混入モジュールの検出

a bug on a source code
a bug on a source code

ソースコードに含まれる不具合を早期に検出する技術は,ソフトウェア工学の中でも古くから研究が為されてきた分野です.従来の技術は事前に複雑度メトリクスなど計測すべき対象を設定し,その値をソースコードから収集し,数理的モデルによって判定するという手順が一般的でした.

しかし,複雑度メトリクスの収集はそう簡単な問題ではありません.また,一般に複雑度メトリクスはソフトウェアの履歴を考慮には入れていません.

本研究では,ベイジアンテキストフィルタを用いることでソースコードを単なるテキストファイルと見なしてクラス分けすることを試みています.ソフトウェア工学的なアプローチからみれば異端ですが,意外と面白い結果が出ると考えられます.

なお,本研究で利用するデータは「不具合の混入したことが明らかなソースコードモジュール群」と「不具合が混入していないことが明らかなソースコードモジュール群」になります.現在,オープンソースプロジェクトからこのデータを抽出する技法についても開発しています.

関連論文