登录

只限于购买图书馆的读者证号,不涉及读者个人信息

登录

注册

忘记密码

重设密码

重设密码

重设密码

提示

您已注册完成,是否去 登录

当前位置: 前沿 > 开源与专利之争大讨论 软件采购应该如何选择

开源与专利之争大讨论 软件采购应该如何选择

来源: 发表于2016-07-01 收藏

在软件的采购过程中到底该选择开源软件还是专利软件,有关这一问题的讨论在TechRepublic的论坛中一直没有停止过。我们分析了各方
面的观点,并把各方的论据列在下面。



在过去几个月里,有关该选择开源软件还是专利软件的问题,在我们TechRepublic的论坛中被炒得沸沸扬扬。其中一方对开源组织的动机
有所怀疑,并认为背离经济利润因素的商业模式是没有发展未来的。而支持开源软件的用户则认为如何提高经济效益和管理,是开源组织
急需解决的问题。剩下的一些用户处于中立地位,和我一样,他们都没有非常高深的技术背景,因此在一群高手的讨论中插不上话,而他
们本质上只是希望可以拥有性能最好的软件。



虽然这场辩论一时半会儿不会结束,但是我们可以通过分析各家的言论,从中总结出大家都认可的观点,求同存异,并进一步展望软件业
的未来。



初级讨论



从正在进行的讨论中可以明显地看出,到底是选择开放源代码软件还是选择具有专利权的软件已经成了企业决策者在购买软件产品时所必
须面对的问题。正如我在一个帖子里所说的:



现在的问题不再是开源软件有没有实用性,而是各个企业的IT经理是否会在企业内部安装这些开源软件的问题。这种转变意味着开源软件
目前在基本的效用、成本、可靠性、安全性以及功能等方面以及达到了企业的基本需求。



然而,谈到Linux 时,并不是所有人都认为它已经完全适用于桌面最终用户了。比如TomSal的观点:



Linux 在短期内还不会成为桌面操作系统,也许在一些IT专业领域的公司或者类似的技术型企业内,它有一定的占有率。但很多小型企业
都没有安装Linux ,因为他们还处于需要帮助人员告知如何设置默认打印机以及如何在Word里调整字形的层次,而家庭用户使用Linux 的
就更少了。Linux 首先应该更加符合“AOL ”(always on line,时刻在线)人群,也就是IT人的使用习惯,这样他们才会告诉企业的
CIO/CFO 和CEO ,选择Linux 作为企业的桌面操作系统会有什么好处。



一直以来我都有一个观点,那就是Linux 总是需要用到长长的命令行以及各种复杂的语法和参数。而最近TechRepublic上的Point & Click
Linux 改变了我的想法。MEPIS Linux 除了CD盘外,还附有一本说明书,用户安装时非常方便。那些感觉Linux 安装麻烦的用户再也不会
抱怨什么了。正如apotheon所说:



我发现很多用户界面友好的Linux 系统在安装时甚至比安装Windows 操作系统还要简单。SuSE的安装界面非常人性化,而Fedora和Progeny
Debian这两个Linux 产品也都采用了Anaconda图形化安装界面,它们都要优于windows 的安装界面。MEPIS Linux 同样具有用户想象不到
的极为简单的安装界面。



就连Debian(我最喜欢的一款Linux 系统),虽然界面看上去复杂,但实际上也仅仅需要在安装时进行少量的基本配置就可以了。关键问
题是很多钟情于Windows 操作系统的用户没有留意到或者根本没有想到安装Linux 操作系统会这么简单。



进一步讨论



但是,就算你承认Linux 和其它开源软件已经应用于许多企业的桌面办公应用,人们依然对开源产品有很多根深蒂固的成见。对于任何企
业来说,软件的安全性一直是关注程度最大的问题,尤其是对企业中的关管理部门或财务部门来说。企业的决策者必须确保所选择的软件
产品具有足够的安全性。有关这个问题的讨论,可以从TechRepublic论坛中KaceyR网友的发言看起:



随着开源软件的发展,我发现了一个基本的问题:



