Please enable JavaScript.
Coggle requires JavaScript to display documents.
領域驅動設計 - Coggle Diagram
領域驅動設計
III.透過重構來加深理解
8.突破
9.將隱式概念轉變為顯示概念
10.柔性設計
11.應用分析模式
12.將設計模式應用於模型
13.透過重構得到更深層的理解
I.運用領域模型
1.消化知識
深層模型
知識豐富的設計
反覆研究所有規則
解決規則之間的矛盾
用常識彌補規則的不足
規則的澄清和充實
刪除無用規則
持續學習
增進技術知識
培養一般的領域建模技巧
知識消化
活動
開發人員
領域專家
資訊
來源
現有系統的使用者經驗
相關遺留系統經驗
同領域的其他專案經驗
領域專家頭腦中的知識
形式
專案文件
業務文件
大量討論
早期版本
prototype後經驗回饋
有效建模的要素
2.建立了一種以模型為基礎的語言
1.模型與實作的綁定
3.開發了一個蘊含豐富知識的模型
物件
行為
強制性規則
模型
data schema
包含各類型知識
解決複雜問題不可或缺的一部分
提煉模型
添加新概念
移除不使用或不重要的概念
5.腦力激盪和實驗
2.交流與語言的使用
模式:ubiquitous language
然後將他分成小段
再將他們打亂重新排序
首先寫下一個句子
彷彿是巧合一般
短句得順序
對意思完全沒有影響
大聲地建模
一個團隊,一種語言
文件和圖
書面設計文件
完全依賴可執行程式碼的情況
解釋性模型
3.綁定模型與實作
模型在領域驅動設計中的作用
名詞
Model
一種簡化。對現實的解釋:把與解決問題密切相關的方面抽象出來,忽略無關的細節。
選擇性的簡化
有意識的結構化
作用
和設計的核心相互影響
團隊所有成員使用的通用語言和中樞
借助自然語言對模型本身進行精化(refining)
濃縮的知識
認同
領域知識的組織方式
重要元素的區分方式
建模
回饋
來自軟體早期版本的經驗
Domain
使用者應用軟體的區域就是軟體的領域(Domain)
開發人員可以採用系統性的思考方法來理解領域
0.軟體的核心
解決領域問題的能力
要求高水平技術人員的共同努力
開發人員
須鑽研領域以獲取業務知識
磨練建模技巧
精通領域設計
II.模型驅動設計的建構區塊
4.分離領域
5.軟體中所表示的模型
6.領域物件的生命週期
7.使用語言:一個延伸的範例
IV.戰略設計
14.保持模型的玩整性
15.精煉
16.大型架構
17.領域驅動設計的綜合運用
模式風格和格式