2014年系統架構師軟考案例分析考點
- 2019 年 10 月 26 日
- 筆記
1.解釋什麼是 MVC 架構風格以及其中的組件交互關係
MVC 架構風格:用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯 聚集到一個部件裏面,在改進和個性化定製界面及用戶交互的同時,不需要重新編寫業務邏 輯。 MVC 架構將整個軟件系統劃分為模型、視圖和控制器 3 個部分。模型負責維護並保存 具有持久性的業務數據,實現業務處理功能,並將業務數據的變化情況及時通知視圖;視圖 負責呈現模型中包含的業務數據,響應模型變化通知,更新呈現形式,並向控制器傳遞用戶 的界面動作;控制器負責將用戶的界面動作映射為模型中的業務處理功能並實際調用之,然 後根據模型返回的業務處理結果選擇新的視圖。 在本題中: M:監控組件,V:控制終端, C:管理模塊。
2.數據流圖(Data Flow Diagram)的基本元素及其作用
- 2.1 數據流:數據流是數據在系統內傳播的路徑,因此由一組成分固定的數據組成。
- 2.2 外部實體:代表系統之外的實體,可以是人、物或其他軟件系統。
- 2.3 加工(處理):加工是對數據進行處理的單元,它接收一定的數據輸入,對其進行處理,併產生輸出。
- 2.4 數據存儲:表示信息的靜態存儲,可以是文件、文件的一部分、數據庫的元素等。
3.獲取構件的方法
- (1)從現有構件中獲得符合要求的構件,直接使用或作適應性(flexibility)修改,得到可重用的構件;
- (2)通過遺留工程(legacy engineering),將具有潛在重用價值的構件提取出來,得 到可重用的構件;
- (3)從市場上購買現成的商業構件,即 COTS(Commercial Off-The-Shell)構件;
- (4)開發新的符合要求的構件。
4.開發構件的策略
- 4.1 分區:指的是將問題情景的空間分割成幾乎可以獨立研究的部分;
- 4.2 抽象:是對給定實踐內執行指定計算的軟/硬件單元的一種抽象;
- 4.3 分割:是將結構引入構件的行為,支持對行為性質進行時序推理。
5.主流構件標準
- 5.1 OMG 的 COBRA(分佈計算技術)
- 5.2 Microsoft 的COM/DCOM/COM
- 5.3 Sun 的 EJB/J2EE
6.軟件的質量屬性
質量屬性效用包括:性能、安全性、可用性、可修改性。
7.系統的架構風險、敏感點和權衡點
- 7.1 風險點:架構設計中潛在的、存在問題的架構決策所帶來的隱患
- 7.2 敏感點:為了實現某種特定的質量屬性,一個或多個組件所具有的特徵
- 7.3 權衡點:影響多個質量屬性的特徵,是多個質量屬性的敏感點
8.Memcached 相比數據庫查詢緩存
- 8.1 緩存架構:數據庫緩存只是將查詢結果進行緩存,適用面很窄,而 Memcached 是將數據庫中的表進行緩存,對於在這些表之上的操作均可適用。
- 8.2 緩存有效性:Memcached 緩存時效較長,只要未更新,就屬於有效狀態,而數據查詢緩存時效較短(具體時效與配置有關),所以在此方面 Memcached 有優勢。
- 8.3 緩存數據類型:Memcached 緩存數據為表級,而數據庫查詢緩存為元組級。