華南理工大學軟件體系結(jié)構(gòu)復習提綱_第1頁
華南理工大學軟件體系結(jié)構(gòu)復習提綱_第2頁
華南理工大學軟件體系結(jié)構(gòu)復習提綱_第3頁
華南理工大學軟件體系結(jié)構(gòu)復習提綱_第4頁
華南理工大學軟件體系結(jié)構(gòu)復習提綱_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1. 理解并比較構(gòu)件分類的三種方法,如何在其中檢索構(gòu)件?每種方法各有什么優(yōu)缺點?分類方法方法描述基于分類方法的檢索優(yōu)缺點關(guān)鍵字分類法根據(jù)領(lǐng)域分析的結(jié)果將應用領(lǐng)域的概念按照從抽象到具體的順序逐次分解為樹形或有向無回路圖結(jié)構(gòu),每個概念用一個描述性的關(guān)鍵字表示,不可分解的原子級關(guān)鍵字包含隸屬于它的某些構(gòu)件。系統(tǒng)在圖形用戶界面上將構(gòu)件庫的關(guān)鍵字樹形結(jié)構(gòu)直觀地展示給用戶,用戶通過對樹形結(jié)構(gòu)的逐級瀏覽尋找需要的關(guān)鍵字并提取相應的構(gòu)件。簡單,易于實現(xiàn),但在某些場合沒有應用價值??堂娣诸惙ㄖ饕枷雭碓从趫D書館學,定義若干用于刻畫構(gòu)件特征的“面”,每個面又通過若干概念表述構(gòu)件在面上的特征。描述構(gòu)件刻面的集合稱為

2、構(gòu)件描述符。用戶提供要查找的構(gòu)件在每個刻面上的特征,生成構(gòu)件描述符,計算機輔助軟件工程工具在構(gòu)件庫中尋找相同或相近的構(gòu)件描述符及相應的構(gòu)件,并按相似程度排序,同時還可以按照與重用有關(guān)的度量信息排序。易于實現(xiàn)相似構(gòu)件的查找,但用戶在構(gòu)造查詢時比較麻煩。超文本組織方法所有構(gòu)件必須輔以詳盡的功能或行為說明文檔;說明中出現(xiàn)的重要概念或構(gòu)件以網(wǎng)狀鏈接方式相互鏈接;檢索者在閱讀文檔的過程中可按照人類的聯(lián)想思維方式任意跳轉(zhuǎn)到包含相關(guān)概念或構(gòu)件的文檔;全文檢索系統(tǒng)將用戶給出的關(guān)鍵字說明文檔中的文字進行匹配,實現(xiàn)構(gòu)件的瀏覽式檢索。用戶首先給出一個或數(shù)個關(guān)鍵字,系統(tǒng)在構(gòu)件的說明中進行精確的或模糊的語法匹配,匹配成

3、功后,向用戶列出相應的構(gòu)件說明。構(gòu)件說明是含有許多超文本結(jié)點的正文,用戶閱讀這些正文時可實現(xiàn)多個構(gòu)件說明文檔之間的自由跳轉(zhuǎn),最終選擇合適的構(gòu)件。為構(gòu)造構(gòu)件和重用構(gòu)件提供了友好,直接的多媒體方式,易于修改構(gòu)件庫的結(jié)構(gòu)。但在某些情況下用戶難以在超文本瀏覽過程中正確選取構(gòu)件。2. 詳細了解什么是web服務(wù)體系結(jié)構(gòu)?web服務(wù)(web service)是基于xml和https的一種服務(wù),其通信協(xié)議主要基于soap,服務(wù)的描述通過wsdl,通過uddi來發(fā)現(xiàn)和獲得服務(wù)的元數(shù)據(jù)。web services技術(shù)的主要目標就是在現(xiàn)有的各種異構(gòu)平臺的基礎(chǔ)上構(gòu)筑一個通用的平臺無關(guān)、語言無關(guān)的技術(shù)層,各種不同平臺之上

4、的應用依靠這個技術(shù)層來實施彼此的連接和集成。(1)web服務(wù)模型:一個完整的web服務(wù)包括三種邏輯構(gòu)件:服務(wù)提供者、服務(wù)代理和服務(wù)請求。與web服務(wù)相關(guān)的操作有發(fā)布、發(fā)現(xiàn)和綁定。(2)web服務(wù)協(xié)議棧層次協(xié)議作用發(fā)現(xiàn)服務(wù)層uddi(統(tǒng)一描述,發(fā)現(xiàn)和集成協(xié)議)解決在哪里,怎么獲得服務(wù)信息的問題(主要用來幫助客戶端解析遠程服務(wù)的位置)描述服務(wù)層wsdl(web服務(wù)描述語言)解決web服務(wù)怎么描述的問題(為客戶端提供正確地與遠程服務(wù)交互的描述信息)消息格式層soap(簡單對象訪問協(xié)議)解決消息怎么傳輸?shù)膯栴}(5端在格式設(shè)置上保持一致)編碼格式層xml(可擴展標記語言)解決數(shù)據(jù)怎么表示的問題(為客戶端

5、和服務(wù)器之間提供一個標準的、獨立于平臺的數(shù)據(jù)交換編碼格式)傳輸協(xié)議層http(超文本傳輸協(xié)議) smtp(簡單郵件傳輸協(xié)議)解決消息怎么傳輸?shù)膯栴}(為客戶端和服務(wù)器之間提供交互的網(wǎng)絡(luò)通信協(xié)議)3. 引入了軟件體系結(jié)構(gòu)以后,傳統(tǒng)軟件過程發(fā)生了哪些變化?這種變化有什么好處?軟件體系結(jié)構(gòu)的引入使軟件設(shè)計開發(fā)更加具體和形象,它的模型更使得軟件過程更加方便和多樣化。其好處在于:包括程序員在內(nèi)的絕大多數(shù)系統(tǒng)的利益相關(guān)人員都借助軟件體系結(jié)構(gòu)來進行彼此理解、協(xié)商、達成共識或者相互溝通的基礎(chǔ),軟件體系結(jié)構(gòu)的模型可以應用到具有相似質(zhì)量屬性和功能需求的系統(tǒng)中,并能夠促進大規(guī)模軟件的系統(tǒng)級復用,在很多方面使得軟件開發(fā)

