
491
ここからどこへ行くか
ルとバグデータに関する仮説検定に関してそうであることを示しました[
Bird et al.2009a
]。データセッ
トを人手で調べてもこの問題は解決はしないのですが、粒度の大きなバイアスを見つけることは人手に
よって可能です。
ステップ
7
:バグをファイルに対応付ける
ここまでのステップで、バグをバージョン管理トランザクションに対応付けました。次は、バグをソー
スコードファイルに対応させなければなりません。幸い、このステップは簡単です。データベース(図
27-1
)を使えば、どのソースコードファイルがどのトランザクションで変更されたかが分かります。
Zimmermann
らは同様の技法を使って、ソースコード位置(ファイル)ごとの、異なる番号のバグ
ID
の数を数えました[
Zimmermann et al.2007
]。
この結果データセットには、それぞれのソースコードファイル中で修正されたバグの個数
が含まれて
いて、これそのファイルのを品質の指標として使えます。このデータをさらに他の要因、たとえばファ
イルに対する変更数とかコード複雑度メトリクスと関連付けて見ることができます。
たとえば図
27-2
は、本章で解説したステップを用いて、
Eclipse
リポジトリから作り挙げた図で、
Eclipse3.1
の
300
行以上が変更されたファイル中で修正されたバグの分布を示しています
†
。図中のそ
れぞれの長方形は
Eclipse3.1
の出荷されるソースファイルを示しています。同じパッケージ内のすべて
のファイルがまとめてグループ化されています。ファイルの長方形が大きいほど、 ...