オープンソースの品質は改善、米Coverity調査

 ソフトウェア品質管理ベンダーの米Coverityは5月20日(米国時間)、オープンソースソフトウェアの品質に関する調査書「Scan Report on Open Source Software 2008」を発表した。2年にわたって約250のオープンソースプロジェクトのコードをスキャンしたもの。オープンソースソフトウェアの品質とセキュリティは改善しているとまとめている。

 調査では、欠陥(バグ)密度をスキャンする自社「Coverity Scan」サイトと静的コード解析ツール「Coverity Prevent」の2つを利用して、約250のオープンソース・約5500万行のコードを繰り返しスキャンした。ApacheやLinuxなど、人気が高いオープンソースを選んだ。分析したコードは合計で100億行近くに達するという。

 その結果、Scanサイトではこの2年間で欠陥密度の検出数が16%削減するなど、オープンソースソフトウェアの品質とセキュリティは改善していることがわかった。欠陥の種類としては、「NULL pointer dereference」が最多、「Use before test of negative values」が最少だった。欠陥と解析されても実際のプログラムでは欠陥にならない誤検出は、13.2%。

 関数の平均文字列が長いと欠陥検出密度が高くなるという認識は、調査では確認されなかったという。Coverityでは、これらの関係は商用ソフトウェアにも当てはまると見ている。コードの行数と欠陥の相関関係は71.9%。コード行数と欠陥はリニアに増加するという。

 プロジェクト別に見ると、欠陥密度が最も低いグループにはSamba、Perl、PHPなどが入っている。平均値は1000行あたり1。

米Coverity
http://www.coverity.com