6、更加人性化。4. adl側(cè)重于構(gòu)件、連接件和風格組成的動態(tài)軟件體系結(jié)構(gòu),請用adl對你熟悉的一個簡單系統(tǒng)結(jié)構(gòu)或其一部分進行描述。(客戶/服務(wù)器規(guī)約)5. 比較繼承方式和類的聚合方式的優(yōu)缺點。聚合:一個對象包含另一個對象或是另一個對象的一部分,并且被包含對象和其所有具有相同的生命周期,即所謂的“同生共死”的關(guān)系。l 優(yōu)點Ø 容器類僅能通過被包含對象的接口來對其進行訪問Ø 黑盒重用,因為被包含對象的內(nèi)部細節(jié)是不可見的Ø 很好的封裝性,每個類專注于一個任務(wù)Ø 通過獲得和被包含對象的類型相同的對象引用,可以在運行時動態(tài)定義聚合的方式l 缺點Ø 導致系統(tǒng)

7、的對象過多Ø 為了使聚合時可以使用不同的對象,必須小心的定義接口繼承:是一種通過擴展一個已有對象實現(xiàn)的,從而獲得新功能的復用方法。基類有通用的屬性和方法子類提供更多的屬性和方法來擴展基類。l 優(yōu)點:Ø 新的實現(xiàn)很容易,因為大部分是繼承來的Ø 很容易修改和擴展已有的實現(xiàn)l 缺點:Ø 破壞了封裝性, 因為這會將父類的實現(xiàn)細節(jié)暴露給子類 Ø 白盒復用, 因為父類的內(nèi)部細節(jié)對于子類而言通常是可見的 Ø 當父類的實現(xiàn)更改時, 子類也不得不隨之更改 Ø 從父類繼承來的實現(xiàn)將不能在運行期間進行改變6. 詳細了解所講過的設(shè)計模式. 設(shè)計模式

8、是指在軟件開發(fā)中,經(jīng)過驗證的、用于解決在特定環(huán)境下、重復出現(xiàn)的、特定問題的解決方案。使用設(shè)計模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。裝飾模式定義:動態(tài)地給一個對象添加一些額外的職責。就增加功能來說,裝飾模式相比生成子類更為靈活。設(shè)計原則:1. 多用組合,少用繼承。2. 類應設(shè)計的對擴展開放,對修改關(guān)閉。要點:1 裝飾者和被裝飾對象有相同的超類型。2 可以用一個或多個裝飾者包裝一個對象。3 裝飾者可以在所委托被裝飾者的行為之前或之后,加上自己的行為,以達到特定的目的。4 對象可以在任何時候被裝飾,所以可以在運行時動態(tài)的,不限量的用你喜歡的裝飾者來裝飾對象。5 裝飾模式中使用

9、繼承的關(guān)鍵是想達到裝飾者和被裝飾對象的類型匹配,而不是獲得其行為。6裝飾者一般對組件的客戶是透明的,除非客戶程序依賴于組件的具體類型。在實際項目中可以根據(jù)需要為裝飾者添加新的行為,做到“半透明”裝飾者。7 適配器模式的用意是改變對象的接口而不一定改變對象的性能,而裝飾模式的用意是保持接口并增加對象的職責。優(yōu)點:1. decorator模式與繼承關(guān)系的目的都是要擴展對象的功能,但是decorator可以提供比繼承更多的靈活性。2. 通過使用不同的具體裝飾類以及這些裝飾類的排列組合,設(shè)計師可以創(chuàng)造出很多不同行為的組合。缺點:1. 這種比繼承更加靈活機動的特性,也同時意味著更加多的復雜性。2. 裝飾

