領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)中的發(fā)散與聚合

記一次事件工作坊的經(jīng)歷。

當(dāng)你回顧你的經(jīng)歷時(shí)眼耀,你正在理解和消化你的初衷英支。

項(xiàng)目上一次偶然的機(jī)會(huì),接觸到了領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)哮伟。一開(kāi)始接觸新的概念時(shí)干花,總感覺(jué)它高深莫測(cè),不知道如何運(yùn)用楞黄。后來(lái)才明白池凄,當(dāng)你想要解決問(wèn)題而使用這個(gè)工具時(shí),你就開(kāi)始了對(duì)他理解的過(guò)程鬼廓。

這次工作坊中其實(shí)我主要扮演的是一個(gè)領(lǐng)域?qū)<液陀^察者的身份肿仑。工作坊的過(guò)程主要分成了三個(gè)部分,電梯演講碎税,事件風(fēng)暴和領(lǐng)域模型劃分尤慰。下面我將嘗試通過(guò)我對(duì)這三個(gè)部分的體驗(yàn)感受來(lái)描述我對(duì)于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的理解。

電梯演講

為了目標(biāo)群體雷蹂,他們的訴求或痛點(diǎn)伟端,這個(gè)產(chǎn)品名稱,是一個(gè)產(chǎn)品特征匪煌,它可以不可抗拒的優(yōu)點(diǎn)荔泳,而不像其他競(jìng)品蕉饼,我們的產(chǎn)品核心的差異化競(jìng)爭(zhēng)力。

這是業(yè)務(wù)的第一次發(fā)散玛歌。當(dāng)一個(gè)領(lǐng)域?qū)<以谥v一個(gè)業(yè)務(wù)愿景的時(shí)候昧港,是非常發(fā)散的。他會(huì)開(kāi)始介紹他對(duì)于業(yè)務(wù)的各種理解和暢想支子,以及他期望達(dá)到的一個(gè)長(zhǎng)遠(yuǎn)目標(biāo)创肥。而電梯演講的目的就是對(duì)一個(gè)復(fù)雜的發(fā)散業(yè)務(wù)做第一次的聚合。它的目標(biāo)是把一個(gè)龐大而又模糊的業(yè)務(wù)目標(biāo)值朋,抽象成一個(gè)直觀的產(chǎn)品目標(biāo)叹侄。然后將項(xiàng)目成員的注意力集中在某一領(lǐng)域,而該領(lǐng)域也將成為你產(chǎn)品所要滿足的業(yè)務(wù)核心領(lǐng)域昨登。

因此趾代,在一個(gè)復(fù)雜的業(yè)務(wù)體系中,解構(gòu)出我們優(yōu)先需要解決的痛點(diǎn)和問(wèn)題丰辣,這是關(guān)鍵的第一步撒强。

很多時(shí)候,業(yè)務(wù)分析師在跟客戶聊了很久后笙什,發(fā)現(xiàn)他依然難以邁出第一步飘哨。這背后的原因就是他沒(méi)有能夠很好的將客戶發(fā)散的思維聚合成一個(gè)可達(dá)到的明確目標(biāo)∷銎荆客戶的想法是非逞柯。活躍,發(fā)散和無(wú)序的统屈,當(dāng)他在描述業(yè)務(wù)時(shí)胚吁,需要的是我們快速理解和抽象思維的能力,從而在一個(gè)自然語(yǔ)言的業(yè)務(wù)描述中迅速解構(gòu)出的核心訴求和痛點(diǎn)愁憔,并以此基礎(chǔ)出發(fā)囤采,歸納產(chǎn)品的核心目標(biāo)。這也就是我們常說(shuō)的MVP(Minimum Viable Product)惩淳。我們的產(chǎn)品不能解決他的所有問(wèn)題蕉毯,但一定會(huì)解決他現(xiàn)實(shí)業(yè)務(wù)的核心問(wèn)題。而什么是業(yè)務(wù)核心思犁,其實(shí)是一個(gè)服務(wù)商需要去幫助領(lǐng)域?qū)<胰ヅ袛嗪头治龅摹?/p>

