邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用

邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用

ID:1276873

大小:283.50 KB

頁數(shù):10頁

時間:2017-11-09

邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用_第1頁
邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用_第2頁
邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用_第3頁
邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用_第4頁
邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用_第5頁
資源描述:

《邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、邏輯架構(gòu)和物理架構(gòu)在架構(gòu)設(shè)計中的應(yīng)用http://www.miiceic.org.cn???2007-5-1015:09:26???中程在線???瀏覽數(shù):252關(guān)鍵字:邏輯架構(gòu)和物理架構(gòu)  在不同的架構(gòu)設(shè)計方法中出現(xiàn)的軟件架構(gòu)視圖種類很多,本文介紹最常用的兩種架構(gòu)視圖——邏輯架構(gòu)視圖和物理架構(gòu)視圖,并通過具體案例的分析說明如何運用它們進行架構(gòu)設(shè)計。  當(dāng)觀察和描述事物大局的時候,邏輯架構(gòu)和物理架構(gòu)是最常用的角度。比如,以我們辦公室里的局域網(wǎng)為例:從物理角度看,所有計算機“毫無區(qū)別”地連接到路由器上;而從邏輯角度看呢,就發(fā)現(xiàn)這些計算機是有區(qū)別的——一臺計算

2、機充當(dāng)文件服務(wù)器,而其它計算機是可以訪問服務(wù)器的客戶機。如圖1所示。?      圖1???區(qū)分物理視角與邏輯視角  同樣,在軟件架構(gòu)設(shè)計過程中,也可以通過區(qū)分軟件的邏輯架構(gòu)和物理架構(gòu),分別從不同的角度設(shè)計和描述軟件架構(gòu)?! ∷^軟件架構(gòu)視圖,是指設(shè)計和看待整個軟件系統(tǒng)的特定視角。每個軟件架構(gòu)視圖關(guān)注系統(tǒng)架構(gòu)的不同方面,針對不同的目標和用途。也就是說,架構(gòu)要涵蓋的內(nèi)容和決策太多了,超過了人腦“一蹴而就”的能力范圍,因此采用“分而治之”的辦法從不同視角分別設(shè)計;同時,也為軟件架構(gòu)的理解、交流和歸檔提供了方便?! ∵壿嫾軜?gòu)  軟件的邏輯架構(gòu)規(guī)定了軟件系統(tǒng)由哪

3、些邏輯元素組成、以及這些邏輯元素之間的關(guān)系?! ≤浖倪壿嬙匾话阒改撤N級別的功能模塊,大到我們熟悉的邏輯層(Layer),以及子系統(tǒng)、模塊,小到一個個的類。至于具體要分解到何種大小的功能模塊才可結(jié)束軟件架構(gòu)設(shè)計,并不存在一個“一刀切”的標準——只要足夠明確簡單,能夠分頭開發(fā)就可以了。于是,在實踐中我們往往將關(guān)鍵機制相關(guān)的架構(gòu)設(shè)計部分明確到類,而一般功能則到模塊甚至子系統(tǒng)的接口定義即可?! ≈档谜f明的是,功能模塊有時容易識別,有時卻比較隱含。而比較全面地識別功能塊、規(guī)劃功能塊的接口、明確功能塊之間的使用關(guān)系和使用機制,正是軟件邏輯架構(gòu)設(shè)計的核心任務(wù)所在。

