一、系統架構的質量屬性
1、質量屬性:效能、安全性、可用性、可修改性、可測試性。
2、架構風險:系統架構風險是指架構設計中潛在的,存在問題的架構決策所帶來的隱患。
3、敏感點:敏感點是指為了實現某種特定的質量屬性,一個或多個系統元件所具有的特性。
4、權衡點:權衡點是指多個質量屬性,並對多個質量屬性來說都是敏感點的系統屬性。
二、軟體系統的可靠性
1、定義:軟體系統在規定的時間內及規定的環境條件下,完成規定功能的能力,就是系統無故障執行的機率。
2、特性:成熟性、容錯性、易恢復性和可靠性的依從性。
3、技術:冗餘技術、軟體容錯技術、雙機容錯技術、叢集技術。
三、軟體系統的儲存架構
1、檔案系統:針對特定應用系統設計,難度較小;資料冗餘較大,可能在多個檔案中複製相同的資料屬性;以應用系統為中心組織、管理資料;符合特定應用系統要求的檔案資料很難在不同的系統應用系統之間共享。
2、關係型資料庫:資料結構需要符合關係模式,設計難度較大;遵守資料庫正規化,資料冗餘較少;以資料庫為中心組織,管理資料;資料庫獨立於應用系統,很容易在不同的應用系統之間共享資料。
3、記憶體資料庫:主要資料模型是Key-Value模式(鍵值對模式);記憶體直接讀寫效能相對較高;基於記憶體儲存,儲存容量受限;恢復機制複雜,可靠性較低。
四、軟體系統的架構風格
1、管道過濾器風格:資料處理方式是資料驅動機制,處理流程事先確定,互動性差;系統擴充套件性是資料與處理緊密關聯,調整處理流程需要系統重新啟動;處理效能:需要資料格式轉換,效能降低、支援過濾器併發呼叫,效能提高。
2、倉庫風格:資料處理方式是資料儲存在中心倉庫,處理流程獨立,支援互動處理;系統擴充套件性是資料與處理解耦,可動態新增刪除處理元件;處理效能:資料與處理分離,需要載入資料,效能低,資料處理元件之間一般無依賴關係,可併發呼叫,提高效能。