系統(tǒng)分析與設(shè)計IBM-71軟件體系結(jié)構(gòu)概念課件_第1頁
系統(tǒng)分析與設(shè)計IBM-71軟件體系結(jié)構(gòu)概念課件_第2頁
系統(tǒng)分析與設(shè)計IBM-71軟件體系結(jié)構(gòu)概念課件_第3頁
系統(tǒng)分析與設(shè)計IBM-71軟件體系結(jié)構(gòu)概念課件_第4頁
系統(tǒng)分析與設(shè)計IBM-71軟件體系結(jié)構(gòu)概念課件_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

軟件體系結(jié)構(gòu)概念軟件的復雜性問題:當系統(tǒng)的規(guī)模和復雜度不斷增大的時候,構(gòu)造整個系統(tǒng)的關(guān)鍵是什么?軟件的復雜性舉例:要求編寫一個程序,該程序讀入一個文本文件,統(tǒng)計在該文本文件中每個英文單詞出現(xiàn)的頻率,并輸出單詞頻率最高的100個單詞。構(gòu)造上述軟件的重點是設(shè)計哪些部分軟件的復雜性算法的選擇數(shù)據(jù)結(jié)構(gòu)的設(shè)計數(shù)據(jù)庫的構(gòu)造舉例:要求編寫一個程序,該程序讀入一個文本文件,統(tǒng)計在該文本文件中每個英文單詞出現(xiàn)的頻率,并輸出單詞頻率最高的100個單詞。軟件的復雜性舉例:Web信息檢索是對發(fā)布在Web信息資源進行搜集、整理和組織,形成一個信息資源索引庫,并通過檢索界面將最符合用戶要求的網(wǎng)站或網(wǎng)頁提供給用戶。軟件的復雜性舉例:Web信息檢索是對發(fā)布在Web信息資源進行搜集、整理和組織,形成一個信息資源索引庫,并通過檢索界面將最符合用戶要求的網(wǎng)站或網(wǎng)頁提供給用戶。網(wǎng)頁搜集預處理檢索服務Web信息檢索的處理過程:軟件的復雜性互聯(lián)網(wǎng)采集器網(wǎng)頁文件其他文檔數(shù)據(jù)庫信息采集模塊索引器索引數(shù)據(jù)庫倒排文檔標引處理模塊用戶接口檢索器檢索結(jié)果集相關(guān)處理信息檢索模塊用戶輸入處理復雜性隨著軟件系統(tǒng)的規(guī)模和復雜性不斷增加,對系統(tǒng)的全局結(jié)構(gòu)設(shè)計和規(guī)劃變得比算法的選擇和數(shù)據(jù)結(jié)構(gòu)的設(shè)計明顯重要得多。軟件體系結(jié)構(gòu)概念軟件體系結(jié)構(gòu)(Software

Architecture)包括構(gòu)成系統(tǒng)的設(shè)計元素的描述、設(shè)計元素之間的交互、設(shè)計元素的組合模式以及在這些模式中的約束。構(gòu)件連接件物理分布約束作用于這些要素或連接關(guān)系上的限制條件性能質(zhì)量一組基本的構(gòu)成要素這些要素之間的連接關(guān)系這些要素連接之后形成的拓撲結(jié)構(gòu)軟件體系結(jié)構(gòu)概念軟件體系結(jié)構(gòu)

=

構(gòu)件+

連接件+

約束如何將復雜的軟件系統(tǒng)劃分成模塊如何規(guī)范模塊的構(gòu)成如何將這些模塊組織成為完整的系統(tǒng)如何保證系統(tǒng)的質(zhì)量要求軟件體系結(jié)構(gòu)概念Component構(gòu)件是具有某種功能的可復用的軟件結(jié)構(gòu)單元,表示系統(tǒng)中主要的計算元素和數(shù)據(jù)存儲。Interface程序函數(shù)、模塊對象、類文件相關(guān)功能的集合……ServiceC軟件體系結(jié)構(gòu)概念連接是構(gòu)件間建立和維護行為關(guān)聯(lián)與信息傳遞的途徑。過程調(diào)用、中斷、I/O、事件、進程、線程、共享、同步、并發(fā)、消息、遠程調(diào)用、動態(tài)連接、API

等等機制協(xié)議對過程調(diào)用來說:參數(shù)的個數(shù)和類型、參數(shù)排列次序?qū)ο魉蛠碚f:消息的格式軟件體系結(jié)構(gòu)概念連接件表示構(gòu)件之間的交互并實現(xiàn)構(gòu)件之間的連接。C1C2管道(pipe)過程調(diào)用(procedure

call)事件廣播(event

broadcast)客戶機-服務器(client-server)數(shù)據(jù)庫連接(SQL)一般構(gòu)件是軟件功能設(shè)計和實現(xiàn)的承載體連接件是負責完成構(gòu)件之間信息交換和行為聯(lián)系的專用構(gòu)件軟件體系結(jié)構(gòu)的目標軟件體系結(jié)構(gòu)設(shè)計目標可重用性:復用已實現(xiàn)證明的體系結(jié)構(gòu),或提供可重用資產(chǎn)可擴展性:易于增加新的功能可改變性:易于適應需求變更簡單性:將復雜問題簡單化,使系統(tǒng)更加易于理解和實現(xiàn)有效性:體現(xiàn)早期設(shè)計決策,展現(xiàn)系統(tǒng)滿足需求的能力軟件體系結(jié)構(gòu)的發(fā)展功能函數(shù)對象構(gòu)件設(shè)計模式服務體系結(jié)構(gòu)風格面向模式的體系結(jié)構(gòu)框架面向過程的分析與設(shè)計面向?qū)ο蟮姆治雠c設(shè)計基于構(gòu)件的軟件開發(fā)面向服務的計算面向服務的體系結(jié)構(gòu)IT技術(shù)封閉商務過程開放細粒度粗粒度風格、模式和框架體系結(jié)構(gòu)風格:用于描述某一特定應用領(lǐng)域中系統(tǒng)組織的慣用模式,反映了領(lǐng)域中眾多系統(tǒng)所共有的結(jié)構(gòu)和語義特性。設(shè)計模式:描述了軟件系統(tǒng)設(shè)計過程中常見問題的一些解決方案,通常是從大量的成功實踐中總結(jié)出來的且被廣泛公認的實踐和知識。軟件框架:軟件框架是由開發(fā)人員定制的應用系統(tǒng)的骨架,是整個或部分系統(tǒng)的可重用設(shè)計,由一組抽象構(gòu)件和構(gòu)件實例間的交互方式組成。風格、模式和框架框架和體系結(jié)構(gòu)的關(guān)系:體系結(jié)構(gòu)的呈現(xiàn)形式是一個設(shè)計規(guī)約,而框架則是“半成品”的軟件;體系結(jié)構(gòu)的目的是指導軟件系統(tǒng)的開發(fā),而框架的目的是設(shè)計復用。ControllerViewModel風格、模式和框架框架和設(shè)計模式的關(guān)系:框架給出的是整個應用的體系結(jié)構(gòu);而設(shè)計模式則給出了單一設(shè)計問題的解決方案,且可以在不同的應用程序或者框架中進行應用。舉例:一個網(wǎng)絡游戲可以基于網(wǎng)易的Pomelo框架開發(fā),這是一個基于Node.js的高性能、分布式游

溫馨提示

  • 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

提交評論