识别有界上下文

时间:2016-08-12 12:27:55

标签: domain-driven-design object-oriented-analysis bounded-contexts

每次我认为我理解如何识别有界的背景我意识到水仍然是模糊的。所以这里......

我正在开发一个包含以下功能的客户门户网站:客户,用户,公告,反馈,文档和报销。我们只是将一个漂亮的UI放在另一个系统的报销批准上,所以这个很容易看出它是我们整合的另一个BC。现在与其他人一起,我不确定如何将这些组合在一起。所有这些都属于单一的BC'门户'吗?或者也许有单独的'管理','通讯','文件'BC'??

任何想法都将不胜感激!

1 个答案:

答案 0 :(得分:2)

在"问题空间"它通常由语言驱动。首先查找您发现自己必须为解释提供上下文或围绕概念进行讨论的情况。例如,如果您的某些内容具有不同的含义,具体取决于您所讨论的上下文。一个很好的例子是" ticket" - 如果您的上下文销售演出门票与服务台上下文相比,这可能意味着不同的事情,其中​​票证是某人提出的问题。

当你发现概念变得太大,或者你发现它们承担了他们过去没有的责任时,这通常会随着你的发展而演变。如果你发现两个不同的人群具有略微不同的含义,他们会附加到事物上,这是另一个好的迹象,表明你可能需要单独的背景。另一个好兆头就是当你开始添加布尔标志来控制事物以及可空字段时。

  

客户,用户,公告,反馈,文档和报销。所有这些都属于单一的BC' Portal&#39 ;?或者也许是单独的“管理”,“通信”,“文档”和“#39;文档' BC' S 13

这些概念中是否有任何不同的概念取决于哪些"事物"你在说什么?可能是您有许多子域,每个子域都有一个有界的上下文,模式保持一致

我可能从每个子域的单个上下文开始,然后在概念出现时拆分它们。