軟件的體系結構知識點完整_第1頁
軟件的體系結構知識點完整_第2頁
軟件的體系結構知識點完整_第3頁
軟件的體系結構知識點完整_第4頁
軟件的體系結構知識點完整_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

實用標準文案1、構件是核心和基礎, 重用是必需的手段。2、軟件重用是指在兩次或多次不同的軟件軟件開發(fā)過程中重復使用相同或相近軟件元素的過程。3、軟件元素包括程序代碼、設計文檔、設計過程、需求分析文檔甚至領域知識。、把可重用的元素稱作軟構件,簡稱為軟構件。、可重用軟件元素越大,就說重用的粒度越大。、構件是指語義完整、語法正確和有可重用價值的單位軟件,是軟件重用過程中可以明確辨識的系統(tǒng);結構上,它是語義描述、通信接口和代碼實現(xiàn)的復合體。、面向?qū)ο蠹夹g達到類級重用,以類為封裝的單位。8、構件模型是對構件本質(zhì)特征的抽象描述。三個主要流派,分別是OMG(對象管理組織)的CORBA(通用對象請求代理結構)、Sun的EJB和Microsoft的DOM(分布式構件對象模型)。9、獲取構件的四個途徑:(1)從現(xiàn)有構件中獲得符合要求的構件,直接使用或作適應性修改,得到可重用構件。(2)通過遺留工程,將具有潛在重用價值的構件提取出來,得到可重用構件。(3)從市場上購買現(xiàn)成的商業(yè)構件,即COTS構件。(4)開發(fā)符合要求的構件。10、構件分類方法三大類:關鍵字分類、刻面分類法、超文本組織方法11、構件檢索方法:基于關鍵字的檢索、刻面檢索法、超文本檢索法和其他檢索方法。、減少構件修改的工作量,要求工作人員盡量使構件的功能、行為和接口設計更為抽象畫、通用化和參數(shù)化。13、構件組裝技術:基于功能的組裝技術、基于數(shù)據(jù)的組裝技術和面向?qū)ο蟮慕M裝技術。14、軟件體系結構的定義:軟件體系結構為軟件系統(tǒng)提供了一個結構、行為和屬性的高級抽象,由構成系統(tǒng)的元素的描述、這些元素的相互作用、指導元素集成的模式以及這些模式的約束組成。軟件體系結構不僅指定了系統(tǒng)的組織結構和拓撲結構,并且顯示了系統(tǒng)需求和構成系統(tǒng)的元素之間的對應關系,提供了一些設計決策的基本原理。軟件體系結構的意義:(1)體系結構是風險承擔者進行交流的手段;(2)體系結構是早期設計決策的體現(xiàn)--①軟件體系結構明確了對系統(tǒng)實現(xiàn)的約束條件②軟件體系結構決定了開發(fā)和維護組織的組織結構③軟件體系結構制約著系統(tǒng)的質(zhì)量屬性④通過研究軟件體系結構可能預測軟件的質(zhì)量⑤軟件體系結構使推理和控制更改更簡單⑥軟件體系結構有助于循序漸進的原型設計⑦軟件體系結構可以作為培訓的基礎;(3)軟件體系結構是可傳遞和可重用的模型。軟件體系結構發(fā)展的四個階段:(1)無體系結構設計階段。以匯編語言進行小規(guī)模應用程序開發(fā)為特征。(2)萌芽階段。出現(xiàn)了程序結構設計主題,以控制流圖和數(shù)據(jù)流圖構成軟件結構為特征。(3)初期階段。出現(xiàn)了從不同側(cè)面描述系統(tǒng)的結構模型,以UML為典型代表。(4)高級階段。以描述系統(tǒng)的高層抽象結構為中心,不關心具體的建模細節(jié),劃分了體系結構與傳統(tǒng)軟件結構的界限,該階段以Kruchten提出的“4+1”模型為標志。精彩文檔實用標準文案通用體系結構風格分類數(shù)據(jù)流風格:批處理序列、管道與過濾器。調(diào)用/返回風格:主程序與子程序、面向?qū)ο箫L格、層次結構。獨立構件風格:進程通信、事件系統(tǒng)。虛擬機風格:解釋器、基于規(guī)則的系統(tǒng)。倉庫風格:黑板系統(tǒng)、傳統(tǒng)型數(shù)據(jù)庫。管道與過濾器特點:(1)使得軟構件具有良好的內(nèi)聚、耦合的特點。2)允許設計師將整個系統(tǒng)的輸入/輸出行為看成是多個過濾器的行為的簡單合成。3)支持軟件重用。4)系統(tǒng)維護和增強系統(tǒng)性能簡單。5)允許對一些如吞吐量、死鎖等屬性的分析。6)支持并行執(zhí)行。缺點:(1)通常導致進程成為批處理的結構。2)不適合處理交互的應用。3)系統(tǒng)性能下降,并增加了編寫過濾器的復雜性。結構示意圖:面向?qū)ο笙到y(tǒng)優(yōu)點:(1)因為對象對其他對象隱藏它的表示,所以可以改變一個對象的表示,而不影響其它的對象。2)設計師可將一些數(shù)據(jù)存取操作的問題分解成一些交互的代理程序的集合。缺點:1)為了使一個對象和另一個對象通過過程調(diào)用等進行交互,必須知道對象的標識。只要一個對象的標識改變了,就必須修改所有其他明確調(diào)用它的對象。2)必須修改所有顯示調(diào)用它的其他對象,并消除由此帶來的一些副作用?;谑录碾[式調(diào)用思想:構件不直接調(diào)用一個過程,而是出發(fā)或廣播一個或多個事件。應用系統(tǒng)的例子 :1)在編程環(huán)境中用于集成各種工具,在數(shù)據(jù)庫管理系統(tǒng)中確保數(shù)據(jù)的一致性約束,在用戶界面系統(tǒng)中管理數(shù)據(jù),以及在編輯器中支持語法檢查。精彩文檔實用標準文案(2)某系統(tǒng)中,編輯器和變量監(jiān)視器可以登記相應 Debugger 的斷點事件。當Debugger 在斷點處停下時,它聲明該事件,由系統(tǒng)自動調(diào)用處理程序,如編輯程序可以卷屏到斷點,變量監(jiān)視器刷新變量數(shù)值。優(yōu)點:1、為軟件重用提供了強大的支持。2、為改進系統(tǒng)帶來了方便。缺點:1)構件放棄了對系統(tǒng)計算的控制。2)數(shù)據(jù)交換的問題。3)既然過程的語義必須依賴于被觸發(fā)事件的上下文約束,關于正確性的推理存在問題。分層系統(tǒng) 舉例:層次系統(tǒng)最廣泛的應用是分層通信協(xié)議。在這一應用領域中,每一層提供一個抽象的功能,作為上層通信的基礎。較低的層次定義低層的交互,最低層通常只定義硬件物理連接。優(yōu)點:1、支持基于抽象程度遞增的系統(tǒng)設計,使設計者可以把一個復雜的系統(tǒng)按照遞增的順序分解。、支持功能增強,因為每一層至多與相鄰的上下層進行交互,因此功能改變最多影響相鄰的上下層。、支持重用。只要提供的服務接口定義不變,同一層的不同實現(xiàn)可以交換使用。缺點:(1)并不是每個系統(tǒng)都可以很容易地劃分為分層的模式,甚至即使一個系統(tǒng)的邏輯結構是層次化的,出于對系統(tǒng)性能的考慮,系統(tǒng)設計師不得不把一些低級或高級的功能綜合起來。(2)很難找到一個合適的、正確的層次抽象方法。倉庫系統(tǒng)傳統(tǒng)型數(shù)據(jù)庫: 輸入流中某類時間觸發(fā)進程執(zhí)行的選擇。黑板系統(tǒng):中央數(shù)據(jù)結構的當前狀態(tài)觸發(fā)進程執(zhí)行的選擇。組成部分:(1)知識源(2)黑板數(shù)據(jù)結構( 3)控制精彩文檔實用標準文案客戶/服務器風格優(yōu)點:1)具有強大的數(shù)據(jù)操作和事務處理能力,模型思想簡單,易于人們理解和接受。2)系統(tǒng)的客戶應用程序和服務器構件分別運行在不同的計算機上,系統(tǒng)中每臺服務器都可以適合各構件的要求,這對于硬件和軟件的變化顯示出極大的適應性和靈活性,而且易于對系統(tǒng)進行擴充和縮小。3)系統(tǒng)中的功能構件充分隔離,客戶應用程序的開發(fā)集中于數(shù)據(jù)的顯示和分析,而數(shù)據(jù)庫服務器的開發(fā)則集中于數(shù)據(jù)的管理,不必在每一個新的應用程序中都要對一個 DBMS進行編碼。將大的應用處理任務分布到許多通過網(wǎng)絡連接的低成本計算機上,以節(jié)約大量費用。缺點:(1)開發(fā)成本較高 ;(2)客戶端程序設計復雜 ;(3)信息內(nèi)容和形式單一;(4)用戶界面風格不一,使用繁雜,不利于推廣使用 ;5)軟件移植困難;6)軟件維護和升級困難;7)新技術不能輕易應用。集中式計算技術的缺點:1)隨著系統(tǒng)規(guī)模的擴大和功能的提高,集中式系統(tǒng)的復雜性迅速增長,給管理、維護帶來困難;2)對組織變革和技術發(fā)展的適應性差,應變能力弱;3)不利于發(fā)揮用戶在系統(tǒng)開發(fā)、維護、管理方面的積極性與主動精神;4)系統(tǒng)比較脆弱。主機出現(xiàn)故障時可能使整個系統(tǒng)停止工作。服務器主要任務:1)數(shù)據(jù)庫安全性的要求;2)數(shù)據(jù)庫訪問并發(fā)性的控制;3)數(shù)據(jù)庫前端的客戶應用程序的全局數(shù)據(jù)完整性規(guī)則;4)數(shù)據(jù)庫的備份與恢復??蛻魬贸绦蛑饕蝿眨?)提供用戶與數(shù)據(jù)庫交互的界面;2)向數(shù)據(jù)庫服務器提交用戶請求并接收來自數(shù)據(jù)庫服務器的信息;3)利用客戶應用程序?qū)Υ嬖谟诳蛻舳说臄?shù)據(jù)執(zhí)行應用邏輯要求。三層C/S風格與二層C/S體系結構的不同:優(yōu)點:1、允許合理地劃分三層結構的功能,使之在邏輯上保持相對獨立性,從而使整個系統(tǒng)的邏輯結構更為清晰,能提高系統(tǒng)和軟件的可維護性和可擴展性。精彩文檔實用標準文案2、允許更靈活有效地選用相應的平臺和硬件系統(tǒng),使之在處理負荷能力上與處理特性上分別適應于結構清晰的三層;并且這些平臺和各個組成部分可以具有良好的可升級性和開放性。、應用的各層可以并行開發(fā),各層也可以選擇各自最適合的開發(fā)語言,使之高效并行地開發(fā),達到較高的性能價格比;對每一層的處理邏輯的開發(fā)和維護也會更容易些。、允許充分利用功能層有效地隔離開表示層與數(shù)據(jù)層,未授權的用戶難以繞過功能層而利用數(shù)據(jù)庫工具或黑客手段去非法地訪問數(shù)據(jù)層,為嚴格的安全管理奠定了堅實的基礎;整個系統(tǒng)的管理層次也更加合理和可控制。表示層、功能層、數(shù)據(jù)層主要功能三層風格不同物理結構比較表示層:表示層是應用的用戶接口部分,它擔負著用戶與應用間的對話功能功能層:功能層相當于應用的本體,它是將具體的業(yè)務處理邏輯編入程序中數(shù)據(jù)層:數(shù)據(jù)層就是數(shù)據(jù)庫管理系統(tǒng),負責管理對數(shù)據(jù)庫數(shù)據(jù)的讀寫中間件 概念:是一個用 API定義的軟件層,是具有強大通信能力和良好可擴展性的分布式軟件管理框架。功能:在客戶機和服務器或者服務器和服務器之間傳送數(shù)據(jù),實現(xiàn)客戶機群和服務器群之間的通信。瀏覽器/服務器風格 模式結構示意圖精彩文檔實用標準文案與c/s比較其優(yōu)點:1、基于B/S體系結構的軟件,系統(tǒng)安裝、修改和維護全在服務器端解決。用戶在使用系統(tǒng)時,僅僅需要一個瀏覽器就可運行全部的模塊,真正達到了“零客戶端”的功能,很容易在運行時自動升級。2、B/S體系結構還提供了異種機、異種網(wǎng)、異種應用服務的聯(lián)機、聯(lián)網(wǎng)、統(tǒng)一服務的最現(xiàn)實的開放性基礎。缺點:1、B/S體系結構缺乏對動態(tài)頁面的支持能力,沒有集成有效的數(shù)據(jù)庫處理功能。2、B/S體系結構的系統(tǒng)擴展能力差,安全性難以控制。3、采用B/S體系結構的應用系統(tǒng),在數(shù)據(jù)查詢等響應速度上,要遠遠地高于

溫馨提示

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

評論

0/150

提交評論