無論是來自商用軟件陣營的開發者還是來自開源社區的開發者都一致同意:開放源碼不再是“非主流”和“異端邪說”的代名詞了,而是一種已被廣泛認同的開發模式?!澳悴浑y發現,很少有企業是完全采用商用軟件或開放源碼軟件”,Interarbor Solution公司首席分析師Dana Gardner說,“在絕大部分情況下,商用軟件內部都包含了某些開放源碼部分,因此,混合開發模式正日益盛行起來?!?br>
企業使用混合開發模式的好處
越來越多的企業開始把商用軟件與獲得良好支持的開放源碼框架結合起來使用,其目的是實現一種低風險、高效益的“混合”開發模式。雖然采用開放源碼能顯著地降低軟件許可證費用,但人們仍然認為在企業應用中,特別是關鍵業務應用中過多地依賴開放源碼是不安全的,因為開放源碼應用的支持和壽命是有限的,且服務得不到保障?!澳切┝晳T使用商用產品的客戶更愿意從商用軟件提供商那里獲得開放源碼產品,因為這樣可以降低使用開放源碼的風險”,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編程任務,使更多的開發人員可以利用它的優勢??蚣苁?STRONG>質量保證更易于實現,同時使簡化的部件模型和輕量級的容器更易于測試。
◆提供魯棒的開發者和管理員工具
BEA Workshop家族中增值的Eclipse工具支持開源應用框架、Web應用開發、數據庫工具、Java Web服務和BEA WebLogic Platform應用(如門戶)。此外,BEA WebLogic全面的管理能力有助于減少在所需服務層運行IT操作的成本和精力。
(責任編輯:城塵 68476636-8003)