《2018年DDD驅動復雜業務軟件架構的演進.pdf》由會員分享,可在線閱讀,更多相關《2018年DDD驅動復雜業務軟件架構的演進.pdf(33頁珍藏版)》請在三個皮匠報告上搜索。
1、化繁為簡DDD驅動復雜業務軟件架構的演進CONTENTSCONTENTCONTENT產品介紹業務挑戰及架構目標架構演進總結展望CONTENTSCONTENTCONTENT產品介紹業務挑戰及架構目標架構演進總結展望全過程、全流程、一站式平臺全過程、全流程、一站式平臺產品特點產品特點業務復雜多專業領域BIM全過程流轉人機交互頻繁產品規模大350萬+代碼行150+人團隊3+技術平臺產品特點CONTENTSCONTENTCONTENT產品介紹業務挑戰及架構目標架構演進總結展望業務挑戰與架構目標業務挑戰與架構目標建筑造型多樣化,業務模型復雜度越來越高業務挑戰新業務基于現有業務進行擴展,而應用場景及性能要
2、求不同,既復用又獨立;產品云+端轉型,核心業務逐步實現服務化,不同業務演化路徑不同簡化業務模型復雜度架構演進目標不同業務間解耦各業務獨立演化單體架構共享模型模糊分層應對復雜業務挑戰的思考應對復雜業務挑戰的思考關注點分離抽象建模應對復雜業務挑戰應對復雜業務挑戰的的策略策略領域驅動設計1 12 23 3領域拆分架構分層構建領域模型CONTENTSCONTENTCONTENT產品介紹業務挑戰及架構目標架構演進總結展望架構演進架構演進1 12 23 3領域拆分架構分層構建領域模型業務業務分析分析2134分析業務流程提煉業務規則分析業務用例識別業務對象子子域拆分域拆分 業務流程 專業知識建模子域計算子域
3、登錄與授權子域報表子域指標子域做法子域限界上下文拆分限界上下文拆分 業務用例 功能語義相關性 技術應用 團隊規模建模子域構件模型上下文模型編輯上下文計算子域報表子域模型轉換子域做法子域通用子域匯總上下文指標管理上下文三維模型轉換上下文CAD翻模上下文模型檢查上下文平法模型上下文截面鋼筋模型上下文土建計算上下文鋼筋計算上下文土建計算設置上下文鋼筋計算設置上下文做法上下文登錄與授權上下文指標定制上下文限界上下文協作關系限界上下文協作關系報表子域模型轉換子域CAD翻模上下文三維模型轉換上下文DDACL/CACL/C建模子域模型編輯上下文構件模型上下文DUUUDSC平法模型上下文截面鋼筋模型上下文DD
4、CCSSACL/C鋼筋計算上下文計算子域土建計算設置上下文鋼筋計算設置上下文UUDDCSCS土建計算上下文UDSC模型檢查上下文 識別真實依賴關系 確定上下文物理邊界 業務演化的趨勢限界上下文解耦限界上下文解耦-統一接口設計統一接口設計統一接口模型檢查上下文CAD翻模上下文鋼筋計算上下文截面鋼筋模型上下文Facade模式解決:接口不規范,多套接口 外部接口深入到上游的業務邏輯限界上下文解耦限界上下文解耦-發布訂閱機制發布訂閱機制鋼筋模型上下文建模模型上下文調度中心平法模型上下文發布解決:上游模型變化,下游模型聯動發布-訂閱機制架構演進架構演進1 12 23 3領域拆分架構分層構建領域模型架構分
5、層架構分層持久化層領域層CAD圖紙管理建模UI通用UI組件幾何算法通用框架機制通用算法CAD/BIM UI圖元繪制顯示層應用層CAD識別BIM模型轉換模型編輯批量操作CAD模型BIM模型模型數據庫gcad文件gfc文件數據庫算量模型持久化CAD模型持久化BIM模型持久化.構件模型.平法模型鋼筋模型模型轉換案例案例1 1:CADCAD翻模領域拆分及分層設計翻模領域拆分及分層設計 隔離功能交互與業務邏輯 識別算法獨立,引入人工智能算法持久化層領域層CAD圖紙管理CAD翻模UI顯示層應用層CAD圖層管理CAD識別命令CAD模型CAD模型持久化CAD識別算法模型轉換CAD識別數據模型構件模型CAD翻模
6、服務架構演進架構演進1 12 23 3領域拆分架構分層構建領域模型案例案例2 2:截面鋼筋模型截面鋼筋模型如何構建截面鋼筋模型?理解業務需求理解業務需求 截面鋼筋模型按照行業鋼筋平法規則,基于構件剖面描述鋼筋布筋的模型 基于業務用例識別業務對象 截面多邊形 箍筋 縱筋 彎鉤 端頭基于業務對象的鋼筋模型基于業務對象的鋼筋模型 不同構件歸納抽象 分析業務對象及其關系 識別聚合、實體、值對象柱截面鋼筋模型壓頂截面鋼筋模型人防截面鋼筋模型截面鋼筋截面多邊形點筋截面鋼筋規格端頭彎鉤規格線筋位置位置標高標注.重新定義邊界后的截面鋼筋模型重新定義邊界后的截面鋼筋模型檢視模型中聚合、實體、值對象的關系檢視模型
7、邊界柱截面鋼筋模型壓頂截面鋼筋模型人防截面鋼筋模型截面鋼筋截面多邊形點筋截面鋼筋規格端頭彎鉤規格線筋位置位置標高標注.提煉提煉規則后的鋼筋模型規則后的鋼筋模型顯式業務規則:保護層厚度=截面邊線到鋼筋的距離隱含業務規則:箍筋與縱筋位置始終相切柱截面鋼筋模型壓頂截面鋼筋模型人防截面鋼筋模型截面鋼筋截面點筋截面鋼筋保護層厚度規格端頭彎鉤規格線筋位置參考線參考點位置.截面鋼筋模型總結截面鋼筋模型總結7種構件類型的布筋描述建模為同一種模型,增強了模型的表達能力,提高了可擴展性UI邊界模型邊界通過提煉隱含業務規則完善模型CONTENTSCONTENTCONTENT產品介紹業務挑戰及架構目標架構演進總結展望
8、DDDDDD在研發中落地在研發中落地統一語言需求實例化持續集成接口測試DDDDDD落地與研發融合落地與研發融合架構架構演進驅動產品與研發演進驅動產品與研發 降低了整體業務的耦合,各業務獨立演化;簡化了集成關系,降低了集成成本,實現各業務的獨立發布;驅動組織按領域邊界拆分了79個特性團隊,實現并行研發;限界上下文的拆分+領域模型+接口設計/測試 支撐產品轉型,快速實現業務服務化;提升業務邏輯的可復用性,新業務快速擴展 人工智能技術低成本快速應用;架構分層,隔離UI/業務/技術感悟感悟領域模型是表達業務功能背后業務本質的模型,在建立領域模型的過程中領域專家與統一語言不可或缺領域建模是一個持續迭代精化的過程控制業務復雜度,技術才能低成本應用并深化,而DDD是一種控制復雜度的有效方法下一代計量架構下一代計量架構云+端企業服務(SaaS服務)智能化1 12 23 3THANK YOUTHANK YOU