日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件体系结构复习资料

發布時間:2024/1/1 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件体系结构复习资料 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 軟件危機表現和原因:
  • 軟件成本日益增長;開發進度難以控制;軟件質量差;軟件維護困難;
  • 原因:用戶需求不明確;缺乏正確理論指導;軟件規模越來越大;軟件復雜度越來越高;
  • ?

    • 構件概念、主要模型、三大分類方法:
  • 構件是指語義完整、語法正確和有重用價值得單位軟件,是軟件重用過程中可以明確辨識的系統;結構上它是語義描述、通信接口和實現代碼的復合體。
  • 分別是OMG(Object Management Group,對象管理組織)的CORBA(Common Object Request Broker Architecture,公共對象請求代理體系結構)、Sun的EJB(Enterprise JavaBean,企業級Java組件)和Microsoft的DCOM(Distribute Component Object Model,分布式構件對象模型)。
  • 關鍵字分類法、可免分類法、超文本組織方法。
  • ?

    • 軟件體系結構定義、意義:
  • 定義:軟件體系結構(SoftwareArchitecture,sA)為軟件系統提供了一個結構、行為和屬性的高級抽象,由構成系統的元素的描述、這些元素的相互作用、指導元素集成的模式以及這些模式的約束組成。軟件體系結構不僅指定了系統的組織結構和拓撲結構,并且顯示了系統需求和構成系統的元素之間的對應關系,提供了一些設計決策的基本原理。
  • 意義:體系結構是風險承擔著進行交流的手段。
  • 體系結構式早期設計決策的體現。
  • 軟件體系結構明確了對系統實現的約束條件。
  • 軟件體系結構決定了開發和維護組織的組織結構。
  • 軟件體系結構制約著系統的質量屬性。
  • 通過研究軟件體系結構可能預測軟件的質量。
  • 軟件體系結構使推理和控制更改更簡單。
  • 軟件體系結構有助于循序漸進的原型設計。
  • 軟件體系結構可以作為培訓的基礎。
  • [4].軟件體系結構是可傳遞和可重用的模型。

    ?

    • 軟件體系結構模型:
  • 結構模型:以體系結構的構件、連接件和其他概念來刻畫結構,并力圖通過結構來反映系統的重要語義內容,包括系統的配置、約束、隱含的假設條件、風格、性質等。【最直觀、最普遍的建模方法】
  • 框架模型:不太側重描述結構的細節而更側重于整體的結構。【類似于結構模型】
  • 動態模型:研究系統的“大顆粒”的行為性質【對結構或框架模型的補充】
  • 過程模型:研究構造系統的步驟和過程。
  • 功能模型:認為體系結構是由一組功能構件按層次組成,下層向上層提供服務。【有點像計網的分層協議那種,可以看作框架模型的一種特殊的形式】
  • ?

    ?

    • 4+1視圖模型:

    1、場景視圖 :靜態方面用 用例圖 表現,動態方面用活動圖、狀態圖、交互圖表現。

    2、邏輯視圖:包含了類、接口、協作,靜態方面用 類圖和對象圖表現,動態方面用活動圖、狀態圖、交互圖表現。

    3、開發視圖:(Development View),描述了在開發環境中軟件的靜態組織結構。靜態方面用 組件圖 表示。

    4、進程視圖:側重系統的運行特性關注非功能性的需求性能可用性。服務于系統集成人員方便后續性能測試。強調并發性、分布性、集成性、魯棒性容錯、可擴充性、吞吐量等。和邏輯實體類似,可用類圖(擴展)、活動圖、交互圖、狀態圖表現。

    5、物理視圖 : 主要描述硬件配置。服務于系統工程人員解決系統的拓撲結構、系統安裝、通信等問題。主要考慮如何把軟件映射到硬件上也要考慮系統性能、規模、可靠性等,靜態方面用 部署圖 表現,動態方面用活動圖、狀態圖、交互圖表現。

    ?

    • 軟件體系結構核心模型的物種結構:

    構件、連接件、配置、端口、角色

    ?

    • 軟件體系節后的生命周期模型:

    需求分析階段、建立軟件體系結構階段、設計階段、實現階段

  • 軟件體系結構的非形式化描述、軟件體系結構的規范描述和分析、軟件體系結構的求精以及驗證、軟件體系結構的實施、軟件體系結構的演化和擴展、軟件體系結構的提供、評價和度量、軟件體系結構的終結。
  • ?

    • 軟件體系結構風格定義和種類:
  • 軟件體系結構風格是描述某一特定應用領域中系統組織方式的管用模式。體系結構風格定義一個系統家族,即一個體系結構定義一個詞匯表和一組約束。
  • 管道與過濾器、數據抽象和面向對象系統、基于事件的系統、分層系統、倉庫系統及知識庫、C2風格、
  • ?

    ?

    ?

    • 客戶/服務器風格:
  • 服務器負責有效管理系統的資源。
  • 數據庫安全性的要求。
  • 數據庫訪問并發性的控制。
  • 數據庫前端 應用程序的全局數據庫完整性規則。
  • 數據庫的備份與恢復。
  • 提供用戶與數據庫交互的界面。
  • 向數據庫服務器提交用戶請求并接收來自數據庫服務器的信息。
  • 利用客戶應用程序對存在于客戶端的數據執行應用邏輯要求。
  • ?

    • 三層C/S結構:
  • 表示層、功能層、數據層
  • 區別:在三層C/S體系結構中,增加了一個應用服務器。可以將整個應用邏輯駐留在應用服務器上,而只有表示層存在于客戶機上。被稱為瘦客戶機。
  • 優點: A允許合理地劃分三層結構的功能、使之在邏輯上保持相對獨立性,從而使整個系統的邏輯結構更為清晰、能提高系統和軟件的可維護性和拓展性。B 允許更靈活有效的選用,相應的平臺和硬件系統,使之在處理負荷能力上與特性上分別適用于結構清晰的三層。C? 在三層CS結構中應用的過程可以,并行開發過程,也可以選擇各自最合適的開發語言。D? 允許充分利用功能層有效的隔離開表示層與數據層,未授權的用戶難以繞過功能層從而利用數據庫工具或黑客手段去非法的訪問數據層。
  • ?

    (1)優點:

      ●能充分發揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務器,所以CS客戶端響應速度快。

      ●操作界面漂亮、形式多樣,可以充分滿足客戶自身的個性化要求。 ?

      ●C/S結構的管理信息系統具有較強的事務處理能力,能實現復雜的業務流程。

      ●安全性能可以很容易保證,C/S一般面向相對固定的用戶群,程序更加注重流程,它可以對權限進行多層次校驗,提供了更安全的存取模式,對信息安全的控制能力很強。一般高度機密的信息系統采用C/S結構適宜。

    (2)缺點:

    ●需要專門的客戶端安裝程序,分布功能弱,針對點多面廣且不具備網絡條件的用戶群體,不能夠實現快速部署安裝和配置。●兼容性差,對于不同的開發工具,具有較大的局限性。若采用不同工具,需要重新改寫程序。 ? ●開發、維護成本較高,需要具有一定專業水準的技術人員才能完成,發生一次升級,則所有客戶端的程序都需要改變。。 ●用戶群固定。由于程序需要安裝才可使用,因此不適合面向一些不可知的用戶,所以適用面窄,通常用于局域網中。

    (1)優點:

      ●分布性強,客戶端零維護。只要有網絡、瀏覽器,可以隨時隨地進行查詢、瀏覽等業務處理。?

      ●業務擴展簡單方便,通過增加網頁即可增加服務器功能。 ?

      ●維護簡單方便,只需要改變網頁,即可實現所有用戶的同步更新。?

      ●開發簡單,共享性強。

    (2)缺點:

      ●個性化特點明顯降低,無法實現具有個性化的功能要求。?

      ●在跨瀏覽器上,BS架構不盡如人意。

      ●客戶端服務器端的交互是請求-響應模式,通常動態刷新頁面,響應速度明顯降低(Ajax可以一定程度上解決這個問題)。無法實現分頁顯示,給數據庫訪問造成較大的壓力。?

      ●在速度和安全性上需要花費巨大的設計成本。

      ●功能弱化,難以實現傳統模式下的特殊功能要求。

    ?

    • UML中的主要關系:
  • 依賴:兩個事物之間的語義關系,其中一個事物發生變化,會影響另一個事物的語義。
  • 關聯:描述一組對象之間連接的結構關系。例如,聚合關系描述了整體和部分間的結構關系。
  • 泛化:一般化和特殊化的關系,描述的特殊元素的對象,可替換一般元素的對象。
  • 實現:類之間的語義關系,其中的一個類制定了由另一個類保障執行的契約。
  • ?

    • 類之間的關系:

    關聯、依賴、泛化、聚合、組合、流關系、實現關系。

    ?

    • XML的主要標準:
  • XML標準、W3C批準,穩定,完全可用于Web和工具開發。
  • XML名域標準、描述名域的句法,支持能識別名域的XML解析器。
  • DOM標準、為給結構化的數據編寫腳本提供標準。
  • XSL標準、轉換語言可用來轉換XML以滿足顯示要求。獨立用來進行多用途轉換。
  • XLL標準和XML指針語言標準。XLL提供類似于HTML的鏈接,但功能更強大。
  • ?

    • XML編程接口:

    DOM、SAX、JDOM、JAXP

    • SOASOA是一種應用程序體系結構,在這種體系結構中,所有功能都定義為獨立的服務,這些服務都帶有明確的可調用接口,能夠以定義好的順序調用這些服務來形成業務流程。

    ?

    • SOA層次、作用、關鍵技術:
  • 發現服務層主要用來幫助可護短應用程序程序解析遠程服務的位置。UDDI、DISCO技術。
  • 描述服務層:描述服務層位客戶端應用程序提供正確地與遠程服務交互的描述信息 WSDL XML Schema技術。
  • 消息格式層:用來保證客戶端應用程序和服務器端在格式上保持一致。SOAP REST技術。
  • 編碼格式層:為客戶端和服務端之間提供一個標準的獨立于平臺的數據交換編碼格式.XML技術。
  • 傳輸協議層:為客戶端和服務端之間提供兩者交互的網絡通訊協議,HTTP,SMTP。
  • ?

    • VDDI概念和作用:

    VDDI是一種用于描述、發現、集成、Web服務的技術,它是Web服務協議桟的一個重要部分。有專門的接口和代理平臺,包含UDDI數據模型、UDDI API,UDDI注冊服務。

    1、UDDI 指的是通用描述、發現與集成服務

    2、UDDI 是一種用于存儲有關 web services 的信息的目錄。

    3、UDDI 是一種由 WSDL 描述的 web services 界面的目錄。

    4、UDDI 經由 SOAP 進行通信

    5、UDDI 被構建入了微軟的 .NET 平臺

    作用:

    1、使得在成百萬當前在線的企業中發現正確的企業成為可能
    2、定義一旦首選的企業被發現后如何啟動商業
    3、擴展新客戶并增加對目前客戶的訪問4、擴展銷售并延伸市場范圍
    5、滿足用戶驅動的需要,為在全球 Internet 經濟中快速合作的促進來清除障礙。

    • SOAP

    SOAP簡單對象訪問協議是在分散或分布式的環境中交換結構化和類型信息的機制,是一個基于XML的協議。它包括四個部分:SOAP封裝(envelop),封裝定義了一個描述消息中的內容是什么,是誰發送的,誰應當接受并處理它以及如何處理它們的框架;SOAP編碼規則(encoding rules),用于表示應用程序需要使用的數據類型的實例; SOAP RPC表示(RPC representation),表示遠程過程調用和應答的協定;SOAP綁定(binding),使用底層協議交換信息。

    • 軟件質量屬性:

    性能、可靠性(容錯、健壯性)可用性、安全性、可修改性(可維護性、可拓展性、結構重組、可移植性、)、功能性、可變性、集成性。

    ?

    • 軟件評估方法:
  • 基于調查問卷或檢查表的評估方式。
  • 基于場景的評估方式。
  • 基于度量的評估方式。
  • ?

    • ATAM

    ????? ATAM是一種基于場景評估方式,英文全稱ArchitectureTradeOffAnalysisMethodATAM(架構權衡分析法)。

    ATAM 方法對軟件架構進行評估的目的主要是 根據系統質量屬性和業務需求評估決策結果,ATAM希望揭示出架構滿足質量目標,架構設計者能夠更清楚的認識到質量目標之間的聯系。即如何權衡多個目標。

    .ATAM的參與者:開發人員,領域專家,測試人員,客戶代表,用戶等

    1.描述方法

    ????? 像參與者介紹ATAM 方法,要預留一些答疑時間,以期能夠達到的效果

    ?2.描述業務動機

    ???? 從業務的角度介紹系統,包括系統最重要的功能,和一些相關限制

    ?3.描述架構

    ?????對架構進行架構進行介紹,包括技術約束,已經滿足質量屬性的方法,不要太長,但是要說清楚

    ?4.確定架構方法

    ?5.生成質量效用樹

    ????? 確定系統最重要的質量屬性目標,對這些質量屬性進行優先級排序

    ?6.分析架構方法

    ????? 可以對每一個架構分析,完成該方法相關質量屬性的初步分析,得到一個方法,或者風格的列表,(風險,敏感點,權衡點)

    ?7.討論場景

    ????? 場景在ATAM測試階段起主導作用,

    ?8.分析架構方法

    ?????? 架構設計把最高級的場景映射到描述的架構中,并對架構設計如果有助于實現該場景,做出解釋

    ?9.描述結果

    ????? 把ATAM中的各種信息進行歸納。反饋給相關的人員

    ?

    ?

    • SAAM

    特定目標:描述應用程序屬性的文檔,驗證基本的體系結構假設和原則

    評估技術:場景技術

    質量屬性:可修改性主要分析

    方法活動:輸入問題是問題描述,需求聲明,體系結構描述

    過程:場景開發,軟件體系結構描述、單個場景評估,場景交互,總體評估

    ?

    • 設計模式的分類:
  • 創建型模式:工廠方法模式、抽象工廠模式、原型模式、單例模式、建造者模式、
  • 結構型模式:適配器模式、橋接模式、組合模式、裝飾模式、外觀模式、享元模式
  • 行為型模式:職責鏈模式、命令模式、解釋器模式、迭代器模式、中介者模式、備忘錄模式、觀察者模式、狀態模式、策略模式、模版方法、訪問者模式
  • ?

    產品線是一個產品集合,這些產品共享一個公共的、可管理的特征集,這個特征集能滿足選定的市場或任務領域的特定要求。這些系統遵循一個預描述的方式,在公共的核心資源(core assets)基礎上開發的。

    總結

    以上是生活随笔為你收集整理的软件体系结构复习资料的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。