日前Coverity公司发布了2011开源代码完整性Coverity检测报告。该报告是在对大量公开-私人领域进行项目调研后的成果,该调查最初是Coverity受美国国土安全部所托在2006年开展的,目前该项目属Coverity公司所有并进行管理,主要就业界开源软件完整性进行研究。
2011年,Coverity检测(CoverityScan)的开源代码项目升级为Coverity5开发测试平台分析引擎,以适应过去5年中静态分析技术的快速成熟--特别是其在软件代码中查找新的及已有类型缺陷的能力。2011的Scan报告详述了对最常用开源项目的检测分析,共计3700万行开源软件代码。此外,该报告还详述了匿名Coverity用户的超过3亿行专有软件代码样本。
2011Scan报告列出的关键内容如下:
“报告对45个最常用的开源代码项目的超过3700万行代码进行了分析,平均每个开源项目的分析行数为832,000行,平均缺陷密度或每千行代码缺陷数,为0.45。
“对Coverity匿名用户的41个专有数据库中超过3亿行代码进行了分析。平均每个专有数据库有750万行代码,Coverity用户的专有数据库平均缺陷密度为0.64。
“就缺陷密度而言,开源代码质量和专有代码质量都比软件行业平均数要好,行业的缺陷密度为1.0。
“Linux2.6、PHP5.3和PostgreSQL9.1都是公认的代码质量优秀的开源项目,甚至可用于行业基准,而其缺陷密度分别为0.62、0.2和0.21。
“开源代码与专有代码质量不相上下,特别是当代码库规模差不多时。例如,Linux2.6项目有近700万行代码,其代码缺陷密度为每千行0.62,差不多同等规模的专有代码库的缺陷密度与之类似。
“对开源及专有代码库的分析显示,重视软件质量的组织,通过将开发测试整合入其开发工作流程,会因代码的高质量而获益匪浅,并将随着时间的推移不断见证新的质量提高所带来的益处。
PHP创始人RasmusLerdorf表示,”代码质量对PHP不断取得的成功和持续做出调整至关重要,这涉及世界上最受欢迎的一些网站的质量,随着我们代码库容量和复杂性的加大,通过Scan以提高我们的代码质量会变得越来越重要。“
CoverityScanProject总监ZackSamocha表示,”开源和专有软件之间的界限会随着时间而原来越模糊,因为现代软件供应链中已越来越深入地用到开源代码。我们对Scan项目的目标是激活(enable)更多的开源代码,将开发测试整合为其工作流程的一部分,不断提高质量,并通过加深对质量的可视性更进一步整合开源代码。“
要获取最新的2011Scan报告的内容,请点击此处注册下载。