在系統設計進行模組切分的時候,需要關注以下幾個問題。
1,系統的骨架化
對於乙個龐大的系統,如果設計規格不加以控制,則會給將來的整合和維護帶來極大的
困難。但在這個例子中,僅僅使用了 6 個模組型別(構件、子系統控制器、時間同步器、周
期時序器、事件處理器以及**),就可以對這麼大的系統進行完整的描述。這就使得架構
很容易建立、理解、整合、發展和修改。
更重要的是,如果採用一組標準模式,我們就可以建立乙個骨架系統,為此建立出規格
表、**模版和描述這些模式的示例程式。這樣一來,就允許一致性分析。
架構師還可以堅持設計和開發人員僅僅使用所提供的構建快,這雖然聽起來有些苛刻,
但這樣一來,就可以把設計人員從系統總的功能實現的關注中解脫出來,構件的標準化必然
帶來可整合性的提高。
2,功能分配給構件的原則
把功能分配給構件的時候,需要考慮如下原則:
實際物理系統的各個部分應該與軟體系統很好的對應,這為我們提供了真實世界的
概念模型。通過對各個分系統互動的理解,也可以幫助我們更好的理解軟體各部分
互動的方式。這對於使用者和評審也很有幫助。
要理解未來分系統更新換代的規律,比如整體換裝裝置需要做哪些變化?這種理解
可以幫助我們設計模組的範圍,以使將來系統公升級時的更改區域性化。
努力降低系統介面的數量和規模,這來自於各部分更強的功能內聚,把最大的介面
放在各部分之內而不是各部分之間。
這裡討論的假想案例,旨在說明當系統對效能、可靠性與可修改性提出比較苛刻的要求
的時候,我們如何能合理設計架構,使專案能夠在節約成本的情況下實現這些質量屬性。成
本的節約可能表現在現場安裝小組只有以前所要求的一半,因為他們可以更容易的查詢和糾
正問題。
設計方案通過以下方式實現了這些質量屬性:
限制結構化模型架構模式中的模組型別配備的數量,限制模組型別之間的通訊,根據飛
機預期變更的資訊分解功能。從度量的角度,主要表現在現場測試描述(即測試問題)的大
幅度減少,開發人員還發現,採用這種方法更容易糾正問題。
幾類系統需要關注的質量屬性
前一篇文章,總結了三高系統所關注的一些重要質量屬性。就想到,其實不同型別的系統對質量屬性也往往要求大不一樣。下圖是軟體系統架構設計時,需要關注的一些軟體質量屬性。開發期質量屬性,是開發人員或後期的維護人員比較關心的,這些質量的好壞,往往會影響到開發和維護成本。而執行期質量屬性,則是終端使用者比較關心...
建立索引所需要關注的問題
1 表的主鍵 外來鍵必須有索引 2 資料量超過300的表應該有索引 3 經常與其他表進行連線的表,在連線欄位上應該建立索引 4 經常出現在where子句中的字段,特別是大表的字段,應該建立索引 5 索引應該建在選擇性高的字段上 6 索引應該建在小字段上,對於大的文字字段甚至超長字段,不要建索引 7 ...
MySQL使用需要關注編碼問題
mysql以前沒怎麼使用過,當然mysql跟oracle和mssql對比來說,效能上還是會有所差異的,但是不怎麼明顯,一般來說使用mysql作為業務系統資料庫時完全夠用,而且由於mysql開源,相信以後會變得越來越強大。由於版權問題費用問題,使得mysql更受歡迎,但是在使用過程發現mysql對欄位...