6

我有一些術語的問題令我很困惑,並且我似乎無法弄清楚。維基百科往往很正式,這是非常難受,理解解釋這些東西......領域模型,概念模型和商業模型等之間的區別

我一直在努力理解的術語是:problem domainconceptual modeldomain modelbusiness modelbusiness domainbusiness logic,域邏輯等。其中一些意思是相同的,其中一些可以互換使用,其中一些意味着不同情況下的不同事物。 我要求的是一個高層次的概述所以我不會對這些術語感到困惑......

這些條款都是domain driven design的一部分嗎? OO說話嗎?我應該在什麼情況下放置它們?

這是迄今爲止我的理解:

  • 域是主題(即你正在製作的世界),和模型試圖簡潔解釋一個概念/主題。
  • 因此,領域模型(=概念模型)試圖簡潔地解釋領域。
  • 因此,一個商業模式可以解釋一個企業所做的事情,因此一個企業將與一個領域相同,除了一個領域更廣泛,它不僅僅侷限於一個企業。

我在ER建模方面有一些經驗,我從wikipedia瞭解到ER模型是用來表示概念模型(領域模型)的許多技術之一。

我可能是完全錯誤的,但它應該告訴你在哪裏我的困惑是...

+0

域和問題域是同一個東西嗎? – user1534664 2014-09-20 10:17:56

回答

5

我懷疑有一個全面的,這些術語的正式定義,但在我的經驗,以下是普遍接受的定義:

域名是一個值得關注的領域,或者正如您所說,主題。如果關注的領域是企業,這將是一個商業領域。術語「問題域」更一般。

概念模型是域中概念和關係的抽象:我同意術語域模型和概念模型在很大程度上是可以互換的。唯一的區別是術語「概念模型」強調這是一個概念模型,並不反映軟件設計。

術語業務邏輯和域邏輯傾向於指代定義域內實體的正確行爲的規則。在域模型中捕獲這些規則中的一些可能是可能的,例如,通過對關係或使用狀態圖的約束。無論您認爲域邏輯是域模型的必要組成部分,可能取決於您的建模需要的正式程度以及所討論的域。

+0

非常感謝=)你的意思是:「唯一的區別是術語概念模型強調這是一個概念模型,並不反映軟件設計的事實。你的意思是一個概念模型並不總是用於軟件設計,而是一個域模型**總是**是? – user1534664 2014-09-20 21:00:47

+0

另外,這些術語從哪裏來?域驅動設計?或者他們是一般的計算機科學術語?當我在做ASP.NET MVC時,我已經看到他們使用了很多。 – user1534664 2014-09-20 21:01:56

+0

當談到域名時,我們也談到問題域的權利?因爲這是值得關注的領域。 – user1534664 2014-09-20 21:06:30

相關問題