課程簡介
業(yè)務特征驅(qū)動架構(gòu)設計
目標收益
培訓對象
課程內(nèi)容
對于軟件系統(tǒng)來說,特別是大型軟件復雜系統(tǒng),系統(tǒng)架構(gòu)往往是決定軟件成敗的關(guān)鍵核心要素之一,很多時候,系統(tǒng)架構(gòu)不僅僅體現(xiàn)為軟件系統(tǒng)好不好用的,更多是決定軟件能不能用的問題。系統(tǒng)架構(gòu)很大程度上主宰了軟件系統(tǒng)的可用性、穩(wěn)定性、安全性、擴展性、易調(diào)試性等,而且很多時候完成相同的功能和bug維護,研發(fā)人員的工作量往往取決于軟件架構(gòu),是軟件系統(tǒng)人力成本的關(guān)鍵所在。
系統(tǒng)架構(gòu)是如此之重要,但是對于很多開發(fā)團隊或開發(fā)人員,有時對問題的業(yè)務特征不能深入理解或是清晰的表達,從而不能設計出合理的設計構(gòu)造去應對業(yè)務問題。本話題就嘗試從軟件系統(tǒng)架構(gòu)的設計構(gòu)造、和業(yè)務問題本質(zhì)復雜度適配關(guān)系等方面進行一些探討,希望能啟發(fā)聽眾思考,為自己團隊系統(tǒng)架構(gòu)設計提供一定的借鑒思路。
環(huán)節(jié)安排
一、理論分享
1、什么是架構(gòu)
2、問題的業(yè)務特征的抽象
3、設計構(gòu)造
模塊化
數(shù)據(jù)結(jié)構(gòu)和算法
并發(fā) VS 并行
通訊模型
存儲和處理
容錯
微服務
二、實戰(zhàn)部分
1、單節(jié)點架構(gòu)(利用意大利面構(gòu)建一個支撐架構(gòu),完成業(yè)務目標)
2、按照業(yè)務特征,設計成高擴展性架構(gòu)
3、總結(jié),從業(yè)務特征開始抽取,映射出匹配的設計構(gòu)造,然后識別技術(shù)難點, 最后總結(jié)架構(gòu)演進方向。