• 领域驱动设计-领域建模


    领域建模

    领域建模是针对问题空间的战术求解的过程:观察真实世界的业务需求,对业务知识进行提炼和转换,排除技术因素对建模产生的影响,一切围绕着业务需求而来。同时满足未来的需求变更与产品维护

    快速建模法:名次动词法

    建模过程

    1. 名词建模
      1. 识别业务流程(用例)中的名词
    2. 动词建模
      1. 识别动词,判断对应的行为是否产生了过程数据(补充手段,看是否产生了影响管理、法律或财务的过程数据,如果缺少它的记录,就会影响到商业的运营管理、造成经济损失或引起法律纠纷)
    3. 归纳抽象
    4. 确定关系
      1. 确定领域概念之间的关系

    名词建模

    只要名词属于领域概念,符合统一语言的要求,就快速将他提取出来,放到领域分析模型中

    动词建模

    讲识别出来的动词当作一个领域行为,然后看他是否产生了影响管理、法律或财务的过程数据。

    1. 驱动出隐藏的关键概念:针对动词代表的领域行为,是否需要记录过程数据
    2. 验证挖掘出来的业务概念是否真的属于领域分析建模的核心概念:如果缺少了过程数据,是否影响运营管理、引起法律纠纷或造成经济损失

    归纳抽象

    为了提高模型的质量,可对已有领域概念进行归纳抽象,主要是针对由那些定语修饰的领域概念。如配送地址、家庭地址、已付款金额、冻结资金等。需要分辨他们是类型的差异还是值的差异,如果是值的差异,类型相同,应归为一个领域概念。

    • 比如收获地址和家庭地址表达了不同的值,但实际上都是地址Address类型
    • 订单状态和商品状态修饰的都是状态,但实际上代表完全不同的值(类型),两个概念不能合并

    注意:在分析阶段,如果分不清楚一个模型应该保留还是删除时,应优先考虑保留,待到领域姜末设计时在进行判断

    确定关系

    如果某个类型拥有多种相似的关联,可以为这些关联对象定义一个新的类型。也就是说如果发现用一个领域概念来描述关系更为合理,就可以将该关系建模为一个领域概念。比如:读者和作平之间存在关联关系,表达了一种收藏的概念,故可以提炼出收藏的概念

    建模书籍:《分析建模:可复用的对象模型》,《彩色UML建模


    领域模型设计要素

    1. 实体:谓语描述的主体
    2. 值对象:为主体对象的属性
    3. 领域事件:封装了主体的状态
    4. 领域服务

    1、实体

    巴门尼德认为实体是不同变化状态的主体:主体的状态在相当长一段时间内会持续的变化,因

  • 相关阅读:
    还在付费使用 XShell?我选择这款超牛逼的 SSH 客户端,完全免费
    vue 导入、导出模块的几种方式
    实现挂机会议
    【ZhangQian AI模型部署】目标检测、SAM、3D目标检测、旋转目标检测、人脸检测、检测分割、关键点、分割、深度估计、车牌识别、车道线识别
    到底该怎么学python啊?
    集成电路运算放大器[23-9-16]
    电厂数据可视化三维大屏展示平台加强企业安全防范
    静态static
    WebGL层次模型——单节点模型
    npm install常见错误的完整指南
  • 原文地址:https://blog.csdn.net/followMyInclinations/article/details/128099450