唯一完全确定该软件不会对你的系统造成破坏的方法就是亲自检查它的源代码并自己编译它。



如果我是恶意的网络黑客,完全可以很轻松的建立一个开源软件的网站,这个网站上包含源代码和编译过的可执行文件。我可以按照我所
希望实现的功能随意在可执行文件中添加恶意代码,一般来说用户都会直接下载可执行文件,就算有些人下载了源程序,由于我的网站上
已经有编译好的程序,他们一般也不会再去编译它。当然,虽然我在编译好的程序中添加了恶意代码,但肯定不会傻到在大家都能查看的
源代码中作任何手脚。



如果没有检查代码,并亲自编译这些代码,用户就无法确定所运行的程序是完全符合自己期望的那个程序。这些程序到底是不是带有恶意
的代码,用户根本无从知晓。等到问题出现,也许就只能重装系统了。



话又说回来,如果你有时间和足够的技术能力来分析这些源代码,那么为什么还要花时间来看别人的代码,自己编写一个不是更好么?



举个例子吧,假如你下载了现在很流行的开源软件Firefox ,实际上你下载的这个版本可能是被黑客篡改后允许外部人员访问你系统。你
用它在网上四处浏览,同时也为系统开启了后门。最后,你发现资料丢失,并最终锁定Firefox 是罪魁祸首。当你向它的开发者Mozilla
兴师问罪时,却被告知你所使用的firefox 并不是他们开发的原始的firefox ,而是经过修改的,因此Mozilla 不会为你的损失负责。现
在你所能做的也许就是重装系统了。



现在假设你使用的是私有软件产品,而你的个人资料同样泄露出去了。在事后调查中,你发现XYZ 公司的ABC 产品是泄密的根源。你所使
用的软件签名就是XYZ 公司,此时XYZ 公司很明显负有责任,他们会帮助你确定漏洞的根源并帮助你弥补漏洞,同时你(也许)可以向法
院起诉XYZ 公司。



因此用户需要具有一定的信心以及一定的保护措施,才可以使用开源软件产品。而企业如今面对系统入侵和商业间谍犹如惊弓之鸟,在这
种情况下,很难选择可以被任意修改的开源软件。



总的来说,这位网友的发言说出了大多数企业不愿意采用开源软件的原因。不管这种想法时候正确,起码很多人认为开源软件的安全性并
没有私有软件高,而谈到技术支持和责任承担问题,没有一个开源软件公司能够和专利软件公司相媲美。虽然开源软件公司和那些支持开
源软件的用户正在为此不断努力,但要消除这方面的劣势,不是一朝一夕就能实现的。



对于KaceyR网友提出的“开源软件安全性”的问题,bhoule网友提出了不同的意见:



几年前,一个商业数据库软件(Borland InterBase )进入了开放源代码社区。直到此时,隐藏在该产品中的未被公布的“后门”才被发
现,而在此之前,黑客可以利用这个后门绕过数据库和操作系统的安全屏障。



你怎么能肯定在目前的多种商业软件中,就不会再有类似的情况出现呢?如果不直接面对代码,谁能肯定这个软件产品是绝对安全的呢?
而开放源代码后,起码很多隐藏的问题都会暴露出来。当然,这并不代表大家都不再使用商业软件了。



开放源代码和商业软件都不是万灵药。决定使用何种软件需要考虑到经济效益因素和信任因素。你是否信任开源组织胜过信任商业软件厂
商呢?企业的长期总体拥有成本是开源软件多一些还是商业软件多一些呢?这些问题都没有一定的答案。任何一个阵营都不是百分百的令
人满意。处在不同环境的不同用户,其需求也是不一样的。



但是这种问题可能会困扰很多人,比如网友KaceyR. 他所说的要检测一个开放源代码项目的安全程度,唯一的办法就是亲自察看代码并执
行编译。这个观点表面上是正确的,但是它忽视了开源团体的力量,以及开源环境中所提供的公告板的监督和报告作用。如果生活在一个
与外界完全隔绝的空间,那么检查源代码的安全性是非常重要的。但是现实是,有数百万双眼睛在盯着开源社区,带有漏洞的程序一旦出
现,很快就会被发现。有些人也许有那种检查代码的癖好,他们喜欢对每个新出现的程序进行安全性检查。虽然我对此可没那么大兴趣,
但我很支持他们,并且会等到多人测试过代码并确认安全后,再安装运行它。



