设计文档模板
- 系统背景和定位
- 业务需求描述
- 领域语言整理,主要是整理领域中的各种术语的定义,名词解释
- 领域划分(分析出子域、核心域、支撑域)
- 系统用例图
- 每个子域的领域模型设计(实体、值对象、聚合、领域事件,需要注意的是:领域模型是需要抽象的,要分析业务本质,而不是简单的直接对需求进行建模)
- 领域模型详细说明(如为什么这样设计的原因、模型内对象的关系、各种业务规则、数据一致性规则等)
- 领域服务、仓储、工厂设计
- Saga业务流程设计
- 关键聚合根的状态流转图
- 场景走查(讲述如何通过领域模型、领域服务、仓储、Saga流程等完成系统用例以及关键业务流程的)
- 架构设计(如传统三层架构、经典四层架构、CQRS/ES架构)