您的位置: 网界网 > 周报全文 > 正文

[周报全文]企业拥抱开源的4个理由

2014年02月25日 14:36:29 | 作者:CNW.com.cn | 来源:网界网 | 查看本文手机版

摘要:开源不仅仅意味着省钱,企业还可以利用开源技术加快企业应用的开发速度,并生产出高质量的产品组件,提高企业的敏捷性,促进企业业务的发展。

标签
开源

当开发者想到开源时,他们只会联想到“免费”,而不会想到其他的方面。因为一般情况下,人们不会太关注那些能够让他们免费使用且几乎没有任何许可限制的技术。

如今,当企业想到开源时,他们会立刻想到“业务敏捷性”。面对当今瞬息万变的市场,企业越来越重视“业务敏捷性”,并将其放在企业发展的首位。

相关IT业界人士表示,利用开源技术,能够快速、有效地开发出新的应用,同时还能节省成本,这使得许多大大小小的企业都开始拥抱开源技术,并不断地将开源技术应用到一些规模更大的项目中。

这就是开源技术迅速普及和流行的原因。Forrester研究公司专注应用开发和交付的分析师Jeffrey Hammond在Forrester发布的一篇题为“2013年的开发环境(Development Landscape: 2013)”的报告中指出,76%的开发者都不同程度地使用过开源技术。

为什么很多企业,无论其规模大小都非常重视开源技术呢?对此,本文总结了四点原因。

开源能够减少成本

节省成本是企业重视开源技术的原因之一,也是一个非常重要的原因。无论是大企业还是小企业,成本都是它们要考虑的一个重要问题。比如,美国流媒体播放公司Netflix每个月的服务支出费用最少时才8美元,这是怎么做到的呢?对此,Hommond解释说:“因为Netflix公司所有的东西都创建在了开源软件上,这样的话,该公司只要集中精力做内容就可以了,而不用费心思去建立运营系统或者测试架构。”

“Netflix通常使用Spring、JBoss或Drupal等开源软件对其内容进行管理。”Hammond表示,一些企业能够免费使用“Lego blocks”,所以他们能够将更多的时间和资源投入到他们想要做的事情上去。过去,企业通常采用定制的软件套装,如ERP应用。而如今有了开源技术,定制软件的成本也降低了。

开源可以控制成本支出

虽然近来许多开发者和越来越多的企业都看好开源技术的发展,但并不是所有人都这么认为。

据Forrester 2011年第四季度的调查发现,那些从不使用开源工具,尤其是开源集成工具的开发者们对开源退避三舍的主要原因是,他们对技术支持(71%的受访者)和缺乏管理开源项目的技能(42%的受访者对此表示担忧)表示担忧。同时,受访者还担心安全和授权限制范围等问题。

在某些情况下,开源的确促进了应用定制开发的发展。在过去十年里,应用定制开发在市场上逐渐失宠,这导致了商用级的应用和软件即服务[注]SaaS[注])产品获得广泛使用。

应用的定制开发可以节省成本,这一点吸引了锐珂医疗公司(Carestream Health)。锐珂医疗总部位于美国纽约罗彻斯特,是一家总资产约25亿美元的牙科、医疗成像系统和医疗保健IT解决方案供应商,该公司现有8000名员工。锐珂医疗想要将其在世界各地工厂中的医疗设备上的数据信息整合到单一产品生命周期管理应用(Product Life-cycle Management, PLM)中,主要通过有效的信息管理,以减少新产品的研发和生产时间。

“我们想要对全球范围内的产品相关信息实现统一的管理”,锐珂医疗全球研发和IT工程部门主管David G. Sherburne说:“未来随着现代化平台的产生,我们希望通过采用有效的解决方案,同时减少人工操作步骤,将我们的生产力提高5%。”

所以,锐珂医疗选择了Aras公司。Aras公司是一家总部在美国马萨诸塞州安多佛的解决方案供应商,为全球企业提供一系列完整的PLM解决方案,该公司利用一个开源模型鼓励其用户开发新的组件并与其他企业分享组件。“Aras公司解决方案的性能是最好的,而且价格合理。”Sherburne说:“但是Aras的解决方案并不能满足我们的全部需求,因此我们还需要做一些额外的应用开发,完成之后,我们会基于固定成本的出发点将其部署到我们在全球的各个工厂中。”

由于没有前期资本许可证的费用,这促进了锐珂医疗一直向前发展,而没有采购和库存许可的后顾之忧。“软件定制模式允许我们进入到PLM项目,并进行合理的实施部署”,Sherburne 说:“它能够提供一个固定的成本平台,该平台可以随着时间的推移而逐渐增强,也可以逐渐扩大以允许更多的协作访问,同时企业不需要支付额外的费用。”

像预期的一样,锐珂医疗在开源应用中取得了成效,其企业中部署的软件服务于1500个用户(包括1000名内部用户和500名供货商),其价格还不到百万美元,这与预付费用在几百万美元(其中还不包含后期的维护费用)的应用组件形成了鲜明的对比。

