DDD原則模式和實踐 讀書筆記 二

提煉問題域

參與人員 - 業(yè)務(領域專家)和技術(開發(fā)人員)進行協(xié)作

  • 業(yè)務相關人員更關注某個功能的輸入和輸出,但是領域專家可以從政策,工作流程到領域棘手問題和特性都有深刻理解或者很強領悟的人,可以幫助開發(fā)團隊制作出滿足業(yè)務相關人員需要的有用模型。
  • 通過顯式的定義一些業(yè)務隱藏概念,可以讓領域專家更好的證明他對領域的理解是否正確。讓開發(fā)人員獲得領域知識。
  • 領域專家和開發(fā)人員要頻繁互動,以便讓領域專家能夠幫助分析,解決問題。

方法 - 知識提煉

  • 復雜問題域包含大量信息,有些可能與要解決的問題沒有關系。因此我們需要對復雜問題域中的信息進行提煉出相關信息。這個提煉的技術叫做知識提煉。
  • 模型是使用富含領域專有術語的通用語言進行描述的。這樣才能使得業(yè)務和開發(fā)可以對于軟件進行有效溝通。
  • 領域知識很重要。不論開發(fā)/業(yè)務在進行溝通的時候,需要有同樣的領域知識才行,這樣開發(fā)和業(yè)務 才能夠通過簡單的術語進行溝通,開發(fā)才能夠設計出滿足業(yè)務用例的模型。因此,需要更關注業(yè)務問題,而不是僅僅關注技術。
  • 業(yè)務員分析師可以幫助業(yè)務和開發(fā)進行有效溝通,但是,不能將業(yè)務和開發(fā)隔離開來,只通過業(yè)務分析師進行溝通
  • 持續(xù)的過程 - 隨著外部因素(新增需求,問題域的專業(yè)術語)和內部因素(更簡單的建立模型)的變化,模型也需要進行演化,因此,需要持續(xù)不斷的進行知識提煉

如何做 - 知識提煉的模式

  • 首先,專注在最有意思的對話上。一次討論需求列表多條,首先討論使得業(yè)務發(fā)生改變,系統(tǒng)取得關鍵成功的核心部分需求。
  • 其次,通過用例映射進行描繪,理解用戶想用系統(tǒng)做什么。抓住真實情況的過程圖,理解實際的工作流程。
  • 然后,提問:
  1. 系統(tǒng)需求來自何處?
  2. 系統(tǒng)如何為業(yè)務提供價值?
  3. 如果不構建這個系統(tǒng)會發(fā)生什么情況?
  • 然后,畫UML圖
  • 然后,細化領域中的概念 - CRC卡(類名 - 概念名,類的職責,相關聯(lián)的類)
    Tips:
  • 概念不清楚之前,不要命名,可以用一些難以理解的詞命名,比如銀河系,太陽,量子等。
  • 用BDD有助于UL(統(tǒng)一語言)的形成
  • 可以快速編碼,但必須在解決制定問題的特定上下文中進建立代碼模型
  • 一些邊緣情況,業(yè)務價值不高,可以不用建模,比如,5年才可能需要出一次的報表。

怎么做 - 查看現(xiàn)有模型

  • 找到用戶真正的需求。
  • 事件風暴 - 能夠揭示問題的子域和核心域。
  • 影響地圖
  • 理解現(xiàn)有的業(yè)務模型 - 《Business Model》
  1. 客戶細分 - 企業(yè)目標客戶的不同類型。
  2. 價值提供 - 一家企業(yè)為客戶提供的產品和服務。
  3. 渠道 - 企業(yè)將其此產品和服務交付給客戶的方式。
  4. 客戶關系 - 企業(yè)域每個客戶細分市場的關系類型。
  5. 營收來源 - 企業(yè)盈利的不同方式。
  6. 核心資源 - 企業(yè)最重要的資產。
  7. 核心活動 - 維持企業(yè)運轉的根本活動
  8. 核心合作伙伴 - 企業(yè)最重要的合作伙伴名單。
  9. 成本構建 - 企業(yè)要花費的成本。
  • 刻意發(fā)現(xiàn) - 要花時間去學習你不了解的問題域。由領域專家和業(yè)務相關人員來主導
  • 模型探討漩渦- 當在創(chuàng)建模型期間遇到問題時,使用
  1. 場景探討
  2. 建模
  3. 考研模型
  4. 收集于記錄
  5. 代碼探究
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • DDD已經火了很久,目前在很多項目上都有所應用,而這次是我第一次參加DDD相關的培訓,對我來說神秘的DDD一層一層...
    前端進城打工仔閱讀 2,718評論 2 11
  • 一、生命周期 一個事物一旦出生,就必然會長大,變異,一旦長大,就面臨著衰老,接下來就是消亡了,這個過程就稱為一個事...
    ZyBlog閱讀 2,851評論 1 11
  • 本文參加#感悟三下鄉(xiāng),青春筑夢行#活動,本人承諾,文章內容為原創(chuàng),且未在其他平臺發(fā)表過。 目 錄 摘要······...
    guoaiqiang閱讀 6,458評論 0 5
  • 游戲開始就在龍巢 。 10分鐘后, 我把火龍給甩掉了。我開始挖礦,挖著挖,挖出來個龍巢穴。一看!...
    吳洛天閱讀 1,094評論 4 1
  • 今年的新年,在大家都在刷著18歲的梗中開始萌芽,在保齡球館中大家一起倒計時的氛圍中正式啟動,2018,就這樣觸不及...
    Glyn閱讀 270評論 0 0

友情鏈接更多精彩內容