摘要:本文為系統架構設計師案例分析試題,圍繞電商會員與促銷管理系統升級項目展開,給出系統需求及質量屬性描述,包含兩大問題:一是完成系統質量屬性效用樹填充,二是對比面向對象與解釋器架構風格,分析其在特定維度的優劣并選擇適配風格。
閱讀以下關于軟件架構設計與評估的敘述,在答題紙上回答問題1和問題2。
案例場景
某電子商務公司擬升級其會員與促銷管理系統,向用戶提供個性化服務,提高用戶的粘性。在項目立項之初,公司領導層一致認為本次升級的主要目標是提升會員管理方式的靈活性,由于當前用戶規模不大,業務也相對簡單,系統性能方面不做過多考慮。
新系統除了保持現有的四級固定會員制度外,還需要根據用戶的消費金額、偏好、重復性等相關特征動態調整商品的折扣力度,并支持在特定的活動周期內主動篩選與活動主題高度相關的用戶集合,提供個性化的打折促銷活動。
在需求分析與架構設計階段,公司提出的需求和質量屬性描述如下:
(a)管理員能夠在頁面上靈活設置折扣力度規則和促銷活動邏輯,設置后即可生效;
(b)系統應該具備完整的安全防護措施,支持對惡意攻擊行為進行檢測與報警;
(c)在正常負載情況下,系統應在0.3秒內對用戶的界面操作請求進行響應;
(d)用戶名是系統唯一標識,要求以字母開頭,由數字和字母組合而成,長度不少于6個字符;
(e)在正常負載情況下,用戶支付商品費用后在3秒內確認訂單支付信息;
(f)系統主站點電力中斷后,應在5秒內將請求重定向到備用站點;
(g)系統支持橫向存儲擴展,要求在2人·天內完成所有的擴展與測試工作;
(h)系統宕機后,需要在10秒內感知錯誤,并自動啟動熱備份系統:
(I)系統需要內置接口函數,支持開發團隊進行功能調試與系統診斷;
(j)系統需要為所有的用戶操作行為進行詳細記錄,便于后期查閱與審計;
(k)支持對系統的外觀進行調整和配置,調整工作需要在4·人天內完成。
在對系統需求、質量屬性描述和架構特性進行分析的基礎上,系統架構師給出了兩種候選的架構設計方案,公司目前正在組織相關專家對系統架構進行評估。
[問題1](12分)
在架構評估過程中,質量屬性效用樹(utility tree)是對系統質量屬性進行識別和優先級排序的重要工具。請將合適的質量屬性名稱填入圖1-1中(1)、(2)空白處,并選擇題干描述的(a)~(k)填入(3)~(6)空白處,完成該系統的效用樹。
[問題2](13分)
針對該系統的功能,李工建議采用面向對象的架構風格,將折扣力度計算和用戶篩選分別封裝為獨立對象,通過對象調用實現對應的功能;王工則建議采用解釋器(interpreters)架構風格,將折扣力度計算和用戶篩選條件封裝為獨立的規則,通過解釋規則實現對應的功能。請針對系統的主要功能,從折扣規則的可修改性、個性化折扣定義靈活性和系統性能三個方面對這兩種架構風格進行比較與分析,并指出該系統更適合采用哪種架構風格。

參考答案:
[問題1]
(1)安全性
(2)可修改性
(3) (e)
(4)(j)
(5)(h)
(6) (k)
[問題2]
完整試題+答案解析可點擊下方藍字獲取!
軟考備考資料免費領取
去領取
專注在線職業教育25年