3分钟大局事件风暴
内容提要
本文总结了大局事件风暴的重要内容,包括举办目的、准备和引导活动的方法。文章介绍了运行大局事件风暴的步骤和吸引参与者的技巧。主要输出是识别有界上下文和处理遗留代码。最后,给出了后续活动的提示,如组织团队、重写有界上下文和保护核心领域。
延伸解读
何时该用大局事件风暴
文章指出,当面临软件架构挑战且满足三个条件时,事件风暴是合适选择:架构不明显、团队有能力应对、沿用常规方法仍停滞不前。它被定位为“大前期设计”与“100%紧急设计”之间的中间路径,适合需要快速对齐领域认知又不想过度前期设计的场景。
准备与引导决定成败
成功举办事件风暴依赖积极赞助、明确范围、合适受众和诱人邀请。房间需备好视觉议程、长纸条、便利贴、记号笔等。运行分五步:生成领域事件、排序、添加参与者和外部系统、评书、逆向讲故事。每个步骤都需针对性引导技巧来维持参与度。
核心输出与遗留代码处理
主要输出是识别有界上下文,形成功能架构的上下文地图,用于优化技术投资和促进团队协作。文章建议不要直接对旧系统做事件风暴,因为遗留系统通常不映射到领域。若涉及遗留代码,需更长简介、可视化开发者压力,并更频繁调整时间表。
后续行动与延伸工作坊
事件风暴结束后应趁热打铁:决定团队按功能还是组件组织、重写或重构有界上下文、保护核心领域。尽早原型化服务和非功能需求以避免后期性能故障,并尽早决定交付内容。还可衔接影响图、用户故事映射、团队拓扑映射、限界上下文画布及设计级事件风暴等后续工作坊。
Q&A
什么情况下应该考虑举办大局事件风暴?
当面临软件架构挑战,且满足以下条件时:架构不明显、人们有能力应对挑战、尽管遵循通常的成功方法但进展仍然停滞不前,那么大局事件风暴就是正确的选择。
举办大局事件风暴前需要做哪些准备?
需要积极赞助、明确的范围、合适的受众、诱人的邀请和简报致辞。同时要准备房间和用品,包括视觉议程、一堵墙、一条长纸条、便利贴、记号笔、一张小桌子和食物。
大局事件风暴的具体运行步骤有哪些?
共有5个步骤:生成领域事件、对它们进行排序、添加参与者和外部系统、评书、逆向讲故事。每个步骤都有相应的促进技巧来吸引参与者。
大局事件风暴的主要输出是什么?
主要输出之一是识别有界上下文(功能区域的领域驱动设计),形成上下文地图(功能架构的领域驱动设计),这是优化技术投资和让团队有效协作的基石。
如何处理遗留代码与事件风暴的关系?
建议不要对旧系统进行事件风暴。遗留系统通常不映射到域且不进行练习。相反,需要更长的简介来传达额外背景,承认并可视化开发人员的压力,并比平时更多地调整时间表。
大局事件风暴结束后应该做哪些后续活动?
后续活动包括:根据功能或组件组织团队、重写或重构有界上下文、保护和投资核心领域(皇冠上的珠宝)、明确上下文关系、尽早原型化(微)服务和非功能性需求、尽早决定交付内容、利用重构技能尽早交付。还可以举办其他研讨会,如影响图、用户故事映射、Teams拓扑映射、限界上下文画布和设计级事件风暴。