首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在DDD中组合多个有界上下文

在DDD中组合多个有界上下文
EN

Stack Overflow用户
提问于 2014-05-10 07:32:48
回答 1查看 532关注 0票数 2

我们正在开发一个全面的域模型,包括7(!)跨多个团队的模型/有界上下文。我们还没有决定每个BC是否与其他BC完全断开连接(由上面的一层编排),或者它们是否将通过域事件进行通信。

开发中的应用程序在所有用途上都是SWT/Swing单线程应用程序,因此不需要在不同的BC之间进行花哨的分布式mumbo。

然而,一个大问题仍然存在:如何集成所有这些不同的模型?是否应该由应用层来承担这项任务?如果是,而且由于在某些情况下(希望是少数情况),连接和顺序最终是复杂的,那么应用层不是执行此操作的错误位置吗?

例如,考虑使用组装一个非常复杂的人工创造的人(AssembleHumanoid)的情况。我们有与循环系统、骨骼结构、神经系统、通风系统、协调性、免疫学和精神系统以及传感器系统相关的有限背景(哈哈,这都是你可能想象到的)。

在应用层中连接所有这些东西感觉有点不对劲。显而易见的解决方案似乎是创建第二个域层来处理编排问题。我已经查过了,但是弗农的实现领域驱动设计并没有直接触及这个问题(尽管他接近@ p531,"Composing Multiple Bounded“)。

你对这件事有什么看法?

EN

回答 1

Stack Overflow用户

发布于 2014-05-12 04:56:40

我现在正在解决和你一样的问题。我在我的项目中的角色是架构师,我们已经确定了5个BC,但我们是一个团队,打算在一个大型应用程序中开发这些BC。因此,我们的BC是一个更大的保险应用程序中的模块,每个BC都使用自己的通用语言(条约、再保险、安全、医疗风险评估、保费)。但我已经考虑了很多,我认为我们会通过Domain Events向其他BC发送更新。我们的客户端是一个MVC站点,它将使用我们的服务层。但我的意图是,应用层具有这种粒度,因此它将设法为客户端执行主要任务,而不让客户端MVC项目与其他BC协调。

我们在BC之间使用一些共享内核,但不用于通信。我们使用DDD集成模式,其中我们通过值对象引用其他BC。我们也有一些BC来扮演工厂的角色,例如Security BC正在为其他BC创建不同的用户角色。

但是当涉及到用例的执行时,实际上需要在其他BC中执行一些最终任务,域事件来拯救。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23575494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档