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