网络通信 频道

混合开发:企业应用开发的正确之选

  今天,无论是来自商用软件阵营的开发者还是来自开源社区的开发者都一致同意:开放源码不再是"非主流"和"异端邪说"的代名词了,而是一种已被广泛认同的开发模式。事实上,今天的商用软件开发者不仅广泛参与开源项目,而且还通过对开放源码的全面支持,为开放源码开辟了更广阔的市场。

  对那些采用开放源码的企业来说,他们或许可以得到最好的解决方案,但问题是,如果无法得到有保证的服务(这些服务在采用商用软件时都可以得到),这些企业如何保护其构筑在开放源码基础之上的IT投资?专家的回答是:"走折中的道路!"

  "你不难发现,很少有企业是完全采用商用软件或开放源码软件",Interarbor Solution公司首席分析师Dana Gardner说,"在绝大部分情况下,商用软件内部都包含了某些开放源码部分,因此,混合开发模式正日益盛行起来。"

  混合模式的好处

  越来越多的企业开始把商用软件与获得良好支持的开放源码框架结合起来使用,其目的是实现一种低风险、高效益的"混合"开发模式。

  虽然采用开放源码能显著地降低软件许可证费用,但人们仍然认为在企业应用中,特别是关键业务应用中过多地依赖开放源码是不安全的,因为开放源码应用的支持和寿命是有限的,且服务得不到保障。

  "那些习惯使用商用产品的客户更愿意从商用软件提供商那里获得开放源码产品,因为这样可以降低使用开放源码的风险",Burton Group副总裁兼服务总监Gary Hein说。

  是否采用开放源码通常由它所采用的核心架构决定,换句话说,就是看它是不是一种低风险且得到公认的技术。分析师认为,企业选择开放源码的方法与选择商用用软件的方法一样:首先定义需求,然后评估和验证技术。Hein说,你最终需要考虑的是:"我是否愿意花时间、精力和内部资源去开发这个项目?"

  像任何IT项目一样,混合模式需要非常好的实践和管理的支持才能使你的投资得到充分保护。除此之外,你还需要保证应用和服务的合法性,因为将开放源码和商用软件混合使用有可能引发使用许可纠纷,例如,有些商用软件提供商会限制其代码被修改或与开放源码集成。尽管如此,Forrester Research分析师Carl Zetie还是认为,"在未来两年里,混合开发模式将大行其道,围绕它会有很多收购事件发生,更多的厂商会加入这一有利可图的新领域,竞争将日趋激烈"。

  拥抱混合模式

  专家们认为,企业需要制定一种战略来实现两个目标:其一是同时遵守商用软件和开放源码软件的许可协议;其二是确保企业应用能够得到长期的支持。同时实现这两个目标的途径之一是仅采用得到第三方认证或支持的开放源码框架。

  "我们期望有更多的厂商支持混合模式,这是降低风险的非常好的途径",Interarbor Solution公司首席分析师Gardner说,"就像BEA为开放源码应用提供支持那样"。事实上,支持开放源码不仅仅是一种商业战略,而是众多投身开源软件厂商(诸如BEA)的既定目标。BEA早就加入了开源社区并对众多开源项目提供了大力的支持,因此,它自然要积极主动地推动开放源码与商用软件的混合应用模式。

  "开源社区正在进行着前所未有的创新,他们所推出的开放源码框架能切实满足我们客户的需求,因此,我们决心对它们提供开发支持、运行时管理和产品支持",BEA公司执行副总裁Mark Carges说。

  特别值得一提的是,BEA已经为那些采用Apache Tomcat的客户提供了混合的BEA WebLogic管理和部署能力。今天,使用Apache Tomcat的客户不必再使用多种管理工具或者拼凑多个厂商的产品来解决应用的开发和部署问题,他们只需选用支持Apache Tomcat 的BEA WebLogic Console,一切问题就迎刃而解了。与此同时,BEA还将Apache Tomcat与BEA WebLogic Server集成在一起,从而使客户能够更容易地采用混合开发模式。在开发工具方面,BEA早在去年就收购了M7公司,为Hibernate、Spring和Struts等主流的开放源码框架提供了全面的开发支持。

  "BEA的做法很聪明,因为它努力去满足客户对混合开发模式的需求,而不是阻止客户将正式的业界标准与传统的商用软件许可结合起来",Forrester的Zetie在他撰写的关于BEA收购M7公司的报告中如是说,"这是一种齐头并进的战略,首先是开放自己的部分产品,然后收购其他公司的创新产品并与第三方厂商建立起支持关系,这充分表明BEA对开源世界的全面支持。"

  支持开放源码的商用软件提供商使企业的应用开发变得更有效,并提供企业所需的投资保护,帮助他们顺利建立起混合开发环境。"他们所做的一切恰恰是企业所需要的,因此,他们有必要推动这一趋势的发展,使企业的应用开发能够更有效",Gardner说。

  BEA的混合开发战略

  ――BEA公司BEA Workshop事业部副总裁Bill Roth就混合开发模式答记者问

  问:为什么需要混合应用开发?

  答:管理基于Java的企业应用是非常困难和复杂的,因为有过多的标准、编程模型和部署方式。开源社区已经开发了多种解决方案来降低这种复杂性,但这些解决方案本身也面临挑战:新的发布必须得到有效的管理、集成多种开源组件必须进行严格的测试、多种部署平台增加了复杂性、技术支持可能不符合企业的标准、开发工具可能不支持新兴的技术以及开发和管理人员缺乏。此外,单个开源解决方案常常缺乏产品之间的连接部件,无法提供项目扩展所需的集成和迁移途径。BEA的混合(Blended)开发战略全面支持开放源码项目,从而使我们的客户在选择其应用开发方式时有更多的灵活性。混合应用开发给企业带来的最大好处是它们可以更快地开发出高质量的应用软件并使其运行得更好、更高效。

  问:BEA对混合开发模式提供哪些支持?

  答:BEA对混合应用开发和部署提供全面的支持,包括基本的Java框架支持、开发工具和各种部署平台。这些支持使企业能最大限度地利用开放源码技术的优势。具体来说,BEA对Java 应用框架支持包括Apache Struts、Apache Beehive、Apache XML Beans、面向方面的编程 Eclipse AspectJ 5、Spring 框架以及EJB 3.0 Persistence API/Open JPA & JDO 2.0。在开发和管理工具方面,BEA提供了一系列产品,包括BEA Workshop Studio 3.0、BEA Workshop for WebLogic Platform 9.2、BEA WebLogic Server Administration Console、BEA WebLogic Domain Configuration Wizard、WebLogic Scripting Language Tool,并为Hibernate提供工具支持。在开发平台方面,BEA的支持包括BEA WebLogic 9.1和BEA JRockit的支持和认证、对Apache Tomcat 5.5的技术支持和认证、对其他开放平台的选择工具和持久性支持,包括Websphere, JBoss, Tomcat, Jetty, Resin, JRun, SunOne, Borland Enterprise Server等。

  问:BEA对混合开发模式的支持将给客户带来哪些好处?

  答:BEA对混合开发模式的支持有助于减少采用开放源码技术开发J2EE应用的复杂性,主要体现在以下几个方面:

  灵活性与选择性

  典型的开放源码框架都是针对特定问题而开发的,因此更宽范围的框架支持意味适当的工具可以用来解决适当的问题。同时,许多企业也需要在选择服务器平台时有更多的灵活性。

  允许开源框架以非常好的方式运行

  尽管采用开源框架可以节省时间,但他们仅仅是一个基础平台,而BEA WebLogic Server拥有企业所需的功能特性、可靠性、可扩展性和性能。领先的开源应用框架――Beehive、Struts、Spring、EJB、JDO、JSF已经被证明可以在BEA WebLogic Server上很好地运行:客户可以从BEA获得对其所选框架的技术支持。

  简化底层J2EE编程和测试

  应用框架极大地简化了底层J2EE编程任务,使更多的开发人员可以利用它的优势。框架使质量保证更易于实现,同时使简化的部件模型和轻量级的容器更易于测试。

  提供鲁棒的开发者和管理员工具

  BEA Workshop家族中增值的Eclipse工具支持开源应用框架、Web应用开发、数据库工具、Java Web服务和BEA WebLogic Platform应用(如门户)。此外,BEA WebLogic全面的管理能力有助于减少在所需服务层运行IT操作的成本和精力。

0
相关文章