這個(gè)流程的目的就是為了快速的統(tǒng)一大家的目標(biāo)和愿景代虾,能夠在接下來(lái)的發(fā)散中很好的去限定自己的業(yè)務(wù)范圍,以便將產(chǎn)品目標(biāo)拆解成事件激蹲。

事件風(fēng)暴

使?事件?風(fēng)暴梳理業(yè)務(wù)流程棉磨,建?領(lǐng)域模型,劃分邊界学辱。領(lǐng)域事件一定是能夠解決業(yè)務(wù)痛點(diǎn)乘瓤,體現(xiàn)產(chǎn)品目標(biāo)和價(jià)值的事件环形。

當(dāng)大家構(gòu)建好一個(gè)統(tǒng)一的產(chǎn)品愿景和目標(biāo)時(shí),接下來(lái)就是識(shí)別實(shí)現(xiàn)目標(biāo)過(guò)程中所發(fā)生的事件了衙傀。這時(shí)候很多人會(huì)認(rèn)為抬吟,在統(tǒng)一的產(chǎn)品目標(biāo)下(即使是非常直觀的業(yè)務(wù)描述),項(xiàng)目成員會(huì)天然的以統(tǒng)一的業(yè)務(wù)概念去理解產(chǎn)品目標(biāo)所包含的事件统抬。這是一個(gè)誤區(qū)火本。事件風(fēng)暴的其中一個(gè)目的就是在產(chǎn)品目標(biāo)的范圍內(nèi),廣泛的讓團(tuán)隊(duì)成員發(fā)散的識(shí)別業(yè)務(wù)事件聪建,然后通過(guò)和領(lǐng)域?qū)<业姆磸?fù)確認(rèn)钙畔,來(lái)確保成員對(duì)產(chǎn)品目標(biāo)和業(yè)務(wù)事件的理解在同一個(gè)層面上。這個(gè)過(guò)程中金麸,非常忌諱兩件事:

1. 在識(shí)別事件前就對(duì)事件做了預(yù)判擎析;2. 識(shí)別出的事件不能映射開(kāi)始設(shè)定的產(chǎn)品目標(biāo)。

第一件事造成的后果是挥下,在成員還沒(méi)分解出業(yè)務(wù)事件前揍魂,就對(duì)什么是事件做了限定和規(guī)范。這很容易讓大家失去了再一次對(duì)業(yè)務(wù)概念統(tǒng)一語(yǔ)言的機(jī)會(huì)见秽。成員對(duì)業(yè)務(wù)事件不斷的拆解和發(fā)散,才能再次檢驗(yàn)成員是否對(duì)業(yè)務(wù)概念的理解在同一層面上讨盒。

第二件事造成的后果是解取,在原本已經(jīng)聚合的領(lǐng)域中,再次發(fā)散出更多的領(lǐng)域返顺。這不僅推翻了電梯演講的結(jié)果禀苦,同時(shí)也會(huì)把項(xiàng)目成員再次拉回到業(yè)務(wù)領(lǐng)域的定位上。一方面會(huì)花費(fèi)太多時(shí)間識(shí)別不在產(chǎn)品目標(biāo)內(nèi)的事件遂鹊,另一方面也會(huì)影響大家對(duì)產(chǎn)品目標(biāo)的理解和領(lǐng)域?qū)<业呐袛嗾穹ΑJ录L(fēng)暴中,避免再次引入與產(chǎn)品目標(biāo)無(wú)關(guān)的上下文秉扑,可以很好的將成員限定在一個(gè)高效慧邮,直觀,清晰的愿景中舟陆,并以此愿景對(duì)事件進(jìn)行有效梳理误澳。