4、對此,IvarJacobson曾有過極為形象的說法,“軟件系統(tǒng)的架構(gòu)涵蓋了整個系統(tǒng),盡管架構(gòu)的有些部分可能只有‘一寸深’”?! D2展示了一個網(wǎng)絡(luò)設(shè)備管理系統(tǒng)邏輯架構(gòu)設(shè)計的一部分,我們借此來舉例說明軟件邏輯架構(gòu)設(shè)計的3大核心任務(wù):  識別功能塊  規(guī)劃功能塊的接口  明確功能塊之間的使用關(guān)系和使用機制    ?    圖2???軟件邏輯架構(gòu)設(shè)計的核心任務(wù)  軟件的邏輯架構(gòu)是架構(gòu)設(shè)計思維的重要方法。在用例技術(shù)已經(jīng)成為捕獲功能需求的事實標準的今天,邏輯架構(gòu)的設(shè)計往往是從用例分析開始的?;谟美姆治龇椒ㄊ惯壿嫾軜?gòu)的設(shè)計變得比較有序——通過對每個關(guān)鍵用例的分析

5、,從邏輯上將用例實現(xiàn)為一組功能塊的特定組合,最后綜合這些用例分析成果,將一個個獨立的協(xié)作歸納合并成整個軟件系統(tǒng)的邏輯架構(gòu)。而在用例分析方法產(chǎn)生之前,功能模塊的確定多多少少帶有些“硬”想出來的味道,特別是并不直接承載業(yè)務(wù)功能的模塊有時比較容易遺漏,直到大規(guī)模編程實現(xiàn)階段才發(fā)現(xiàn)?! ∥锢砑軜?gòu)  軟件的物理架構(gòu)規(guī)定了組成軟件系統(tǒng)的物理元素、這些物理元素之間的關(guān)系、以及它們部署到硬件上的策略。  物理架構(gòu)可以反映出軟件系統(tǒng)動態(tài)運行時的組織情況。此時,上述物理架構(gòu)定義中所提及的“物理元素”就是進程、線程、以及作為類的運行時實例的對象等,而進程調(diào)度、線程同步、進程或

6、線程通信等則進一步反映物理架構(gòu)的動態(tài)行為?! ‰S著分布式系統(tǒng)的流行,“物理層(Tier)”的概念大家早已耳熟能詳。物理層和分布有關(guān),通過將一個整體的軟件系統(tǒng)劃分為不同的物理層,可以把它部署到分布在不同位置的多臺計算機上,從而為遠程訪問和負載均衡等問題提供了手段。當(dāng)然,物理層是大粒度的物理單元,它最終是由粒度更小的組件、模塊、進程等單元組成的?! ∥锢砑軜?gòu)的應(yīng)用很廣泛。例如,架構(gòu)設(shè)計中可能需要專門說明數(shù)據(jù)是如何產(chǎn)生、存儲、共享和復(fù)制的,這時可以利于物理架構(gòu),展示軟件系統(tǒng)在運行期間數(shù)據(jù)是由哪些運行時單元如何產(chǎn)生的,數(shù)據(jù)又如何被使用、如何被存儲,哪些數(shù)據(jù)需要跨

7、網(wǎng)絡(luò)復(fù)制和共享等方面的設(shè)計決策?! ∮捎谌藗儗M成軟件系統(tǒng)的“物理元素”存在不同看法(如圖3所示),所以在實踐中物理架構(gòu)的用法比較寬泛,不同的人認為的物理架構(gòu)也可能不盡相同。因此,我們在交流和實踐的過程中,應(yīng)注意區(qū)分物理架構(gòu)所指為何。(也正是因為這個原因,實踐中所采用的基于多視圖的架構(gòu)設(shè)計方法往往包含更多的視圖,從而使每個架構(gòu)視圖的職責(zé)更加明確。)  ?             圖3???對“物理元素”的不同看法  從邏輯架構(gòu)和物理架構(gòu)到設(shè)計實現(xiàn)  邏輯架構(gòu)和物理架構(gòu)是軟件架構(gòu)設(shè)計的重要方面。邏輯架構(gòu)致力于將軟件系統(tǒng)分解成不同的邏輯單元,并規(guī)定這些邏輯單

8、元之間的交互接口和交互機制。物理架構(gòu)則更重視軟件系統(tǒng)運行時的動態(tài)結(jié)構(gòu),以及組成軟

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。