最后,KaceyR所说的法律责任问题也有点不相干。一个校验和正确(checksum-validated)的商业软件怎么能与校验和失败的开源软件相
比呢。让我们转回头来比较一下相似的情况:一个商业软件供应商不会对校验和失败的产品进行支持,而一个开源软件供应商会对校验和
失败的产品进行技术支持。另一个问题是,虽然校验和会成为追究法律责任的依据,但是还要看软件在最终用户许可协议(EULAs )中有
关条款的说明,而且进入司法程序是一个很漫长的过程。总的来说,法律上的支持将是提升用户信任程度的一个很重要的因素。



至于每个用户到底信任哪种软件,完全看他们自己的感觉了。我认为KaceyR网友会更信任商业软件。而对开放源代码软件钟情的用户会使
用Linux 作为桌面系统,在PDA 上使用Opie,在DVR 上使用Freevo. 而我们剩下的人则会在两者之间保持平衡,以经济效益和信任度作为
标准来选择软件。



展望



在一开始,安全性问题总是备受关注,当企业还不太确定采用何种软件时,人们会对开源产品抱有恐惧,怀疑等多种难以克服的情绪,特
别是当企业没有相应的对策时尤其如此。虽然不断的实际测试并发现问题需要耗费很长时间,但是这是值得的,它为改变开源软件在人们
心中的印象提供了证据。但是当你进入到问题的中心:什么才能确保软件安全;你对各个软件的安全性又有多大的信心呢?现实中,无论
是开源软件、私有软件还是内建软件,对于企业的IT人员来说,软件漏洞,错误的软件安装程序,以及功能不健全的软件是经常能碰到的。



在文章的最后,我们分析一下软件的服务和信用问题。作为IT专家,在购买软件时,你必须考虑到该软件产品的服务协议,并结合它来判
断软件的信用问题。不论是开源软件、内建软件还是专利软件,都应该如此考察。



在这方面,网友t_mehta 有以下观点:



1.对所有软件的信任是一个诚信与测试的问题,任何专利软件都不是绝对可靠的,正如很多开源软件(OSS )同样存在漏洞。



2.不论是使用开源软件、微软还是Borland 的用户,研究到底谁该对代码中的漏洞负责没有什么意义,大家都是一样在等待有人将漏洞修
补好。



3.如果你选择有服务支持的软件,不论是商业化的开源软件还是专利软件,都是一样的。



4.如果你选择下载安装那些没有支持服务的软件,比如MS系统上的免费软件或开放源码的Linux ,一旦发生了问题,你都不会得到任何补
偿,唯一能做的就是重装系统。



5.不论是何种软件(开源或专利软件),只要用户协议一样,那么你所能得到的法律援助也是一样的。



总的来说,刚才我所列出的几点对比无非是想告诉大家,最主要的问题是服务协议,不论是对开源软件还是专利软件用户来说,服务协议
都是很重要的。因此我不会像网友KaceyR那样担心法律援助问题,大家可以比较一下不受支持的专利软件和受支持的开源软件,很明显后
者更能让我们放心,这种信任和软件是不是出自开源社区没有关系。



因此就我看来,选择何种软件应该从自己所需的功能以及成本效益的角度出发,而不用管这个软件是来自开源世界还是来自商业软件公司。



随着软件功能的增加,代码也越来越复杂,任何软件都难免会出现漏洞。因此对软件的评价也不该以它的出身来评价。开源软件和商业专
利软件的讨论不该停留在二者发售方式的区别,而应该进一步讨论软件自身所能提供的功能。将讨论的中心放在软件自身的价值上,要比
讨论如何付费或者对谁付费要更具有说服力。



译自techrepublic.com.cn

热门视频推荐