文章目录
我们在上一篇文章中提到过的DDD领域模型的很多概念如通用语言、界限上下文、实体、值对象、聚合、聚合根、领域事件都是通过事件风暴确定的。现在就开始介绍如果用事件风暴构建领域模型。
事件风暴是一项团队活动,领域专家与项目团队通过头脑风暴的形式,罗列出领域中所有的领域事件,整合之后形成最终的领域事件集合,然后对每一个事件,标注出导致该事件的命令,再为每一个事件标注出命令发起方的角色。命令可以是用户发起,也可以是第三方系统调用或者定时器触发等,最后对事件进行分类,整理出实体、聚合、聚合根以及限界上下文。而事件风暴正是 DDD 战略设计中经常使用的一种方法,它可以快速分析和分解复杂的业务领域,完成领域建模。
一、准备事件风暴
1、参与人员
事件风暴的参与者可以是领域专家、 DDD 专家、架构师、产品经理、项目经理、开发人员和测试人员等项目团队成员。
领域建模是统一团队语言的过程,因此项目团队应尽早地参与到领域建模中,这样才能高效建立起团队的通用语言。到了微服务建设时,领域模型也更容易和系统架构保持一致。
2、环境条件
事件风暴的发明者建议准备一面8米长的墙,用来贴贴纸,让参与者把事件风暴过程确定下来的实体、值对象、聚合、聚合根等内容贴到墙上。这些贴纸最好是不同形状、不同颜色的,以便在墙上区分不同的内容。
如此一来,参与者可以将自己的想法和意见写在即时贴到墙上,你会发现参与者们的效率比传统的会议更高。
二、确定产品愿景
产品愿景的主要目的是对产品顶层价值的设计,使产品目标用户、核心价值、差异化竞争点等信息达成一致,避免产品偏离方向。
<