DDD学习笔录——提炼问题域之与领域专家一起获得领域见解
业务和开发团队之间的协作是DDD必不可少的部分,并且它是处于开发阶段的产品获得成功的关键。
领域专家指的是那些从业务领域的政策和工作流程到棘手处和特性都具有深刻理解的人。能够为你的问题区域提供深刻见解的人。他们可能是对于你当前工作领域具有很强的领悟和理解的产品所有者、用户或其他任何人。
1、领域专家与业务相关人员的对比
DDD寻找到在你当前工作的领域中是主题专家的人很重要。而要找到领域专家,我们就要区分领域专家与业务相关人员。
问题空间会给出一组需求、输入和预期输出——这通常是你的业务相关人员提供的。
解空间包含一个能满足需求需要的模型——这正是领域专家能够提供帮助的地方。
2、对于业务的深刻理解
与领域专家一起工作并不是仅仅让开发团队能够获得他们正在处理的问题域知识,还有助于领域专家证明其对该领域的理解。
3、与你的领域专家互动
要实现高水平的协作,建议你将开发团队和可调用的领域专家搭配在一起,以便随时随地可以解答问题并参与到分析中;这正是沟通交流被限定为每周项目会议所欠缺的。
协作就是这样一个DDD所必不可少的部分;没有他,很多设计突破将不会发生。正是这一更深层的设计见解才使得软件可用并且在业务过程变更时能够进行适应调整。
DDD学习笔录——提炼问题域之与领域专家一起获得领域见解的更多相关文章
- DDD学习笔录——提炼问题域之知识提炼与协作
提炼问题域的意义 理解一个复杂问题域以便创建简单且有用的模型需要深入详尽的知识以及深刻的见解,这些只能通过与从内到外理解该领域的人协作得到.对模型的设计进行连续实验和探究正是DDD的能力所能实现的.只 ...
- DDD学习笔录——提炼问题域之知识提炼与协作的基本原则
1.通过通用语言达成共识 通用语言,已经强调过好多遍了,在DDD再怎么重视都不为过,后面可能还会讲. 知识提炼的输出以及共识的构建就是常见的通用语言(UL). 当与业务相关人员和主题专家进行建模时,每 ...
- DDD学习笔录——提炼问题域之有效提炼知识的模型(三)
方式六:延迟对模型中概念的命名 对领域建模时命名很重要. 因为在不断的知识提炼过程中经常会发现已经被命名的概念与你最初理解的有出入,这时你当初的命名就会变成一个问题.其问题在于 最初选作名称的这个词 ...
- DDD学习笔录——简介领域驱动设计的实践与原则
DDD在存在许多DDD模式的同时,也有大量实践和指导原则,这些都是DDD思想体系成功的关键. 1.专注于核心领域 DDD强调的是在核心子域付出最多努力的需要.核心子域是你的产品会成功还是会失败的差异化 ...
- DDD学习笔录——领域驱动设计的常见误区(即错误的理解)
可以将DDD看成一种开发思想体系:它促成了一种新的以领域为中心的思维方式. 它是一种学习过程,而非最终目标,这就是DDD的最大优势. 任何团队都可以编写一个软件来满足一组用例的需求,但那些将时间和精力 ...
- DDD学习笔录——简介DDD的战略模式如何塑造应用程序的架构
前一篇,简单介绍了DDD战略模式的提炼问题域,这篇简单介绍它如何塑造应用程序的架构. 1.创建一个模型以解决领域问题 为每一个子域构建一个软件模型以处理领域问题并让软件与业务保持一致. 这个模型并非现 ...
- DDD学习笔录——简介DDD的战术模式、问题空间和解空间
DDD的战术模式 DDD的战术模式(也称为模型构造块)是一个帮助创建 用于复杂有界上下文的有效模型的 模式集合. 也就是我们常说的设计模式. 问题空间 问题空间将问题域提炼成更多可管理的子域,是真对于 ...
- DDD学习笔录——领域驱动设计DDD概念总结
- DDD学习笔记二
参考:感谢博主的分享... http://www.cnblogs.com/netfocus/archive/2012/02/12/2347938.html DDD ==> 领域驱动设计(Doma ...
随机推荐
- 【spark】文件读写和JSON数据解析
1.读文件 通过 sc.textFile(“file://") 方法来读取文件到rdd中. val lines = sc.textFile("file://")//文件地 ...
- 012-对象——魔术常量__CLASS__ __METHOD__ __FUNCTION__ __DIR__ __FILE__
<?php /** *魔术常量__CLASS__ __METHOD__ __FUNCTION__ __DIR__ __FILE__ */ //魔术常量:__CLASS__ 得到类名. /*cla ...
- 剑指offer--26.顺时针打印矩阵
1,2,3,45,6,7,88,10,11,1213,14,15,16 每次输出第一行,然后删除第一行,逆时针旋转剩下的矩阵. ------------------------------------ ...
- ORM版,学生信息管理单表查询..
mysql 建学生表及课程表 添加内容 view.py from django.shortcuts import render,HttpResponse,redirect from . import ...
- (二十八)static关键字
/* * static 静态的 * static修饰的成员变量的特点 * 1.static修饰的成员变量是该类的所有对象共享 * 2.static修饰的成员变量是随着类的加载就 ...
- centos安装PHP-pdo支持pdo
#yum install php-pdo phpinfo()查看PDO
- 定时任务&&找出两个list的不同
/*-------------------------application-context.xml------------------------------*/ <?xml version= ...
- fragment在水平/垂直时的应用
直接看代码 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedIns ...
- springboot mybatisPlus配置
1.pom依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...
- Java基础知识复习(一)
- JVM内存区域 程序计数器:一个比较小的内存区域,用于指示当前线程所执行的字节码执行到了第几行,是线程隔离的. Java虚拟机栈:Java方法执行的内存模型,用于存储局部变量,操作数栈,动态链接, ...