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

SCA對于SOA的意義

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

來源:泛普軟件

SOA在新一代的架構理念因為其先進性站到了技術的前沿,是各大技術廠商緊跟的開發(fā)方式。當然同時也因為其先進性,使得其成為本世紀最為模糊的概念。個人都有自己的理解,使得 SOA在很大程度上給人的感覺是可以聽得見,卻摸不著的“神秘技術”。筆者分析其主要原因是因為Web service給人的影響太大了,大多數人對SOA的理解都差不多,覺得SOA=Web service,其實這就是最典型的理解。大家之所以覺得Web service牛,技術很強,除了因為它是一個標準和規(guī)范外,還因為大家在開發(fā)中使用到的都僅僅是Web service里的消息通訊框架,靠該消息通訊框架讓普通的開發(fā)者看到了跨應用、跨解決方案,做集成的好處。自然開發(fā)者就被“蒙住了眼睛”,覺得靠使用了 Web service技術,就利用到了SOA的各種好處。這無異于金庸小說里的,只練招數,而不修煉內功修為,前期進展不錯,但隨著時間的推移就會發(fā)現發(fā)展?jié)摿?不足,就那兩下空招數。

下面我們來看看面向服務的設計,SOA之所以在實踐中難以實施的關鍵癥結在于面向服務分析設計并沒有形成統(tǒng)一的指導路線。而面向對象技術之所以有現在的普及,得益于各種開發(fā)過程的方法論,比如RUP,XP等。但現階段對于面向服務的分析設計卻沒有成型的指導出現。當然筆者也不排除一些有經驗的技術作家有寫 出來,但畢竟沒有形成知識系統(tǒng)和知識體系。所以,開發(fā)者有些彷徨,想利用SOA的好處,但又不知道如何去做。其實隨著SOA技術慢慢在案例中使用,部分敢 于探索的技術作家的行文中,偶爾給出一絲SOA技術的分析設計經驗之談。

任何一種技術的出現,其實都是對開發(fā)內容進行相關分類和歸類,以便減少代碼冗余,增加代碼復用的機會。所以我們在做面向服務的分析與設計工作時,也應該做相應的分層歸類工作。本人在《面向服務設計原則遐想》中提到:

業(yè)務流程層 聯(lián)合運用下層服務接口層

服務接口層 作用是起到封裝抽象下層應用邏輯,對上層提供接口

應用層 如:應用A、應用B等

這個還處于高層抽象的分層,我們的關注點應該在服務接口層,需要繼續(xù)細分該層。暫且將該層分為

編排服務層

業(yè)務服務層

應用服務層

通過這個比較粗略的分層,可以看出各個服務層有了上下關系和歸類條件。具體就是:應用服務層放一些公共的、與解決方案無關的工具服務,比如負載均衡服務、 或者是專門用于向員工發(fā)送短信息的服務(它會被多處服務所調用)等。業(yè)務服務層則放一些有業(yè)務含義的原子性業(yè)務服務,所謂原子性業(yè)務服務就是不可再分解的 業(yè)務服務,其中的分析建模技術包括“按業(yè)務實體進行分析和建?!焙汀鞍刺囟ㄈ蝿者M行分析和建模”的兩種方式。一般來說“按業(yè)務實體進行分析和建?!北取鞍?特定任務進行分析和建?!狈绞绞沟梅盏膹陀脵C會更多些。畢竟“按特定任務進行分析和建?!钡姆绞降玫降姆兆匀皇菨M足特定任務的大的子流程,含有了業(yè)務 流程,其實業(yè)務服務層如果嚴格來說只能包含業(yè)務實體,而不應該包含業(yè)務流程,因為業(yè)務流程將在編排服務層里進行歸類。

這里自然有個難點,就是我們做純粹的面向服務分析時,是要求自頂向下分解,而要求實現SOA承諾的服務可復用性是核心,必須保證分解出來的大部分服務要有 機會復用,而我們知道原子性服務的復用性機會自然更大,然后才可以隨著需求的變更來組合現有的原子性服務來實現企業(yè)業(yè)務敏捷性。這種自頂向下分析,自下向 上復用的現狀幾乎把我們搞糊涂了。所以將服務接口層細分為更為具體的三層意義重大,否則業(yè)務流程與業(yè)務邏輯單元都揉在一塊,自然難以提高復用率。

現在已經粗略地談到了面向服務的分析設計,那么與SCA有什么關系。SCA其實為不同粒度的復用提供了條件。

SCA從不同的粒度復用方面提供的益處得歸因于它的遞歸復用模式,這也與面向服務的分析設計方式有一定的映射,便于自頂向下或自下而上的分析設計工作。 SCA除了這些外,最重要的則是統(tǒng)一了各種不同語言實現的規(guī)范,同時利用現階段比較優(yōu)秀的IOC,DI原則來管理服務之間的引用關系,最大程度地支持面向 服務開發(fā)模式中對服務的測試,當然也是便于服務功能復用了。而服務功能復用的先決條件是服務發(fā)現,如果服務都發(fā)現不了如何復用,則塊工作也是SCA的重中之重。自然,將通訊框架不僅僅局限與Web service的通訊框架,支持眾多的binding類型,將通訊的代碼量減至最小,也為服務的復用提供了前提條件,讓開發(fā)者與分析設計者更能集中精力于 業(yè)務建模,當然也一定程度增加了代碼的復用性。(IT專家網)

發(fā)布:2007-04-23 11:33    編輯:泛普軟件 · 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è)管理軟件 南京倉庫管理軟件 南京餐飲管理軟件 南京網站建設公司