红联Linux门户
Linux帮助

Coverity报告:开源与专有代码质量并肩

发布时间:2012-02-27 14:57:01来源:红联作者:bretxn
  来源:赛迪网

  开发测试领域的领导者Coverity公司日前发布了2011开源代码完整性 Coverity检测报告(2011 Coverity Scan Open Source Integrity Report)。该报告是在对大量公开-私人领域进行项目调研后的成果,该调查最初是Coverity受美国国土安全部所托在2006年开展的,目前该项目属Coverity公司所有并进行管理,主要就业界开源软件完整性进行研究。

  2011年,Coverity检测(Coverity Scan)的开源代码项目升级为Coverity 5开发测试平台分析引擎,以适应过去5年中静态分析技术的快速成熟---- 特别是其在软件代码中查找新的及已有类型缺陷的能力。2011的Scan报告详述了对最常用开源项目的检测分析,共计3700万行开源软件代码。此外,该报告还详述了匿名Coverity用户的超过3亿行专有软件代码样本。

  2011 Scan报告列出的关键内容如下:

  报告对45个最常用的开源代码项目的超过3700万行代码进行了分析,平均每个开源项目的分析行数为832,000行,平均缺陷密度或每千行代码缺陷数,为0.45。

  对Coverity匿名用户的41个专有数据库中超过3亿行代码进行了分析。平均每个专有数据库有750万行代码,Coverity用户的专有数据库平均缺陷密度为0.64。

  就缺陷密度而言,开源代码质量和专有代码质量都比软件行业平均数要好,行业的缺陷密度为1.0。

  Linux 2.6、PHP 5.3和PostgreSQL 9.1都是公认的代码质量优秀的开源项目,甚至可用于行业基准,而其缺陷密度分别为0.62、0.2和0.21。

  开源代码与专有代码质量不相上下,特别是当代码库规模差不多时。例如,Linux 2.6项目有近700万行代码,其代码缺陷密度为每千行0.62,差不多同等规模的专有代码库的缺陷密度与之类似。

  对开源及专有代码库的分析显示,重视软件质量的组织,通过将开发测试整合入其开发工作流程,会因代码的高质量而获益匪浅,并将随着时间的推移不断见证新的质量提高所带来的益处。

  除了发布2011 Scan报告,Coverity也宣布了任命Zack Samocha为CoverityScan Project总监的消息。Samocha曾在Mercury Interactive公司供职近10年,如今在HP工作,擅长QA测试产品开发及企业应用开发构建质量优化研究。他的企业开发及测试经验对开源社区开发测试优化很有帮助。

  PHP创始人Rasmus Lerdorf表示,“代码质量对PHP不断取得的成功和持续做出调整至关重要,这涉及世界上最受欢迎的一些网站的质量,随着我们代码库容量和复杂性的加大,通过Scan以提高我们的代码质量会变得越来越重要。”

  Coverity Scan Project总监Zack Samocha表示,“开源和专有软件之间的界限会随着时间而原来越模糊,因为现代软件供应链中已越来越深入地用到开源代码。我们对Scan项目的目标是激活(enable)更多的开源代码,将开发测试整合为其工作流程的一部分,不断提高质量,并通过加深对质量的可视性更进一步整合开源代码。”
文章评论

共有 0 条评论