开源软件优于商业软件吗?

阅读更多

TheServerSide Franco Martinig 原作,本文为译文,原文链接地址:

http://www.theserverside.com/news/thread.tss?thread_id=42196

 

越来越多的开发人员开始在项目中使用由开源社区提供的开放源代码软件,如: Junit, MySQL, Eclipse, PHP 以及JBoss等等.最近的一个组织针对开源软件和商业软件的质量进行了一次调查,而最后的赢家是 ... 不知道 ;o)

开源 VS 商业 2006 (2004年的调查)

质量相当: 38% (32%)

一言难尽: 22% (24%)

质量更高: 20% (26%)

质量为低: 12% 13%

不使用开源工具软件: 6% (4%)

不使用商业软件: 2% (1%)

参与人数: 524 (312)

来源: http://www.methodsandtools.com

 

对于许多参与调查的人来说,针对开源软件和商业软件在开发上的应用,在质量上并没有太大的区别。对于 22% 的人来说,没有严格的答案。在这两个世界中都存在着多样性,因此当你已经准备下出某种结论时,你会想起,你以往的使用经验正在得出与之完全相反的结论。从 2004 年至今,针对这个问题的看法并没有多大的改变,尽管开源软件的使用群体这些年来一直在增长。这也许可以用来解释为什么认为开源软件质量优于商业软件的人减少了 6% —— 随着开源软件使用的更加普及,它所暴露出的缺陷也在增多。

认为开源软件和商业软件质量相当似乎很好理解:除了被印上“开源”的标签以外,开源软件如JBoss, PHP or MySQL等在支撑架构上与它们的商业竞争对手没有什么不同。有大公司 IBM 支撑的开源产品,如 Apache, Eclipse 当然要比 SourceForge 上一个不知名的小项目经受更多的测试。对于开源的开发工具来说,广泛的用户群体催生了专业的服务提供,软件本身的质量管理被商业化了。

对于 20% 的参与者来说, 开源软件的质量优于商业软件。 在我们非正式的调查之外, 已经有一些针对开源软件和商业软件质量比较的研究。这些研究中的一部分来源于开源软件的提供者,他们声称:他们的软件可以提供更高的质量。一些评审研究和用户的回馈被引用,以证明开源软件的质量更高。当准备在开源世界里发布一些软件时, NASA 通过“在开源社区代码复查”的形式提高所提供软件的质量做为其首选。(参看参考链接)。 但如果说一个小的开发团队和一个小的用户群是小型软件提供商面临的主要问题的话,那么一个大的商业组织完全可以在其内部进行代码复查的工作,并且他们也拥有着极大的用户群,可以通过某种渠道获得用户的反馈。那么到底是什么原因是的开源软件被认为拥有稍高的质量呢?


以下一些因素可能影响用户的判断:

- 开发者及用户 (不是消费者!) 感觉自己在更高的层次上拥有着软件。他们会感觉自己是在某一个特殊的领域发展了产品,而不仅仅是为完成工作而作为产品的一个使用者。

- 用户和开发者之间的对立并不强。

这是因为:

a) 金钱不是因素;

b) 没有商业组织对软件好处的过度宣传;

c) 开源组织在提改 bug 上,似乎对客户更加在意,因为这个过程是合作的而非对立的。

 

关于开源软件质量的一些参考资料:

http://opensource.arc.nasa.gov/

http://scan.coverity.com/

http://www.artima.com/weblogs/viewpost.jsp?thread=21730

http://www.cyrius.com/publications/michlmayr_hill-reliance.pdf

http://opensource.mit.edu/papers/michlmayr_hunt_probert-quality_practices_problems.pdf

http://www.theglobeandmail.com/servlet/story/RTGAM.20060420.gtflkhaledapr20/BNStory/Technology/einsider

你可能感兴趣的:(软件测试,OpenSource,MySQL,Eclipse,JBoss)