監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 簽約案例 | 購買價格 | 在線試用 | 手機APP | 產(chǎn)品資料
X 關閉

SOA的十大技術理論體系

申請免費試用、咨詢電話:400-8352-114

文章來源:泛普軟件

實踐論認為:從實踐提升到理論,再由理論指導實踐,由此向前發(fā)展。目前SOA的發(fā)展的情況正是如此,通過不少實踐,SOA的模型己經(jīng)被公認為標準規(guī)范,目前是正需要進一步總結上升到理論的時候了。

當前國內(nèi)要發(fā)展SOA主要有三方面工作:方法、工具和環(huán)境。方法是工程技術,由基礎理論來指導提出的。所以一門科學必需要包括:認知科學(哲理)、工程技術和方法、最后是理論。

架構的演化過程

SOA是從面向?qū)ο?、構件架構等逐步發(fā)展完善,且相互依托、相互補充、又各自適應不同范圍,因此在討論SOA理論時,要了解它是如何演化過程來,繼承了哪些理論體系,其適應度如何。

結構編程方法

40年前國際上發(fā)生了"軟件危機",如IBM公司開發(fā)一個操作系統(tǒng),或美國的航空公司開發(fā)飛機訂票系統(tǒng),都花費了上千人數(shù)年的工作量。它開發(fā)周期長、而開發(fā)出來的產(chǎn)品卻是錯誤很多,難以維護和適應修改。

正在此時,一位荷蘭的物理家E.W.Dijkstra提出了一種"結構程序設計方法",他認為:人的智力是有限的,采用數(shù)學或物理學的思維方法,用枚舉、抽象、歸納、類比等思維方式簡化問題。

由于我也是數(shù)學系畢業(yè)的,我拜讀了他的所有論文,就編寫一本著作《編程方法學》。用此方法擴展到軟件設計中時,稱為"結構化分析和結構化設計(SASD)"。

所謂"結構程序設計方法",就是基于面向?qū)ο笤O計方法的早期藍本,側(cè)重於解決程序正確性的編程的方法,以此為基礎建立了軟件工程這門學科,建立了編程的基礎理論體系,也是第一個技術與基礎理論體系。

"面向?qū)ο?的可重用理論

我們都知道由面向?qū)ο蟀l(fā)展到面向構件,由面向構件再發(fā)展到面向服務,因此它們的認知觀和基礎理論都是息息相關的。

解決大型軟件的開發(fā)效率和質(zhì)量除了要解決編程的正確性外,還必需解決開發(fā)周期長、復用性差、成本高、文檔多以及難以適應系統(tǒng)演化等問題,這些問題十多年來仍舊困惑著這門學科,"軟件危機"仍未解決。

人們的知識是從一個定理、一個原理逐步積累起來的,社會是依靠知識的不斷積累發(fā)展的。然而編制軟件每次卻都是從零開始,這是造成"軟件危機"的根本原因。由此提出了編程工作是否也可以重用以前成功的經(jīng)驗和程序呢?整整經(jīng)過十多年的探索,到七十年代才獲得成功。

我曾經(jīng)用此方法設計了一個大型操作系統(tǒng),這套方法和理論在產(chǎn)品開發(fā)和科研領域方面用得很多,因此我稱它為第二個技術與基礎理論體系。

面向構件和架構

鑒于面向?qū)ο蟮娜毕?,三位面向?qū)ο蟮牡旎寺?lián)合起來,創(chuàng)建了UML統(tǒng)一建模語言。UML為軟件開發(fā)和SOA的產(chǎn)生起到奠基和里程碑的作用。

UML主要理論成果是:統(tǒng)一面向?qū)ο蟮幕靖拍?,并引進了許多新的概念,認為軟件開發(fā)的過程實質(zhì)上是從抽象的模型逐步細化,過渡到具體的實現(xiàn),其中間的每個階段都是實現(xiàn)了某一抽象模型,UML為此提供了建立模型的工具。

用直覺的圖形來建立模型,從此軟件專家就有了自己的工具,正如音樂家有了五線譜工具那樣。為適應軟件的多變性,提供了演化的概念。

實際上此建模理論是第三個技術與基礎理論體系,它為演化到構件和架構概念奠定基礎理論模型。

由于工程上的實施缺乏開發(fā)規(guī)范,在技術上要求開發(fā)人員的素質(zhì)較高,很少見到真正運用UML的方法于實際的工程開發(fā)應用軟件中,最大的問題是被開發(fā)出來的軟件難以演化,而軟件要能適應變化是客觀存在的。

為此發(fā)展出單純重用的"構件和架構"技術及其理論體系。在1998年日本京都召開的"基于構件的軟件開發(fā)(CBSD)"國際專題學術會議上,一致認為軟件開發(fā)技術離不開構件和體系結構。軟件體系結構現(xiàn)簡稱"架構"。

在此之前的軟件架構都采用層次結構的架構,直到分布式系統(tǒng)提出了用戶端/服務器模式后,才產(chǎn)生對架構的研究,出現(xiàn)了構件和架構,也就是第四個技術與基礎理論體系。

卡內(nèi)基·梅隆大學為軟件的架構和框架建立了扎實的基礎理論,軟件體系結構是軟件系統(tǒng)的高級抽象,體現(xiàn)了軟件設計思想。反映了系統(tǒng)開發(fā)中最早的決策,明確了系統(tǒng)有哪幾部分組成,它們之間是如何交互的;進一步影響到資源的配置、團隊的組織以及產(chǎn)品的質(zhì)量。系統(tǒng)的成敗也在于體系結構。

三層體系結構分布式系統(tǒng)

三層體系結構是由二層結構的胖終端中的應用構件獨立出來組成了應用層。為解決分布式系統(tǒng)中的各種潛在復雜性,提出了中間件技術及其理論,稱為第五個技術與基礎理論體系。