發(fā)散是事件風(fēng)暴的開(kāi)始,但絕不是事件風(fēng)暴的目標(biāo)秦躯。真正的目標(biāo)是在有限的時(shí)間內(nèi)忆谓,聚合出領(lǐng)域事件。那么什么是領(lǐng)域事件踱承?這時(shí)候請(qǐng)回歸到產(chǎn)品定位倡缠。問(wèn)問(wèn)自己哨免,這個(gè)事件的發(fā)生是否解決了業(yè)務(wù)痛點(diǎn),是否會(huì)催生業(yè)務(wù)價(jià)值的產(chǎn)生昙沦。此時(shí)琢唾,你也可以和領(lǐng)域?qū)<以谝粋€(gè)可視化(將你識(shí)別的事件寫成Sticker)的基礎(chǔ)上對(duì)業(yè)務(wù)事件再次確認(rèn),幫助你判斷桅滋。有時(shí)候慧耍,如果正向詢問(wèn)無(wú)法判斷時(shí),不妨反問(wèn)自己丐谋,這個(gè)事件不發(fā)生會(huì)有什么影響芍碧,不發(fā)生是不是就達(dá)不成產(chǎn)品目標(biāo)?這樣也能有效地識(shí)別出領(lǐng)域事件号俐。

領(lǐng)域模型劃分

通過(guò)分析前一步產(chǎn)品的領(lǐng)域事件尋找領(lǐng)域模型泌豆。

當(dāng)我們識(shí)別出領(lǐng)域事件后,我們應(yīng)該做什么呢吏饿?這時(shí)不妨想想你的初衷踪危,我們?yōu)槭裁匆鲱I(lǐng)域驅(qū)動(dòng)設(shè)計(jì)?業(yè)務(wù)的變化和發(fā)展是不可預(yù)測(cè)和控制的猪落,在原本的系統(tǒng)設(shè)計(jì)中贞远,我們習(xí)慣通過(guò)業(yè)務(wù)流程和用戶操作來(lái)建立實(shí)體間的聯(lián)系,這種設(shè)計(jì)方式很便捷也很直觀笨忌±吨伲可當(dāng)業(yè)務(wù)發(fā)生變化時(shí),當(dāng)你再用之前的系統(tǒng)結(jié)構(gòu)去解決業(yè)務(wù)問(wèn)題時(shí)官疲,你會(huì)發(fā)現(xiàn)你需要構(gòu)建一個(gè)更復(fù)雜的實(shí)體或邏輯來(lái)實(shí)現(xiàn)業(yè)務(wù)變化袱结。這時(shí)候你首先要做的,就是解耦系統(tǒng)架構(gòu)和數(shù)據(jù)實(shí)體的依賴關(guān)系途凫。當(dāng)你成功解耦依賴垢夹,你會(huì)發(fā)現(xiàn)你一個(gè)復(fù)雜的業(yè)務(wù)系統(tǒng)可以通過(guò)領(lǐng)域模型的聯(lián)系來(lái)解釋,因此領(lǐng)域模型的提煉是為了實(shí)現(xiàn)架構(gòu)設(shè)計(jì)上的解耦维费。

當(dāng)分析清楚領(lǐng)域事件果元,命令和用戶后,你可以方便的提煉領(lǐng)域事件中同類的事件實(shí)體犀盟,并歸納出該實(shí)體上可能發(fā)生的命令噪漾。這些命令將會(huì)指導(dǎo)你設(shè)計(jì)對(duì)該實(shí)體的系統(tǒng)操作且蓬。在這樣的劃分中欣硼,能夠有效的識(shí)別出一個(gè)事件實(shí)體,在完成你的業(yè)務(wù)目標(biāo)過(guò)程中,會(huì)通過(guò)什么樣的命令诈胜,經(jīng)歷什么樣的事件變化豹障。這種領(lǐng)域模型的劃分,很好的對(duì)實(shí)體對(duì)象進(jìn)行了一次提煉焦匈。

聚合通過(guò)定義對(duì)象之間清晰的所屬關(guān)系和邊界來(lái)實(shí)現(xiàn)領(lǐng)域模型的內(nèi)聚血公,避免錯(cuò)綜復(fù)雜的對(duì)象關(guān)系?的形成,確保業(yè)務(wù)規(guī)則在領(lǐng)域?qū)ο蟮母鱾€(gè)生命周期都得以執(zhí)?缓熟。

