- 架構寶典
- 中生代技術社區(qū)
- 639字
- 2019-06-19 15:54:16
2.6 總結
綜上所述,軟件架構工作看似簡單,其實不然。系統化思考有助于理清軟件架構流程及從客戶價值出發(fā),識別用戶、設定SLA可以幫助軟件架構設計人員和研發(fā)人員避免在技術紛繁復雜的跋涉中迷失而陷入“自嗨”。架構是演進而來的,架構包含了一系列的決策和若干組成,進行架構設計時應該從全局視角看問題。
有人說,讀完本章還是不知道該如何做。那就再幫幫你:
●對于新項目,請利益相關者進行分析,了解大家的需求;對于老平臺,檢查利益相關者的需要,規(guī)劃后續(xù)發(fā)展方向。
●根據用戶、商戶的SLA(接入效率、接入成本、用戶體驗、穩(wěn)定性、應急處理能力等)度量產品,面向服務對象做規(guī)劃和設計。
●適當的時候考慮鏈路級業(yè)務監(jiān)控視圖。
●在系統鏈路調用中加上traceId這樣的標識。
●考慮平臺沉淀能力時,要考慮業(yè)務形態(tài)的擴展,確定投入產出比再進行擴展。
●在不同階段采用不同的架構,說不定在試水期這個階段選擇煙囪型架構是最合適的,因為(業(yè)務上)短期的價值是突出產品核心功能,并不求全,先度過生存期是第一要務。
●非功能要素不是加分項,卻可能是主體價值的體現。比如商戶需要一個批量導入接口,你提供了單筆處理接口,這是嚴重的信息不對稱導致的,批量導入接口看起來是為了提高處理性能,但是它其實也提高了業(yè)務處理的便利性,這也是功能特性的一部分。
●非功能要素依據重要程度也可能需要融入日常研發(fā)中。比如微軟的同仁分享的Office 的故事,Office 產品需要不斷校驗安裝包大小,因為功能增加而變成“巨無霸”可能會影響性能,所以就需要依據重要程度將這些非功能要素融入日常研發(fā)中。
推薦閱讀
- LabVIEW入門與實戰(zhàn)開發(fā)100例
- Power Up Your PowToon Studio Project
- Visual Basic程序設計(第3版):學習指導與練習
- Mastering Git
- Building Microservices with .NET Core
- Kubernetes進階實戰(zhàn)
- Android Development Tools for Eclipse
- Android系統下Java編程詳解
- 大數據時代的企業(yè)升級之道(全3冊)
- Neo4j 3.x入門經典
- Splunk Essentials
- Improving your Penetration Testing Skills
- VMware vRealize Orchestrator Essentials
- 瘋狂Ajax講義(第3版)
- JSP程序設計與案例教程