惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
aimingoo的专栏
aimingoo的专栏
Martin Fowler
Martin Fowler
C
Check Point Blog
G
Google Developers Blog
V
Visual Studio Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
有赞技术团队
有赞技术团队
MongoDB | Blog
MongoDB | Blog
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
大猫的无限游戏
大猫的无限游戏
D
Docker
Hugging Face - Blog
Hugging Face - Blog
The GitHub Blog
The GitHub Blog
博客园 - 三生石上(FineUI控件)
A
About on SuperTechFans
Recent Announcements
Recent Announcements
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
阮一峰的网络日志
阮一峰的网络日志
Stack Overflow Blog
Stack Overflow Blog
Vercel News
Vercel News

博客园 - netfocus

IM即时通信软件设计 邮箱核心业务领域建模 DDD中的聚合和UML中的聚合以及组合的关系 对关系建模 DDD战略设计相关核心概念的理解 谈谈Paxos一致性算法和一致性这个名词 EventStore文件存储设计 DDD领域驱动设计 - 设计文档模板 调漂技巧总结 EQueue 2.3.2版本发布(支持高可用) 使用ENode框架前您需要了解的东西(初稿) 各协议授权详情 BIO\NIO\AIO记录 - netfocus - 博客园 限流的三个思路 分享一个CQRS/ES架构中基于写文件的EventStore的设计思路 浅谈我对DDD领域驱动设计的理解 【转载】高并发的核心技术-幂等的实现方案 ENode 2.8 最新架构图简介 三种减库存方式
DDD领域建模基本流程
netfocus · 2019-05-24 · via 博客园 - netfocus

Posted on 2019-05-24 11:05  netfocus  阅读(6057)  评论(4)    收藏  举报

整理一个精简的DDD领域建模基本流程,供大家在DDD领域建模实践中进行参考。

  1. 搜集用户故事(用户的原始需求)
  2. 整理用户故事,抽出用例(用例表达了用户对系统的需求,定义了系统的边界以及系统外部角色和系统的交互场景)
  3. 分析系统需求,将领域拆分为多个子域(领域是问题空间,本质上就是大问题拆分为小问题)
  4. 抽取每个子域的领域概念,得到概念模型(概念模型存在于问题空间)
  5. 将子域的概念模型抽象并转化为领域模型(领域模型存在于解决方案空间,这一步是难点,考验抽象能力,如对关系的建模,如促销系统中抽象出促销产品,权限系统中抽象出授权)
  6. 找出领域模型中的聚合,以及每个聚合的聚合根
  7. 梳理聚合之间的关系
  8. 场景走查,检查领域模型如何满足用例需求

在以上过程中,还有两点也是非常重要的:

  • 逐步积累一个统一语言(UL)的领域术语表,方便各方人员沟通;
  • 除了领域建模外,针对每个用例场景,尝试画一下系统顺序图也很有用,系统顺序图定义了系统外部角色和系统之间在某个场景下的具体交互流程;

刷新页面返回顶部