本文译自事件风暴提出编写文件:http://ziobrando.blogspot.com/2013/11/introducing-event-storming.html
免责声明:这是关于 EventStorming 的开创性文章。这是一切开始的地方,所以我认为保留原件是相关的。同时, 自从我写这篇文章以来,EventStorming 已经发展了很多,这个页面描述的格式不再是我最喜欢的。事实上,没有单一的 EventStorming 格式,该工具证明了自己的多功能性和强大功能,以至于我完善了一些不同的方法。我还不得不开始 写一本关于它的书,它正在慢慢地完成。到今天为止,理解 EventStorming 潜力的更好切入点可能是我稍后的演示文稿50.000 个橙色便签(也可以在视频中找到)) 或阅读本书的第一章,这是免费的。我们还在开发EventStorming.com网站的新版本,该网站应该组织指向许多从业者发布的有关 EventStorming 的有趣内容的指针。 在过去的几个月里,我花了一些时间来试验这个奇怪的东西。一开始就像“哎哟我没时间画精确的 UML 图,让我们来做这个吧”然后变成了我在 2012 年意大利敏捷日上提出的基于事件的建模研讨会,后来我有机会做更多的实验在 Vaughn Vernon 的 IDDD 之旅期间在比利时和波兰,我收集了非常宝贵的反馈和见解。我设法找到了一个更酷的名字 - EventStorming - 就在 2013 年夏天整个事情爆发之前。虽然我意识到它有很多价值,但其他从业者(Mathias Verraes、Tom Janssen、Marco Heimeshoff、Yves Reynhout、Tomas Jaskula,Alessandro Colla、Andrea Balducci、Jef Claes,仅举几例)开始探索和使用这种格式并取得了惊人的结果,这让我得出结论,这不仅仅是“另一种研讨会格式”。
EventStorming 是一种研讨会形式,用于快速探索复杂的业务领域。 它很强大:它使我和许多从业者能够在数小时而不是数周内提出完整业务流程的综合模型。 它很吸引人:整个想法是将提出问题的人和知道答案的人带到同一个房间,并一起构建模型。 它是高效的:生成的模型与领域驱动设计实现风格(特别适合事件溯源方法)完全一致,并允许快速确定上下文和聚合边界。 这很容易: 符号非常简单。没有复杂的 UML 可能会使参与者远离讨论的核心。 很有趣:我一直很开心领导研讨会,人们充满活力,交付的成果超出了他们的预期。正确的问题出现了,气氛也是正确的。
以下是基本步骤:
这些是原始 EventStorming 格式的基本步骤。但是,如果讨论变得热烈,您可能会在此过程中发现一些奖励目标。这是一个可能的奖励目标列表,值得考虑作为标准路线的有益绕道。
以下是迄今为止所有可能的研讨会步骤的概述:
可以在这里看到质量更好的图像
把所有东西放在一起是很多东西。请记住,研讨会的目标是在尽可能短的时间内尽可能多地学习。我们邀请了关键人物参加研讨会,我们不想浪费他们的时间。
所以,当谈到这些奖励目标时,准备好以最有效的方式利用时间:你得到一个有价值的提示,只需勾勒它并将相应的粘性放在热点中。不要推动模型完整性的讨论:模型将是巨大的,完成它可能没有什么价值,甚至对某些参与者来说听起来很可怕。
接受不完整会让研讨会不那么无聊,而且更有成果。
正如您所注意到的,研讨会没有单一的形式。事实上,第一步或多或少是相同的,但形式可能会根据参与者的角色和项目范围而有所不同。
我发现即使在停止领域事件时,结果也非常有价值,即我们在我的公司进行了一个 EventStorming 会议,探索我们正在运行的培训课程的业务流程。参与者不是开发人员,因此目标只是通过提出正确的问题来理解系统。我们在几个小时内就完成了。在研讨会结束时,每个新员工都清楚地知道我们公司应该做什么。

(在这个场景中,我们使用了稍微不同的符号,这对参与者更有意义:橙色 —> 事件,紫色 —> 外部系统,蓝色 —> 外部组织或社区,绿色 —> 人工制品)。
在探索软件开发时,结果更加强大。聚合、命令和领域事件,都很好地映射到软件工件中。您可能会举办研讨会以真正快速地掌握全局,并提供一个物理空间,可以围绕流程进行讨论。
DDD 从业者喜欢这种方法,不仅因为它很有趣,而且因为生成的模型更接近他们需要的模型:这不是没有数据模型。生成的模型是完全行为的:没有底层数据模型限制实现的本质。如果您面向命令-查询职责分离,那么在尝试研讨会之后,您可能会遇到为我提供啤酒的紧迫性。
您还可以几乎立即开始编码,并在很短的时间内验证您在代码中的探索结果。这是最高效的团队所做的,基于讨论的发现与面向领域驱动的实现相结合可以带来巨大的改进。
您基本上会更快地实施正确的事情。
运行一个实验并没有那么困难。所有你需要的是:
在让你的达斯维达式老板参与进来之前,你可能想在沙箱中对执行进行原型设计(一些用户组非常适合,他们喜欢实验)。您可能还想加入不断壮大的从业者和实验者社区。
或者,您可能想聘请一名协调员,为期一两天,在您的公司举办研讨会,同时提供有关研讨会本身和进一步可能步骤的指导。