軟體體系結構的知識提綱
1 軟體體系結構的描述語言:adl(architecture description language)
2 軟體體系結構的表示與構造:
表示:用軟體體系結構描述語言對體系結構進行說明的結果稱為軟體體系結構的表示。
構造:描述軟體體系結構的過程,稱為軟體體系結構的構造。
booch從uml的角度給出一種由設計檢視、過程檢視、實現檢視、部署檢視、用例檢視構成的描述模型。
ieee p1471:軟體體系結構描述框架標準。
rational ads(architecture description specification):從資產重組的角度提出的軟體體系結構的描述規格說明框架。
3 軟體體系結構的分析、設計與驗證
軟體體系結構本身需要分析與測試,以確定這樣的體系結構是否滿足需求。
分析包括:
§ 結構分析
§ 功能分析
§ 非功能分析
o 定量分析,推斷分析
o 單個體繫結構分析,體系結構比較分析
o saam(基於場景的分析),atam(多質量情況下的體系結構質量模型、分析與權衡)
設計包括:
§ 過程驅動 (使用範圍廣,易於裁剪,通用性與實踐性強)
o 物件導向方法,與ooa/ood類似
o 「4+1」模型方法
o 基於場景的迭代方法
§ 問題列表驅動(基本思想:列舉設計空間,並設計列舉維的相關性,以此選擇體系結構的風格,適用於特定領域,靜態,可以實現量化體系結構設計空間。如allen認為使用者介面類的量化設計空間有19個功能維,26個結構維,622條設計規則。)
設計研究的重點:模式(風格)。 模式:在本質上反映了一些特定的元素、按照特定的方式組成乙個特定的結構,該結構應有利於特定上下文環境(context)下的特定問題的解決。
分為兩類:
§ 固定術語類:如管道過濾器、客戶/伺服器、物件導向、黑板、分層、對等模式、狀態轉換。
測試:著重於**系統模型,解決體系結構層的問題。
§ 單元
§ 子系統
§ 整合
§ 驗收
4 基於體系結構的軟體開發方法問題定義
軟體需求 (抽象)軟體體系結構 軟體設計 軟體實現
5 特定領域的體系結構 dssa(domain specific software architecture)
鑑於特定領域的應用具有相似的特徵,因而經過嚴格的設計,並將直覺的成分降到最低,可以有效地實現重用,並可借鑑領域中已經成熟的體系結構。常見的dssa有:case體系結構、cad軟體的參考模型、資訊系統的參考體系結構、網路體系結構、機場資訊系統的體系結構和資訊處理dssa。
6 體系結構的支援工具
7 軟體產品線體系結構
軟體體系結構可以用於大型的軟體系統的開發,同時可以用於軟體產品線的開發。這種開發,基於同乙個軟體體系結構,可以建立具有不同功能的都個系統,在軟體產品族之間共享體系結構和一組可重用的構件。
8 軟體體系結構的評價方法
§ architecture tradeoff analysis method,atam
§ software architecture analysis method,saam
§ active reviews for intermedia design,arid
軟體體系結構的複習提綱
1 軟體體系結構定義 作用 意義 軟體體系結構定義 軟體體系結構是具有一定形式的結構化元素,即構件的集合,包括處理構件 資料構件和連線構件。處理構件負責對資料進行加工,資料構件是被加工的資訊,連線構件把體系結構的不同部分組合連線起來。體系結構意義 體系結構是風險承擔者 又稱為涉眾,stakehold...
軟體體系結構 軟體體系結構概論
開學到現在我已經上了三節軟體體系結構的課程,現在我想把自己學到的整理歸納一下。此篇隨筆對應於教材軟體體系結構概論一章。首先談一談我剛接觸這門課程是的感受。那就是 我靠 軟體也會有體系結構?以前只學過資料結構 演算法 基本的程式語言,覺得程式設計無非就是使用者給我需求,我便按照需求來程式設計序就好,從...
軟體體系結構
軟體體系結構是具有一定形式的結構化元素,即構件的集合,包括處理構件 資料構建 連線構建。處理構建 負責對資料進行加工 資料構建 是被加工的資訊 連線構建 把體系結構的不同部分組合連線起來 1 作為通訊的手段 2 代表了早期的設計決策結果 3 高層次的設計復用手段 1 軟體體系結構是風險承擔者 又稱涉...