然而,大企业并不是唯一从开源的成本构成中获益的组织。从经济学的角度来讲,对细分市场软件有需求的小型企业也可以从这种质优价廉的软件组件中得到他们所需要的东西。

Development Is Child's Play的所有者Teri Wiss最近几年一直在寻找一个合适的应用,以便让她轻松管理她的16名员工(包括全职和兼职),并利用这个应用来给他们计算工资。 Development Is Child's Play是美国加利福尼亚州库比蒂诺的一家专业儿童治疗中心。

在过去几年中,Wiss评价了各种各样的医疗软件组件,但这些组件中没有一个能够提供她想要的功能。Wiss表示,由于其所从事领域的专业性和独特性,几乎没有哪个SaaS产品或应用能够满足她的需求,而那些能够满足她的需求的应用又贵得离谱。

最终Wiss决定找一个专注于开源技术的开发人员来帮她定制一款符合她需求的应用软件,这种基于开源技术定制的应用,其服务价格只相当于Wiss之前关注的SaaS产品一年的使用费。而且应用交付时只需一次性付费即可,不存在其他额外的高额费用。Wiss说:“一开始我很担心因为对IT技术懂得不多,怕开发人员不能明白我到底想要一个什么样的东西,但是后来谈合作的时候,这名开发者却要求我忘掉他要做的工作,只管向他介绍我自己的工作方式就可以了。”(有关这一案例的细节可以阅读附图“开源助小企业摆脱困境”)

开源能够提高

软件开发的质量

支持开源技术的人一直认为通过开源技术能够开发出更好的软件。他们认为:在开源社区如果代码有误的话,那么开发者们会很快发现这一问题,并及时将其解决。而程序员自己通常很难发现这一问题,至少短时间内不会发现。

美国银行(Bank of America)就看好了开源技术的这一优点。“当提到高质量软件时,我们的选择范围很广”。美国银行负责全球银行业务的总经理Peter Richards说:“开源技术可以让我们无论是在可靠性还是金融业务方面都会获得一些好处。”

Richards表示,通常情况下,银行会把开源组件整合到定制开发应用中,但这些开源组件必须是经过认证的。他说:“我们会仔细检查每一步,以确保这些开源组件能够在银行的开发环境中得到有效利用。”

像美国银行这么大的公司也在使用开源技术,一些人不免会有些惊讶。对此,Richards引用Linux在商业环境中获得广泛应用的例子来回应他们。他说:“最初,企业也比较担心,害怕Linux只是一个业余爱好者开发的操作系统,并不专业,恐怕无法胜任企业环境。但是很多年之后,那些支持Linux的人将Linux打造成了一个能够出色地在企业环境中应用的操作系统。”

开源的应用开发代码之所以能够提高软件的质量,是因为有一部分开发者在贡献、检查和测试开源代码,也就是说这些开源代码都是非常可靠的。同时,该发展结构也关系到了成本问题,如果自己做的话,那么最后你可能会付出一大笔费用,因为你需要自己测试并检查代码。Richards说:“以合理的成本提供高质量的服务,这就是开源最大的优点之一。”

开源可促进业务敏捷性

不要把业务敏捷性和敏捷开发的概念混淆,业务敏捷性是指企业能够迅速应对市场需求的一种能力。通过加快软件开发的速度,开源不仅赋予了开发者敏捷性,同时也赋予了企业业务的敏捷性。

Ron Pitt是与Development Is Child's Play所有者Wiss合作的开发者,同时也是位于美国加利福尼亚州波威市的LevelHead Solutions公司的软件顾问。如果Ron Pitt在做这个项目时需要新代码的话,他只需花几分钟直接从开源社区下载就可以了,而不用自己重新开发。Pitt说:“当然,其中的一些代码会有漏洞,但是我宁愿花上15分钟去修复这些漏洞,也不愿意花15个小时重新写一个代码。”

企业也同样受益于开源技术所提供的功能,能够让他们快速对市场做出反应。值得一提的是,那些使用开源软件代码的企业根本不需要按照供应商给的限期进行其商业应用的升级。“如果你要是等供应商来帮你做升级的话,那么这会影响到公司创新和生产的速度”。位于加拿大渥太华的Eclipse的执行董事Mike Milinkovich说。Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境。

Kaiser Permanente公司副总裁Madhu Nutakki也认为开源能够在敏捷性方面为企业带来价值。Kaiser Permanente是美国加利福尼州西部城市奥克兰的一家医疗服务机构。

自2011年起,Kaiser Permanente公司就一直用GitHub源代码控制公司内部系统。Nutakki说:“GitHub是由开发者创建的,能够以最快的方式发布代码。它为我们更快速、频繁地布更新提供了便利。”同时,GitHub中也能够使用专有的开发工具,Kaiser Permanente公司主要利用它来做开源部署。

