領(lǐng)域確定設(shè)計專題(四)- 限界上下文

一個領(lǐng)域內(nèi)可能存在多個子域、多個限界上下文、多個上下文映射關(guān)系,那么如何考慮自己的領(lǐng)域設(shè)計是否合理:
1、有些軟件資產(chǎn)已經(jīng)存在的,他們可以重用?
2、哪些資產(chǎn)是需要創(chuàng)建的,或者從別處獲得?
3、這些資產(chǎn)是如何集成在一起的?
4、這需要什么樣的集成?
5、假設(shè)已經(jīng)有了現(xiàn)有資產(chǎn)和哪些需要被創(chuàng)建的資產(chǎn),我們還需要做些什么?
6、核心域和那些支撐項目的成功幾率如何?會不會出現(xiàn)由于其中一個失敗而導(dǎo)致整個項目失敗的可能?
7、在哪些地方我們使用了完全不同的術(shù)語。
8、限界上下文之間在哪些地方存在概念重疊?
9、這些重疊的概念在不同的限界上下文之間是如何映射和翻譯的?
10、哪些限界上下文包含了核心域中的概念,其中使用了謝【evans】中的戰(zhàn)術(shù)模式?

開發(fā)核心域的解決方案是一種關(guān)鍵性業(yè)務(wù)投入。

限界上下文是一個顯示的邊界,領(lǐng)域模型在這個邊界之內(nèi)。領(lǐng)域模型把通用語言表達成軟件模型。創(chuàng)建邊界的原因在于,每一個模型概念,包含它的屬性和操作,在邊界之內(nèi)都具有特殊的含義。

限界上下文也不是旨在創(chuàng)建一個單一的項目資產(chǎn),他并不是一個單獨的組件、文檔、或者框圖,也不是一個jar或大流量, 但是這些可以用來部署限界上下文。

限界上下文可以包含模塊、聚合、領(lǐng)域事件和領(lǐng)域服務(wù)等,限界山下文應(yīng)該足夠大,以能夠表達所對應(yīng)的整套通用語言。

限界上下文與技術(shù)組件保持一致。在使用IDE時,譬如eclipse或idea,一個限界上下文通常就是一個工程項目。在使用java時,我們可能從技術(shù)層面上講一個限界上下文放在一個jar文件中,進行獨立的版本演進,也可以借助OSGI或java8的jigsaw進行動態(tài)版本管理。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容