无论是来自商用软件阵营的开发者还是来自开源社区的开发者都一致同意:开放源码不再是“非主流”和“异端邪说”的代名词了,而是一种已被广泛认同的开发模式。“你不难发现,很少有企业是完全采用商用软件或开放源码软件”,Interarbor Solution公司首席分析师Dana Gardner说,“在绝大部分情况下,商用软件内部都包含了某些开放源码部分,因此,混合开发模式正日益盛行起来。”
企业使用混合开发模式的好处
越来越多的企业开始把商用软件与获得良好支持的开放源码框架结合起来使用,其目的是实现一种低风险、高效益的“混合”开发模式。虽然采用开放源码能显著地降低软件许可证费用,但人们仍然认为在企业应用中,特别是关键业务应用中过多地依赖开放源码是不安全的,因为开放源码应用的支持和寿命是有限的,且服务得不到保障。“那些习惯使用商用产品的客户更愿意从商用软件提供商那里获得开放源码产品,因为这样可以降低使用开放源码的风险”,Burton Group副总裁兼服务总监Gary Hein说。是否采用开放源码通常由它所采用的核心架构决定,换句话说,就是看它是不是一种低风险且得到公认的技术。分析师认为,企业选择开放源码的方法与选择商用用软件的方法一样:首先定义需求,然后评估和验证技术。Hein说,你最终需要考虑的是:“我是否愿意花时间、精力和内部资源去开发这个项目?” 像任何IT项目一样,混合模式需要最佳实践和管理的支持才能使你的投资得到充分保护。除此之外,你还需要保证应用和服务的合法性,因为将开放源码和商用软件混合使用有可能引发使用许可纠纷,例如,有些商用软件提供商会限制其代码被修改或与开放源码集成。尽管如此,Forrester Research分析师Carl Zetie还是认为,“在未来两年里,混合开发模式将大行其道,围绕它会有很多收购事件发生,更多的厂商会加入这一有利可图的新领域,竞争将日趋激烈”。
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操作的成本和精力。
(责任编辑:城尘 68476636-8003)