10、模式會導致設(shè)計中出現(xiàn)許多小類,如果過度使用,會使程序變得很復雜。3. 裝飾模式是針對抽象組件(component)類型編程。但是,如果你要針對具體組件編程時,就應該重新思考你的應用架構(gòu),以及裝飾者是否合適。7. 對一個你曾經(jīng)開發(fā)過的軟件系統(tǒng)進行考慮,請用一種adl對其體系結(jié)構(gòu)進行描述acme 對c/s體系結(jié)構(gòu)的描述在acme中,體系架構(gòu)用7中核心實體表示:構(gòu)件、系統(tǒng)、端口、角色、表示、rep-maps。8. 結(jié)合具體項目采用軟件體系結(jié)構(gòu)風險分析方法進行評估。整個atam(架構(gòu)權(quán)衡分析方法)評估過程包括九個步驟,按其編號順序分別是:1) 描述atam方法2) 描述商業(yè)動機3) 描述體系結(jié)構(gòu)4)

11、確定體系結(jié)構(gòu)方法5) 生成質(zhì)量屬性效用樹6) 分析體系結(jié)構(gòu)方法7) 討論和分級場景8) 分析體系結(jié)構(gòu)方法(是第六步的重復)9) 描述評估結(jié)果。*補充題型*補充題型*9. 軟件體系結(jié)構(gòu)的分析與測試風險評估對于任何軟件風險管理計劃都是一個重要的過程。風險評估應該是基于能夠通過定量的方法對軟件產(chǎn)品屬性進行的度量。體系結(jié)構(gòu)級的風險評估是基于動態(tài)的方法。該方法用動態(tài)復雜性和動態(tài)耦合性來定義用于描述體系結(jié)構(gòu)元素的復雜性因子。動態(tài)耦合度是用來度量在特定的執(zhí)行場景中,兩個互相連接的構(gòu)件或連接件之間的活躍程度。動態(tài)復雜度方法是用來測量特定構(gòu)件在給定場景下的動態(tài)行為。構(gòu)件依賴圖(cdg)是用于在體系結(jié)構(gòu)級進行可靠

12、性分析的概率模型;它是控制流圖的擴展。分析方法的主要步驟:1. 采用adl對體系結(jié)構(gòu)進行建模。2. 通過模擬方法執(zhí)行復雜性分析。3. 通過fmea(失效模型和影響分析)和模擬運行執(zhí)行嚴重性分析。4. 為構(gòu)件和連接件開發(fā)啟發(fā)式風險因子。5. 建立用于風險評估的cdg。6. 通過圖論中的算法執(zhí)行風險評估和分析。10. 軟件體系結(jié)構(gòu)建模 軟件體系結(jié)構(gòu)建模的種類有5種:結(jié)構(gòu)模型,框架模型,動態(tài)模型,過程模型,功能模型 “4+1”模型概述 “4+1”視圖模型從5個不同的視角包括邏輯視圖、進程視圖、物理視圖、開發(fā)視圖和場景視圖來描述軟件體系結(jié)構(gòu)。 每一個視圖只關(guān)心系統(tǒng)的一個側(cè)面,5個視圖結(jié)合在一起才能反映

13、系統(tǒng)的軟件體系結(jié)構(gòu)的全部內(nèi)容。 邏輯視圖主要支持系統(tǒng)的功能需求,即系統(tǒng)提供給最終用戶的服務(wù)。開發(fā)視圖也稱模塊視圖,主要側(cè)重于軟件模塊的組織和管理。進程視圖側(cè)重系統(tǒng)的運行特性,關(guān)注非功能性的需求。物理視圖主要考慮如何把軟件映射到硬件上,它通常要考慮到系統(tǒng)性能、規(guī)模、可靠性等。解決系統(tǒng)拓撲結(jié)構(gòu)、系統(tǒng)安裝、通訊等問題。場景可以看作是那些重要系統(tǒng)活動的抽象,它使四個視圖有機聯(lián)系起來,從某種意義上說場景是最重要的需求抽象。11. 軟件體系結(jié)構(gòu)風格軟件體系結(jié)構(gòu)風格是描述某一特定應用領(lǐng)域中系統(tǒng)組織方式的慣用模式。管道和過濾器 每個構(gòu)件都有一組輸入和輸出,構(gòu)件讀輸入的數(shù)據(jù)流,經(jīng)過內(nèi)部處理,然后產(chǎn)生輸出數(shù)據(jù)流。這個過程通常通過對輸入流的變換及增量計算來完成,所以在輸入被完全消費之前,輸出便產(chǎn)生了。 這里的構(gòu)件被稱為過濾器,這種風格的連接件就象是數(shù)據(jù)流傳輸?shù)墓艿?,將一個過濾器的輸出傳到另一過濾器的輸入。優(yōu)點 使得軟構(gòu)件具有良好的隱蔽性和高內(nèi)聚、低耦合的特點; 允許設(shè)計者將整個系統(tǒng)的輸入/輸出行為看成是多個過濾器的行為的簡單的疊加和組合,可以將問題分解,化繁為簡; 支持軟件重用。任何兩個過濾器,只要它們之間傳送的數(shù)據(jù)遵守共同的規(guī)約就可以相連接; 系統(tǒng)維護和增強系統(tǒng)性能簡單。新的過濾器可以添加到現(xiàn)有系統(tǒng)中來;舊的可以被改進的過濾器替

溫馨提示

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

最新文檔

評論

0/150

提交評論