Nutakki解释说:“我们使用GitHub主要是因为我们的编程范式需要一个更加快速的发布模式。” Kaiser Permanente公司大举进军移动领域,这意味着该公司将面临一些对频繁更新有着更高期待的客户。“我们之前平均以每六个月一次的发布周期创建一个大的应用,而在过去两年里,我们逐渐缩短了发布周期(+本站微信networkworldweixin),改成每季度、每月,甚至更短时间。利用GitHub我们只需一个小时就能创建一个应用,如果用其他产品的话,则需要花上很长时间。”

Forrester分析师Hammond也认为,开源技术敏捷的优势是其能够迅速在企业IT部署中走红的原因。“如果你问一个开发者怎样做好一个特殊的项目,他们会告诉你,他们不会去购买任何硬件设备。因为他们可以将这个项目运行在Linux上,他们可以利用一个开源的开发架构,同时还可以帮助任何人开发他们想要的应用。”

开源同时也为软件开发过程中产生的新资源带来很大的“弹性”。Hammond说:“你无须担心‘我有没有许可’、‘我是否要去购买更多的软件’等问题。”这就是基于云的软件和开源软件高度关联的原因。他指出,这两者为企业提供了前所未有的可扩展性和灵活性。

开源能够缓解业务风险

利用开源技术的另一个好处(也许往往被人们忽略)就是减少企业对单个或多个供应商的依赖,从而降低业务风险。Milinkovich指出当企业开发的TOPCASED(一种嵌入式系统开发工具)被收购时,开发者可以立即停止他们在TOPCASED上所做的工作。而那些曾经使用过并青睐该工具的企业,比如Aibus(空中客车公司,欧洲一家民航飞机制造公司)又将它进行重组,并且寻找其他开发者继续支持这一工具。

供应商在不断更替,商业等级也在不断改变,而唯一不变的是开源社区。Milinkovich说:“开源技术的开放和透明缓解了许多风险,只要还有利可图,或者你继续访问源代码和资源库,那么无论企业的规模是大是小,它都不会放弃开发代码的。如果你能拥有一个根据自己编写的充满活力的代码社区,那么它将比任何一个死板的企业更具有弹性。”

德国SUSE公司的产品主管Gerald Pfeiffer认为,正是基于这些原因,开源技术才会蓬勃发展,SUSE主要提供企业级的Linux操作系统的发行版。

人们利用开源技术节省了成本,从中获得了好处,但这并不是开源最大的优点,开源还能够提供避免锁定和定制等功能,它是所有这些功能的集合。Pfeiffer说:“你和其他人共同承担开发的成本,所以在开源社区里你能够获得比供应商提供给你更大的多样性和独立性。”(王旋编译,更多内容详见: http://www.cnw.com.cn/P/5492

――Kaiser Permanente公司副总裁 Madhu Nutakki

开源技术为我们更快速、频繁地发布更新提供了便利。

开源技术可以让我们无论是在可靠性还是金融业务方面都会获得一些好处。

――美国银行全球银行业务总经理 Peter Richards

开源助小企业摆脱困境

Development Is Child's Play的所有者Teri Wiss最近几年来一直在寻找一个合适的应用,以便可以让她轻松管理她的16名员工(包括全职和兼职),并利用这个应用来给他们计算工资。

Wiss曾使用过谷歌日历,如果有家长取消预约的话,那么其他家长就能知道哪个时段有空缺,这样方便他们预约看病。但麻烦的是,她还需要把诊疗医生所用的纸质日历与谷歌日历进行同步。所以,为了提高效率和减少失误,Wiss非常需要一个电子应用。

于是她认真评估了一些摆在她面前的解决方案,但是这些解决方案并不是那么完美。比如有的只能解决计费问题,却不能帮她解决人员调度问题;有的只能追踪药物信息,却不能关联到临床医疗信息。还有一些可定制化的软件,但这些软件并不适合用户使用。更让Wiss惊讶的是,她发现即使是在硅谷这样的高科技企业云集的地方,她都不能找到一个她既能负担得起又能满足她需求的解决方案。

最后,有人给Wiss介绍了一位来自加州波威的软件咨询师Ron Pitt,Ron Pitt非常理解Wiss的沮丧。Pitt说:“预付上万美元的服务费,且每个月还要定期支付费用,这对于像Wiss所运营的小公司来说真的很难,尤其遇到收入不稳定情况时更是如此。”他认为利用Linux、Apache、MySQL、PHP和NetBeans IDE这样的开源平台为Wiss定制一个应用是最好的选择。而费用方面,Wiss只需一次性支付Pitt五千美元,再加上每月几百美元的托管、技术支持和备份的费用,这笔费用的总额只相当于使用SaaS应用一年需要支付的费用。

Pitt保留了使用代码的权利,这样如果他愿意的话还可以为另一家专业医疗机构定制应用。Pitt表示他只收五千美元的定制费,他说:“因为代码是免费的、模块化的,而且那些开源工具也很强大。这真的是一个优秀又非常稳定的软件工程。”

参考资料

1.SaaS:软件即服务(Software as a Service,简称)有时被作为“即需即用软件”(即“一经要求,即可使用”)提及,它是一种软件交付模式。在这种交付模式中云端集中式托管软件及其...详情>>

[责任编辑:孙可 sun_ke@cnw.com.cn]