03《軟體構架實踐第二版》閱讀筆記之三

2022-07-31 17:42:13 字數 936 閱讀 1003

在本書的第一部分,我們學習了預想構架,為分析軟體架構奠定了基礎,陳述了當設計師開始構建系統時的各種影響因素,並指出了特定的質量屬性要求通常產生於組織的業務目標。而本書的第二部分的重點就是設計師如何建立構架。

首先**的是可能適合構架的不同型別的質量屬性。在構架商業週期部分,已經學習到商業目的決定了系統構架必須滿足的一些質量屬性。這些質量屬性是高於對系統功能(即對系統能力、服務和行為)的基本要求的。因為功能性和質量屬性之間是正交關係,()功能性指系統能夠完成所期望的工作的能力)所以功能選擇將會規定安全性、效能、可用性或易用性的級別。而對於每個質量屬性,都可以獨立地選擇所期望的級別,但是並不是說可以用任何功能實現任何質量屬性的所有級別。因為處理複雜的圖形影象或對巨大的資料庫進行排序在本質上都是非常複雜的,所以不可能會有非常快速的效能。但卻可以做到對所選擇的任何功能,設計師都將確定每個質量屬性的相對級別。在大量可能的結構中,可以通過使用任意乙個結構來實現功能性。但是在實際上,如果功能性是系統的唯一需求的話,整個系統就可以是乙個根本沒有內部結構的單一模組。相反,系統被分解成多個模組,以使其變得可理解,並支援各種其他目的。所以,功能性在很大程度上是獨立於結構的。當其他質量屬性很重要時,軟體構架會限制各結構的功能分配。

沒有任何乙個質量屬性是完全依賴於設計的,它也不完全依賴於實現或部署。滿意的結果就是使總體藍圖(構架)以及細節(實現)正確。易用性涉及構架和非構架兩個方面。例如,非構架方面包括使使用者介面清晰、易用。但是設計細節方面的問題,都是不需要再構架層次上解決的問題。然而,系統是否能為使用者提供取消操作、撤銷操作或重用以前的資料的能力則屬於構架方面的問題。可修改性由劃分功能的方式和模組中的編碼技巧(非構架方面的)決定。系統效能則是乙個既依賴於構架又不完全依賴於構架的質量屬性。

所以,在構架設計過程中應考慮到這些質量屬性,並在構架層次上進行相應的評估。而對我們所關心的許多質量屬性的實現而言,構架有著非常重要的意義。構架提供了實現質量屬性的基礎,單也必須要關注細節實現,所以構架並不能獨自實現質量屬性。

軟體構架實踐 閱讀筆記03

寒假生活 讀 軟體構架實踐 7 9章後感 在了解了構架的商業方面 構架檢視和結構 質量屬性等知識,這部分內容旨在構架的設計以及當構架逐漸形成時應該做什麼。軟體架構的設計是指通過一系列的設計活動,獲得滿足系統功能性需求 簡稱fr 並且符合一定非功能性需求 簡稱nfr,與質量屬性有相似涵義 約束的軟體架...

《軟體構架實踐》閱讀筆記03

生命期中的構架,把構架作為軟體開發過程基礎的任何組織都需要理解構架在其生命期中的位置。在生命期莫行政,構架設計就是從初步的需求分析開始一步一步的進行迭代,很顯然,在了解系統需求之前,不能開始設計構架。另一方面,剛開始進行設計時並不需要手機太多需求,為了確定構架驅動因素,需要識別優先順序最高的業務目標...

《軟體架構實踐第二版》閱讀筆記07

最後一本有關軟體架構的著作是群裡的 軟體架構實踐第二版 掃瞄版,閱讀後總結記錄了我個人認為書中的一些重點 1 架構模式 分層 單一職責,mvc分層,控制層 服務層 資料層 分割 不同功能與服務分割 分布式 服務呼叫需要通過網路,帶來了網路問題 分布式資料一致性問題 集群,快取,非同步,冗餘 冷備份,...