經(jīng)過(guò)這次工作坊的實(shí)踐后累魔,讓我們?cè)俅位氐筋I(lǐng)域事件的三原則:

P1: 聚焦核?領(lǐng)域(保證團(tuán)隊(duì)成員始終在一個(gè)統(tǒng)一的產(chǎn)品愿景下,通過(guò)識(shí)別領(lǐng)域事件够滑,劃分出體現(xiàn)業(yè)務(wù)價(jià)值的領(lǐng)域模型)

P2: 通過(guò)協(xié)作迭代式探索模型(每一次的發(fā)散和聚合都是通過(guò)探索垦写,逐步將一個(gè)復(fù)雜業(yè)務(wù)系統(tǒng)進(jìn)行歸納,抽象和解耦彰触。這個(gè)過(guò)程并非一蹴而就梯投,而是需要反復(fù)討論和溝通的。同時(shí)記住沒(méi)有一個(gè)系統(tǒng)能解決所有問(wèn)題况毅,請(qǐng)始終關(guān)注在現(xiàn)有業(yè)務(wù)的核心領(lǐng)域事件上)

P3: 統(tǒng)?語(yǔ)言(將業(yè)務(wù)概念可視化是最好的統(tǒng)一語(yǔ)言的方式分蓖。當(dāng)成員不在一個(gè)語(yǔ)言環(huán)境下時(shí),團(tuán)隊(duì)將無(wú)法進(jìn)行有效的信息碰撞尔许,導(dǎo)致業(yè)務(wù)事件識(shí)別的偏差么鹤。因此構(gòu)建直觀,清晰和統(tǒng)一的語(yǔ)言環(huán)境是劃分領(lǐng)域模型的基礎(chǔ))

總的來(lái)說(shuō)味廊,這是一次良好的體驗(yàn)蒸甜,作為一個(gè)領(lǐng)域?qū)<液陀^察者,能看到成員在不斷的試錯(cuò)過(guò)程中強(qiáng)化對(duì)于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)概念的理解毡们。當(dāng)然迅皇,一個(gè)方法論從消化到實(shí)施需要一個(gè)漫長(zhǎng)的過(guò)程昧辽,但正如我文中一開(kāi)始說(shuō)的衙熔,請(qǐng)首先邁出你的第一步。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末搅荞,一起剝皮案震驚了整個(gè)濱河市红氯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌咕痛,老刑警劉巖痢甘,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異茉贡,居然都是意外死亡塞栅,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門腔丧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)放椰,“玉大人作烟,你說(shuō)我怎么就攤上這事±剑” “怎么了拿撩?”我有些...
    開(kāi)封第一講書人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)如蚜。 經(jīng)常有香客問(wèn)我压恒,道長(zhǎng),這世上最難降的妖魔是什么错邦? 我笑而不...
    開(kāi)封第一講書人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任探赫,我火速辦了婚禮,結(jié)果婚禮上兴猩,老公的妹妹穿的比我還像新娘期吓。我一直安慰自己,他們只是感情好倾芝,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布讨勤。 她就那樣靜靜地躺著,像睡著了一般晨另。 火紅的嫁衣襯著肌膚如雪潭千。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 51,370評(píng)論 1 302
  • 那天借尿,我揣著相機(jī)與錄音刨晴,去河邊找鬼。 笑死路翻,一個(gè)胖子當(dāng)著我的面吹牛狈癞,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播茂契,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼蝶桶,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了掉冶?” 一聲冷哼從身側(cè)響起真竖,我...
    開(kāi)封第一講書人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎厌小,沒(méi)想到半個(gè)月后恢共,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡璧亚,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年讨韭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡透硝,死狀恐怖吉嚣,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蹬铺,我是刑警寧澤尝哆,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站甜攀,受9級(jí)特大地震影響秋泄,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜规阀,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一恒序、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧谁撼,春花似錦歧胁、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至箍鼓,卻和暖如春崭参,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背款咖。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工何暮, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人铐殃。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓海洼,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親富腊。 傳聞我的和親對(duì)象是個(gè)殘疾皇子坏逢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容