八年前我的最后一位博士生王文軍的學位論文是《分布式系統(tǒng)的聯(lián)邦結構》,即面向服務的架構,但未被應用和發(fā)展。而兩年前IBM公司提出SOA后卻很快被廣泛接受,其原因可從客觀需求上和技術成熟度上三方面來敘述:

其一,客觀上需要,隨著網(wǎng)絡普及化,用戶越來越迫切需要將現(xiàn)有多個應用系統(tǒng)集成,以能實現(xiàn)更強的信息處理功能。如電子商務的供應鏈、智能交通、電子政務、數(shù)字地球等已是本世紀發(fā)展的熱點。Gartner預計,到2008年基于件產(chǎn)品將占領70%的市場份額。

其二,面向?qū)ο蠛蜆嫾軜嫷幕A理論和技術已趨向成熟,發(fā)展到統(tǒng)一建模語言,提供建模工具。中間件集群理論己趨向成熟,并提出了中間件Inter Bus技術。

其三,瀏覽器技術普及,己成為行業(yè)標準,奠定了SOA的基礎理論和技術規(guī)范,由此已是水到渠成,使SOA拙壯成長。

SOA在實現(xiàn)中的組成部分

SOA的體系結構仍舊是三層或N層結構,但對異構平臺各層之間的聯(lián)系,不是用CORBA、J2EE或.NET的方式,而且用WBDL和SOAP來實現(xiàn),它們的概念簡單統(tǒng)一。

目前都是采用嵌入ESB企業(yè)服務總線的平臺來實現(xiàn),ESB是一個中間件群,確保系統(tǒng)實現(xiàn)了服務接口、各種中間件以及松耦合的三個方面功能,因此稱它為第六個技術與基礎理論體系。

另外,普遍采用BPEL(業(yè)務過程執(zhí)行語言)來描述用戶需求,由BPM(業(yè)務過程管理平臺)來解釋執(zhí)行,構成了第七個技術與基礎理論。

SOA的主要優(yōu)點

1. 利用現(xiàn)有的資產(chǎn)。方法是將這些現(xiàn)有的資產(chǎn)包裝成提供企業(yè)功能的服務。組織可以繼續(xù)從現(xiàn)有的資源中獲取價值,而不必重新從頭開始構建。

2. 更易于集成和管理復雜性。將基礎設施和實現(xiàn)發(fā)生的改變所帶來的影響降到最低限度。因為復雜性是隔離的,當更多的企業(yè)一起協(xié)作提供價值鏈時,這會變得更加重要。

3. 更快地整合現(xiàn)實。通過利用現(xiàn)有的構件和服務,可以減少完成軟件開發(fā)生命周期所需的時間。這使得可以快速地開發(fā)新的業(yè)務服務,并允許組織迅速地對改變做出響應和縮短開發(fā)時間。

4. 減少成本和增加重用。通過以松散耦合的方式公開業(yè)務服務,企業(yè)可以根據(jù)業(yè)務要求更輕松地使用和組合服務。

5. SOA業(yè)務流程是由一系列業(yè)務服務組成的,可以更輕松地創(chuàng)建、修改和管理它來滿足不同時期的需要。

建立軟件開發(fā)方法和規(guī)范

構件構架理論體系的應用是適用于構件技術創(chuàng)立的,當發(fā)展到面向服務的體系結構時,必需加以修改和擴充,現(xiàn)在稱為模型驅(qū)動MDD的需求工程建模理論,可以稱它為第八個技術與基礎理論體系。

另一個構件的領域工程將要擴充成SOA的參考結構,這是第九個技術與基礎理論體系。SOA的門戶將要反映SOA所有功能的表現(xiàn)層界面,為此如何將最新的WEB2.0與SOA給合,這是第十個技術與基礎理論體系。上述三方面是SOA在實際應用時必需要建立的理論和技術。

SOA的發(fā)展狀況

IBM公開宣布SOA計劃不到三年,去年年底,BEA公司、甲骨文公司、惠普等所有名牌公司都在中國發(fā)布了關于SOA的消息。

由于SOA模型統(tǒng)一,因此都是把本公司的中間件產(chǎn)品向SOA靠攏,提供開發(fā)和運行SOA系統(tǒng)的相應工具和環(huán)境,以爭取市場的份額。

北京市市科委將為SOA核心平臺研發(fā)提供資金,由軟件行業(yè)促進中心統(tǒng)一管理,促進北京市IP行業(yè)發(fā)展。其方案如圖所示。

隨著SOA理論的發(fā)展,各種與SOA有關的規(guī)范和標準將不斷出現(xiàn),如SOAP、WSDL、ESB、BEPL語言等,它們的出現(xiàn)象征著SOA將逐步走向成熟。我們更應注意著各家公司所開發(fā)的工具和環(huán)境產(chǎn)品,有助于SOA的大力推廣應用。

上述十大理論體系應該認真掌握、靈活應用,更應該不斷刨新??傊琒OA理念清晰、技術趨向成熟,實現(xiàn)不難、做好不容易,我們不要做重復工作,應經(jīng)常交流,盡量少重復,一定能達到國際一流水平。(csai)

 

發(fā)布:2007-04-22 09:24    編輯:泛普軟件 · xiaona    [打印此頁]    [關閉]
相關文章:
西安OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普西安OA快博其他應用

西安OA軟件 西安OA新聞動態(tài) 西安OA信息化 西安OA快博 西安OA行業(yè)資訊 西安軟件開發(fā)公司 西安門禁系統(tǒng) 西安物業(yè)管理軟件 西安倉庫管理軟件 西安餐飲管理軟件 西安網(wǎng)站建設公司