DDD.Thoughtworks.龙门阵.第3期.笔记 . . .
业务 Vs 技术 (统一语言)"吵"
使用概念图去统一语言 . . .
zongchashu . . .? ( 没听清 . . .)
产品看不懂技术设计的"模型"
产品不了解一些技术术语 : 角色 ...?
ZJ :
如果技术和产品沟通不了,可能原因之一 ,该产品并不是领域专家
LN:
基于领域创建微服务,
基于限界上下文创建微服务...
限界上下文,琢磨不出来,微服务就是一团浆糊.
很多人不想去吵,只能去改代码,这样对团队不负责...
术语统一, 业务概念要统一 .
Mei:
业务概念还是技术概念,保持一致,
冲突的时候怎么办?
共识比准确更重要!
业务掌握了,如何能找到一个切入点 ?
Mei :
业务痛点,
业务弱,梳理业务场景图.
ZJ :
价值出发 .
LN :
从矛盾角度看待问题 , 而不仅仅从业务痛点看待问题.
先抓主要矛盾 , 矛盾各不一样 , 所以各个项目的实施是不一样的.
DL :
时间节点 ...
堆功能阶段 , 技术很快完成 .
后期功能堆完了 , 产品再提需求 , 技术需要时间比较长 . . .
工时分歧
诚意
跟着业务的变化走 , 不要专门的去做DDD , 否则会受到业务的挑战 .
ZJ :
主动性优先
比技术条件是否具备更重要 .
( 就像学习 , 如果你想学习 , 学习效率肯定更高 . )
中低风险的系统
案例 :
业务和技术一起建模 , 并且让业务能听清楚咋回事 , 产品由衷称赞 : 你这个就叫数字化 . . .
业务能感觉到自己的价值(比如夸业务几句,让其能体现到自己的价值) , 就会更加喜欢一起建模 , 合作做DDD .
做了DDD , 但是坚持不下去 , 原因是什么 ?
LN :
推DDD , 推不下去 . 道天地将法 .
缺乏主观能动性 , 缺乏大家的支持 .
把推动DDD当做一个政治任务 . 而不是发自内心的每个人想去做 .
先将自己的DDD弄明白了 ,
而不用先去找咨询师 , 轰轰烈烈的去进行DDD运动 .
并且可以解决大家的问题 , 不是为了KPI去搞这个东西 .
Mei :
1.坚持不下去很正常 . (知道锻炼身体有好处 , 但是大部分人坚持不下去的)
任何人都是坚持不下去的 .
心理学 - 当下偏差 . . .
只注重当前的利益 , 而忽略长远的利益 . 哪怕我们都是想做好 , 但是人性的弱点 .
2.DDD思想可能一下记不住 , 但是希望可以在诸君脑子里埋下一颗种子 .
什么样的团队 , 可以不顾一切的去追求集体利益 ? --> 军队
比如 : 军队中将被子叠成豆腐块 , 是否浪费时间 , 是否不重要的事情 .
一定要有纪律 . 并且执行 .
ZJ :
哪怕有几个人掌握的很熟练 , 也推动不下去 .
将DDD融合到研发流程中 ,
规定每个节点要出什么东西 , 长什么样子 ,
要有规矩的遵循 .
例子 :
需求分析和系统分析 , 分析阶段 , 必须出领域模型 .
软件设计 , 必须根据领域模型出软件设计 ,
设计评审 , 评审设计模型和领域模型是否一致 .
代码编写 , 怎么看设计模型和领域模型 , 写代码 .
需要有人懂得去评 ,
这里面有套路和方法论的 .
上线版本号 , 我的模型也要同样的有版本控制 ,
上线版本号有对应的领域模型版本 .
QA部门内部审计 , 清单 , 把DDD要求在内部审计的时候 , 更好的融入到正常开发流程中 .
投入很多 , 才可看到收益 . 必须要坚持一段时间 ,
做DDD,落地的工程门槛 .
M :
DDD就是正确的OO .
如何分层 , 很有的聊 . <微服务测试> . . .
强调一点 , 为甚要用DDD ,
1.跟业务对齐 , 统一语言 .
2.创建高内聚 , 低耦合的系统 .
DL :
DDD其实本身需要团队协作完成的 . 所以每个角色都需要具备 . 只靠某一个角色都落地不了的 .
DDD比以前推敏捷要求更高 .
ZJ :
怎么简化 . 如果做新系统新模块 , 对流水线要求不太严格 .
按照模型去做 , 解决了一些问题 .
如果重构一个老系统 , 难度就很大 .
做新不做旧 .
如果继续聊分层架构 , 时间不够了 , 改天找个机会好好聊分层 . . .
LN :
深受分层架构之害 --> 经历了很多千层饼式的项目 .
深刻理解各层 .
答疑时间
事件风暴之后做什么 ?
ZJ :
事件风暴 , 做到了识别出领域对象 , 粗粒度领域名词 .
之后 , 战术设计 , --> 粗略画上下文 ,
战略设计 ,
今天这个讨论只适合大企业嘛 ?
ZJ :
只要解决问题 ,
就算不分布式 , DDD也是大有用途的 .
产品不想参与建模 ...
**充血模型如何解决 ? **
可以创建一个自己上楼的桌子 , 自己结账的订单 .
如果自己操作自己本身 , 主客关系打破 , 那么充血模型很难做下去 . 不符合开发认知 .
总结 : 找到合理的主客关系 . . .
DDD得到落地之前 , 如何向干系人说明DDD价值 ?
小A问 : DDD到底能给我带来什么价值 ?
小A遇到的场景 , 系统比较复杂 , 过几年就需要重写 ,
Mei :
如果做好DDD , Domain这块代码 , 应该是长期的投资 ,
私货 . 12月DDD大会 . . . .
用DDD给大家解决了什么问题 .
分析模型和领域模型 . . .
分析模型讲的语言一定是业务语言 , 业务感兴趣的话题 ,
如果向分析模型加技术概念 , 那就是由分析模型转向领域模型 (没听清 . . .) ?