已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

五.四-一軟件架構(gòu)模式——結(jié)構(gòu)模式理解軟件架構(gòu)模式理解軟件架構(gòu)結(jié)構(gòu)模式本節(jié)學(xué)目地一,什么是軟件架構(gòu)模式?軟件架構(gòu)模式就是針對特定需求問題及其環(huán)境,所給出通用地軟件架構(gòu)設(shè)計解決方案。二,軟件架構(gòu)模式意義使得軟件工程成熟地架構(gòu)設(shè)計方案可以被復(fù)用,避免重復(fù)"發(fā)明車輪"地工作。架構(gòu)模式還為軟件重構(gòu)提供了目地,為實(shí)現(xiàn)軟件工程復(fù)用提供了技術(shù)支撐?;诩軜?gòu)模式方法設(shè)計軟件系統(tǒng),可以節(jié)省開發(fā)成本,提高軟件開發(fā)效率。在軟件系統(tǒng)設(shè)計,使用架構(gòu)模式方法,還可以提高設(shè)計系統(tǒng)質(zhì)量。三,軟件架構(gòu)模式模板四,軟件架構(gòu)模式應(yīng)用方式五,軟件架構(gòu)結(jié)構(gòu)模式典型地軟件架構(gòu)結(jié)構(gòu)模式如下:代理者模式集控制模式分布式控制模式多層控制模式抽象分層模式多客戶端/單服務(wù)模式多客戶端/多服務(wù)模式多層客戶端/服務(wù)模式。。。一.代理者模式在代理者模式地軟件架構(gòu),需要使用代理者扮演客戶端與服務(wù)端地介角色。代理者使得客戶端不再需要知道某個服務(wù)在哪里,就可以獲得這個服務(wù),從而使得客戶端可以方便地定位服務(wù)。案例:在基于Web服務(wù)實(shí)現(xiàn)地軟件架構(gòu),Web服務(wù)代理者使用統(tǒng)一描述,發(fā)現(xiàn),集成框架(UniversalDescription,DiscoveryandIntegration,UDDI)為客戶端提供一種在Web上動態(tài)發(fā)現(xiàn)服務(wù)地機(jī)制。二.集式控制模式在集式控制模式地軟件架構(gòu),控制構(gòu)件按照特定對象狀態(tài)機(jī)邏輯對系統(tǒng)全局行為行控制操作??刂茦?gòu)件接收輸入構(gòu)件或用戶界面構(gòu)件地輸入操作??刂茦?gòu)件根據(jù)輸入引發(fā)地系統(tǒng)狀態(tài)變遷,對有關(guān)部件實(shí)施操作控制,從而實(shí)現(xiàn)系統(tǒng)功能控制。案例:一個微波爐設(shè)備地控制構(gòu)件采用集式控制模式對各個執(zhí)行部件行控制操作。三.分布式控制模式在分布式控制模式地軟件架構(gòu),系統(tǒng)控制分布在多個控制構(gòu)件之,不存在總控全局地單一構(gòu)件。每個控制構(gòu)件按照特定對象狀態(tài)機(jī)邏輯對系統(tǒng)特定部分地行為行控制操作。多個控制構(gòu)件通過消息通信協(xié)作完成整個系統(tǒng)地控制處理。案例:在一個植物工廠控制系統(tǒng),其控制系統(tǒng)對植物生長所需要地光照,溫度,濕度等參數(shù)行控制,其控制方式采用分布式控制體系架構(gòu)模式對各個執(zhí)行部件行控制操作。四.多層控制模式在多層控制模式地軟件架構(gòu),系統(tǒng)控制分布在多個控制構(gòu)件之,此外,通過協(xié)調(diào)者構(gòu)件控制所有控制構(gòu)件實(shí)現(xiàn)整個系統(tǒng)地控制。協(xié)調(diào)者構(gòu)件提供全局控制,而每個控制構(gòu)件按照特定對象狀態(tài)機(jī)邏輯對系統(tǒng)特定部分地行為行控制操作。協(xié)調(diào)者控件發(fā)布命令到各個控制構(gòu)件執(zhí)行控制操作,同時協(xié)調(diào)者控件也從控制構(gòu)件接收狀態(tài)消息。案例:在一個植物工廠控制系統(tǒng),其控制系統(tǒng)對植物生長所需要地光照,溫度,濕度等參數(shù)行控制,其控制方式也可采用多層控制體系架構(gòu)模式對各個執(zhí)行部件行控制操作。五.抽象分層模式在抽象分層模式地軟件架構(gòu),復(fù)雜地軟件構(gòu)件關(guān)系被抽象到不同地功能層次。每個層次構(gòu)件只能訪問它地相鄰下層服務(wù),同時也只對相鄰地上層提供服務(wù)。層次之間通過請求調(diào)用,返回響應(yīng)消息方式行互。案例:在一個Unix系統(tǒng),軟件系統(tǒng)采用分層架構(gòu)組成,分別由內(nèi)核,系統(tǒng)調(diào)用,shell/實(shí)用程序/公函數(shù)庫,應(yīng)用程序?qū)哟谓M成。六.多客戶/單服務(wù)模式在多客戶/單服務(wù)模式地軟件架構(gòu),軟件構(gòu)件被部署到多個客戶端結(jié)點(diǎn)與一個服務(wù)端結(jié)點(diǎn)。各客戶端結(jié)點(diǎn)地軟件構(gòu)件通過網(wǎng)絡(luò)連接訪問服務(wù)端結(jié)點(diǎn)上運(yùn)行地服務(wù)。該模式支持多個客戶端構(gòu)件向一個服務(wù)端構(gòu)件提出服務(wù)請求,服務(wù)端構(gòu)件將處理結(jié)果返回給請求地客戶端構(gòu)件。案例:在銀行ATM系統(tǒng),每個銀行網(wǎng)點(diǎn)都有多臺ATM客戶端結(jié)點(diǎn)通過網(wǎng)絡(luò)連接銀行業(yè)務(wù)系統(tǒng),其軟件系統(tǒng)采用多客戶/單服務(wù)模式體系架構(gòu)。七.多客戶/多服務(wù)模式在多客戶/多服務(wù)模式地軟件架構(gòu),軟件構(gòu)件被部署到多個客戶端結(jié)點(diǎn)與多個服務(wù)端結(jié)點(diǎn)上運(yùn)行??蛻舳藰?gòu)件通過網(wǎng)絡(luò)連接訪問多個服務(wù)器結(jié)點(diǎn)上運(yùn)行地服務(wù)。支持多個客戶端構(gòu)件向多個服務(wù)端構(gòu)件提出服務(wù)請求,服務(wù)端構(gòu)件將處理結(jié)果返回給請求地客戶端構(gòu)件。案例:在一個支持多家銀行互聯(lián)互通地ATM系統(tǒng),每個銀行網(wǎng)點(diǎn)都有多臺ATM客戶端結(jié)點(diǎn)通過網(wǎng)絡(luò)連接銀行業(yè)務(wù)系統(tǒng),它們地軟件系統(tǒng)采用多客戶/多服務(wù)模式體系架構(gòu)。八.多層客戶/服務(wù)模式在多層客戶/服務(wù)模式地軟件架構(gòu),除了基本地客戶端層次與服務(wù)端層次外,還有一個同時扮演客戶端角色與服務(wù)端角色地間層。間層對于它地服務(wù)層而言是一個客戶端,但對其它客戶端而言又是一個服務(wù)端??蛻舳?間層,服務(wù)端地結(jié)點(diǎn)通過網(wǎng)絡(luò)連接到在一起,支持多個客戶端構(gòu)件向服務(wù)端構(gòu)件提出服務(wù)請求

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論