當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普各地 > 陜西OA系統(tǒng) > 西安OA系統(tǒng) > 西安OA快博
SOA的十大技術(shù)理論體系
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
文章來源:泛普軟件實(shí)踐論認(rèn)為:從實(shí)踐提升到理論,再由理論指導(dǎo)實(shí)踐,由此向前發(fā)展。目前SOA的發(fā)展的情況正是如此,通過不少實(shí)踐,SOA的模型己經(jīng)被公認(rèn)為標(biāo)準(zhǔn)規(guī)范,目前是正需要進(jìn)一步總結(jié)上升到理論的時(shí)候了。
當(dāng)前國內(nèi)要發(fā)展SOA主要有三方面工作:方法、工具和環(huán)境。方法是工程技術(shù),由基礎(chǔ)理論來指導(dǎo)提出的。所以一門科學(xué)必需要包括:認(rèn)知科學(xué)(哲理)、工程技術(shù)和方法、最后是理論。
架構(gòu)的演化過程
SOA是從面向?qū)ο?、?gòu)件架構(gòu)等逐步發(fā)展完善,且相互依托、相互補(bǔ)充、又各自適應(yīng)不同范圍,因此在討論SOA理論時(shí),要了解它是如何演化過程來,繼承了哪些理論體系,其適應(yīng)度如何。
結(jié)構(gòu)編程方法
40年前國際上發(fā)生了"軟件危機(jī)",如IBM公司開發(fā)一個(gè)操作系統(tǒng),或美國的航空公司開發(fā)飛機(jī)訂票系統(tǒng),都花費(fèi)了上千人數(shù)年的工作量。它開發(fā)周期長、而開發(fā)出來的產(chǎn)品卻是錯(cuò)誤很多,難以維護(hù)和適應(yīng)修改。
正在此時(shí),一位荷蘭的物理家E.W.Dijkstra提出了一種"結(jié)構(gòu)程序設(shè)計(jì)方法",他認(rèn)為:人的智力是有限的,采用數(shù)學(xué)或物理學(xué)的思維方法,用枚舉、抽象、歸納、類比等思維方式簡化問題。
由于我也是數(shù)學(xué)系畢業(yè)的,我拜讀了他的所有論文,就編寫一本著作《編程方法學(xué)》。用此方法擴(kuò)展到軟件設(shè)計(jì)中時(shí),稱為"結(jié)構(gòu)化分析和結(jié)構(gòu)化設(shè)計(jì)(SASD)"。
所謂"結(jié)構(gòu)程序設(shè)計(jì)方法",就是基于面向?qū)ο笤O(shè)計(jì)方法的早期藍(lán)本,側(cè)重於解決程序正確性的編程的方法,以此為基礎(chǔ)建立了軟件工程這門學(xué)科,建立了編程的基礎(chǔ)理論體系,也是第一個(gè)技術(shù)與基礎(chǔ)理論體系。
"面向?qū)ο?的可重用理論
我們都知道由面向?qū)ο蟀l(fā)展到面向構(gòu)件,由面向構(gòu)件再發(fā)展到面向服務(wù),因此它們的認(rèn)知觀和基礎(chǔ)理論都是息息相關(guān)的。
解決大型軟件的開發(fā)效率和質(zhì)量除了要解決編程的正確性外,還必需解決開發(fā)周期長、復(fù)用性差、成本高、文檔多以及難以適應(yīng)系統(tǒng)演化等問題,這些問題十多年來仍舊困惑著這門學(xué)科,"軟件危機(jī)"仍未解決。
人們的知識(shí)是從一個(gè)定理、一個(gè)原理逐步積累起來的,社會(huì)是依靠知識(shí)的不斷積累發(fā)展的。然而編制軟件每次卻都是從零開始,這是造成"軟件危機(jī)"的根本原因。由此提出了編程工作是否也可以重用以前成功的經(jīng)驗(yàn)和程序呢?整整經(jīng)過十多年的探索,到七十年代才獲得成功。
我曾經(jīng)用此方法設(shè)計(jì)了一個(gè)大型操作系統(tǒng),這套方法和理論在產(chǎn)品開發(fā)和科研領(lǐng)域方面用得很多,因此我稱它為第二個(gè)技術(shù)與基礎(chǔ)理論體系。
面向構(gòu)件和架構(gòu)
鑒于面向?qū)ο蟮娜毕?,三位面向?qū)ο蟮牡旎寺?lián)合起來,創(chuàng)建了UML統(tǒng)一建模語言。UML為軟件開發(fā)和SOA的產(chǎn)生起到奠基和里程碑的作用。
UML主要理論成果是:統(tǒng)一面向?qū)ο蟮幕靖拍?,并引進(jìn)了許多新的概念,認(rèn)為軟件開發(fā)的過程實(shí)質(zhì)上是從抽象的模型逐步細(xì)化,過渡到具體的實(shí)現(xiàn),其中間的每個(gè)階段都是實(shí)現(xiàn)了某一抽象模型,UML為此提供了建立模型的工具。
用直覺的圖形來建立模型,從此軟件專家就有了自己的工具,正如音樂家有了五線譜工具那樣。為適應(yīng)軟件的多變性,提供了演化的概念。
實(shí)際上此建模理論是第三個(gè)技術(shù)與基礎(chǔ)理論體系,它為演化到構(gòu)件和架構(gòu)概念奠定基礎(chǔ)理論模型。
由于工程上的實(shí)施缺乏開發(fā)規(guī)范,在技術(shù)上要求開發(fā)人員的素質(zhì)較高,很少見到真正運(yùn)用UML的方法于實(shí)際的工程開發(fā)應(yīng)用軟件中,最大的問題是被開發(fā)出來的軟件難以演化,而軟件要能適應(yīng)變化是客觀存在的。
為此發(fā)展出單純重用的"構(gòu)件和架構(gòu)"技術(shù)及其理論體系。在1998年日本京都召開的"基于構(gòu)件的軟件開發(fā)(CBSD)"國際專題學(xué)術(shù)會(huì)議上,一致認(rèn)為軟件開發(fā)技術(shù)離不開構(gòu)件和體系結(jié)構(gòu)。軟件體系結(jié)構(gòu)現(xiàn)簡稱"架構(gòu)"。
在此之前的軟件架構(gòu)都采用層次結(jié)構(gòu)的架構(gòu),直到分布式系統(tǒng)提出了用戶端/服務(wù)器模式后,才產(chǎn)生對(duì)架構(gòu)的研究,出現(xiàn)了構(gòu)件和架構(gòu),也就是第四個(gè)技術(shù)與基礎(chǔ)理論體系。
卡內(nèi)基·梅隆大學(xué)為軟件的架構(gòu)和框架建立了扎實(shí)的基礎(chǔ)理論,軟件體系結(jié)構(gòu)是軟件系統(tǒng)的高級(jí)抽象,體現(xiàn)了軟件設(shè)計(jì)思想。反映了系統(tǒng)開發(fā)中最早的決策,明確了系統(tǒng)有哪幾部分組成,它們之間是如何交互的;進(jìn)一步影響到資源的配置、團(tuán)隊(duì)的組織以及產(chǎn)品的質(zhì)量。系統(tǒng)的成敗也在于體系結(jié)構(gòu)。
三層體系結(jié)構(gòu)分布式系統(tǒng)
三層體系結(jié)構(gòu)是由二層結(jié)構(gòu)的胖終端中的應(yīng)用構(gòu)件獨(dú)立出來組成了應(yīng)用層。為解決分布式系統(tǒng)中的各種潛在復(fù)雜性,提出了中間件技術(shù)及其理論,稱為第五個(gè)技術(shù)與基礎(chǔ)理論體系。
八年前我的最后一位博士生王文軍的學(xué)位論文是《分布式系統(tǒng)的聯(lián)邦結(jié)構(gòu)》,即面向服務(wù)的架構(gòu),但未被應(yīng)用和發(fā)展。而兩年前IBM公司提出SOA后卻很快被廣泛接受,其原因可從客觀需求上和技術(shù)成熟度上三方面來敘述:
其一,客觀上需要,隨著網(wǎng)絡(luò)普及化,用戶越來越迫切需要將現(xiàn)有多個(gè)應(yīng)用系統(tǒng)集成,以能實(shí)現(xiàn)更強(qiáng)的信息處理功能。如電子商務(wù)的供應(yīng)鏈、智能交通、電子政務(wù)、數(shù)字地球等已是本世紀(jì)發(fā)展的熱點(diǎn)。Gartner預(yù)計(jì),到2008年基于件產(chǎn)品將占領(lǐng)70%的市場份額。
其二,面向?qū)ο蠛蜆?gòu)件架構(gòu)的基礎(chǔ)理論和技術(shù)已趨向成熟,發(fā)展到統(tǒng)一建模語言,提供建模工具。中間件集群理論己趨向成熟,并提出了中間件Inter Bus技術(shù)。
其三,瀏覽器技術(shù)普及,己成為行業(yè)標(biāo)準(zhǔn),奠定了SOA的基礎(chǔ)理論和技術(shù)規(guī)范,由此已是水到渠成,使SOA拙壯成長。
SOA在實(shí)現(xiàn)中的組成部分
SOA的體系結(jié)構(gòu)仍舊是三層或N層結(jié)構(gòu),但對(duì)異構(gòu)平臺(tái)各層之間的聯(lián)系,不是用CORBA、J2EE或.NET的方式,而且用WBDL和SOAP來實(shí)現(xiàn),它們的概念簡單統(tǒng)一。
目前都是采用嵌入ESB企業(yè)服務(wù)總線的平臺(tái)來實(shí)現(xiàn),ESB是一個(gè)中間件群,確保系統(tǒng)實(shí)現(xiàn)了服務(wù)接口、各種中間件以及松耦合的三個(gè)方面功能,因此稱它為第六個(gè)技術(shù)與基礎(chǔ)理論體系。
另外,普遍采用BPEL(業(yè)務(wù)過程執(zhí)行語言)來描述用戶需求,由BPM(業(yè)務(wù)過程管理平臺(tái))來解釋執(zhí)行,構(gòu)成了第七個(gè)技術(shù)與基礎(chǔ)理論。
SOA的主要優(yōu)點(diǎn)
1. 利用現(xiàn)有的資產(chǎn)。方法是將這些現(xiàn)有的資產(chǎn)包裝成提供企業(yè)功能的服務(wù)。組織可以繼續(xù)從現(xiàn)有的資源中獲取價(jià)值,而不必重新從頭開始構(gòu)建。
2. 更易于集成和管理復(fù)雜性。將基礎(chǔ)設(shè)施和實(shí)現(xiàn)發(fā)生的改變所帶來的影響降到最低限度。因?yàn)閺?fù)雜性是隔離的,當(dāng)更多的企業(yè)一起協(xié)作提供價(jià)值鏈時(shí),這會(huì)變得更加重要。
3. 更快地整合現(xiàn)實(shí)。通過利用現(xiàn)有的構(gòu)件和服務(wù),可以減少完成軟件開發(fā)生命周期所需的時(shí)間。這使得可以快速地開發(fā)新的業(yè)務(wù)服務(wù),并允許組織迅速地對(duì)改變做出響應(yīng)和縮短開發(fā)時(shí)間。
4. 減少成本和增加重用。通過以松散耦合的方式公開業(yè)務(wù)服務(wù),企業(yè)可以根據(jù)業(yè)務(wù)要求更輕松地使用和組合服務(wù)。
5. SOA業(yè)務(wù)流程是由一系列業(yè)務(wù)服務(wù)組成的,可以更輕松地創(chuàng)建、修改和管理它來滿足不同時(shí)期的需要。
建立軟件開發(fā)方法和規(guī)范
構(gòu)件構(gòu)架理論體系的應(yīng)用是適用于構(gòu)件技術(shù)創(chuàng)立的,當(dāng)發(fā)展到面向服務(wù)的體系結(jié)構(gòu)時(shí),必需加以修改和擴(kuò)充,現(xiàn)在稱為模型驅(qū)動(dòng)MDD的需求工程建模理論,可以稱它為第八個(gè)技術(shù)與基礎(chǔ)理論體系。
另一個(gè)構(gòu)件的領(lǐng)域工程將要擴(kuò)充成SOA的參考結(jié)構(gòu),這是第九個(gè)技術(shù)與基礎(chǔ)理論體系。SOA的門戶將要反映SOA所有功能的表現(xiàn)層界面,為此如何將最新的WEB2.0與SOA給合,這是第十個(gè)技術(shù)與基礎(chǔ)理論體系。上述三方面是SOA在實(shí)際應(yīng)用時(shí)必需要建立的理論和技術(shù)。
SOA的發(fā)展?fàn)顩r
IBM公開宣布SOA計(jì)劃不到三年,去年年底,BEA公司、甲骨文公司、惠普等所有名牌公司都在中國發(fā)布了關(guān)于SOA的消息。
由于SOA模型統(tǒng)一,因此都是把本公司的中間件產(chǎn)品向SOA靠攏,提供開發(fā)和運(yùn)行SOA系統(tǒng)的相應(yīng)工具和環(huán)境,以爭取市場的份額。
北京市市科委將為SOA核心平臺(tái)研發(fā)提供資金,由軟件行業(yè)促進(jìn)中心統(tǒng)一管理,促進(jìn)北京市IP行業(yè)發(fā)展。其方案如圖所示。
隨著SOA理論的發(fā)展,各種與SOA有關(guān)的規(guī)范和標(biāo)準(zhǔn)將不斷出現(xiàn),如SOAP、WSDL、ESB、BEPL語言等,它們的出現(xiàn)象征著SOA將逐步走向成熟。我們更應(yīng)注意著各家公司所開發(fā)的工具和環(huán)境產(chǎn)品,有助于SOA的大力推廣應(yīng)用。
上述十大理論體系應(yīng)該認(rèn)真掌握、靈活應(yīng)用,更應(yīng)該不斷刨新。總之,SOA理念清晰、技術(shù)趨向成熟,實(shí)現(xiàn)不難、做好不容易,我們不要做重復(fù)工作,應(yīng)經(jīng)常交流,盡量少重復(fù),一定能達(dá)到國際一流水平。(csai)
- 1美國總統(tǒng)奧巴馬提名約翰·克里為新一任國務(wù)卿
- 2規(guī)避收到垃圾郵件的小技巧
- 3成都轎車闖黃燈罰6分:無近距離跟車 時(shí)速30km
- 4日媒稱日本著手制定對(duì)付中國奪島戰(zhàn)略
- 5計(jì)世獨(dú)家:甄別兩種服務(wù)器虛擬化軟件
- 6Outlook 2007中的垃圾郵件預(yù)防技巧
- 7十二個(gè)最不安全的常用應(yīng)用程序
- 8善待你的PC
- 92008年5大存儲(chǔ)預(yù)測
- 10網(wǎng)絡(luò)交換技術(shù)的發(fā)展現(xiàn)狀
- 11重慶打黑至少?zèng)]收數(shù)百億資產(chǎn) 去向成謎 -3
- 12加快中國開源軟件的發(fā)展
- 13怎樣把信息化投入變投資
- 14云計(jì)算的誘惑與危險(xiǎn) 幾多歡樂幾多愁
- 15全國火車新票價(jià)出爐:南京到北京高鐵便宜1塊5
- 16獨(dú)家:公用存儲(chǔ) 企業(yè)存儲(chǔ)領(lǐng)域的發(fā)展遠(yuǎn)景
- 17物理拓?fù)浜瓦壿嬐負(fù)洮F(xiàn)實(shí)和應(yīng)用的比較
- 182008年十二大熱門技術(shù)逐個(gè)盤點(diǎn)
- 19計(jì)世獨(dú)家:開源軟件服務(wù)需打造體驗(yàn)文化
- 20在線備份服務(wù)要訣
- 21安倍稱將改善中日關(guān)系 在釣魚島問題上絕不退讓
- 22谷歌在華業(yè)務(wù)再收縮
- 23Windows 系統(tǒng)安全技術(shù)概念講解
- 24OA系統(tǒng)辦公管理系統(tǒng)打破組織間的壁壘
- 25家樂福任意改換熟食的生產(chǎn)日期 店家稱店大不怕罰
- 26管理員需要深入了解內(nèi)部威脅
- 27協(xié)同辦公軟件建立XX全球信息一體化項(xiàng)目
- 28緬軍炮彈損毀云南盈江民居 戰(zhàn)機(jī)兩次進(jìn)中國領(lǐng)空
- 29Exchange Server 2007的三大商業(yè)價(jià)值分析
- 30部署網(wǎng)絡(luò)分析儀EtherApe
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