领域模型图(数据架构/ER图)

简介: 本文介绍如何通过四色原型法进行领域建模,构建数据架构中的ER图。基于业务流程提取时标性原型(MI)、参与方-地点-物品原型(PPT)、角色原型(Role)和描述原型(DESC),逐步建立风控系统的领域模型,并最终转化为实体关系图(ER图),实现从业务到数据模型的精准映射。(238字)

数据架构重要的输出是数据-实体关系图,简称 ER 图。ER 图中包含了实体(数据对象)、关系和属性 3 种基本成分。ER 图可以用来建立数据模型。如何准确的建立产品的数据模型,需要分解出业务需要什么样的数据。数据域的分解过程是站在业务架构的基础上,对业务域进行模型分析的过程。说起业务建模,大家很快会想到领域模型这个概念。这里的思路是通过领域建模来逐步提取系统的数据架构图。

说到领域模型,这里采用四色原型法进行业务模型的抽象。在进行四色模型分析前,我们先了解下四色模型的一些基本概念。四色模型,顾名思义是通过四种不同颜色代表四种不同的原型。

  • Moment-Interval Archetype 时标性原型
  • 表示事物在某个时刻或某一段时间内发生的。使用红色表示,简写为 MI.
  • Part-Place-Thing Archetype 参与方-地点-物品原型.
  • 表示参与扮演不同角色的人或事物。使用绿色表示。简写为 PPT。
  • Role Archetype 角色原型
  • 角色是一种参与方式,它由人或组织机构、地点或物品来承担。使用黄色表示。简写为 Role。
  • Description Archetype 描述原型
  • 表示资料类型的资源,它可以被其它原型反复使用,并为其它原型提供行为。使用蓝色表示。简写为 DESC。

以风控系统为例,进行领域建模的过程如下:

1.关键流程

在进行业务建模前,首先需要梳理出业务的流程,这一步在业务架构分解环节中已经完成。按照四色建模法的原则,将业务流程图进行一点改造。在原来的流程图上,将流程涉及的事务和角色添加进来。
改造之后的流程图如下:

2.领域模型骨干

从业务流中,我们可以清晰的定义出 Moment-Interval Archetype (时标性原型),流程中的每个节点符合 MI 的定义,即事物在某个时间段内发生。在 MI 的定义过程中,一种方法是通过名词+动词进行定义。那么,风控的 MI 即为:数据采集、规则 &模型设置、风险识别、告警通知、风险处置、风险分析(MI 使用红色表示)。

在得到骨干之后,我们需要丰富这个模型,使它可以更好的描述业务概念。这里需要补充一些实体对象,通常实体对象包括:参与方、地点、物(party/place/thing)。

Part-Place-Thing Archetype(参与方-地点-物品原型):业务对象、规则、模型、异常风险、通知、异常事件、分析报告(PPT 使用绿色表示)。

领域模型骨干图,如下:

3.领域模型角色

在领域模型骨干的基础上,需要把参与的角色(role)带进来。Role 使用黄色表示。如下图:

4.领域模型描述

最后将模型的描述信息添加进来,模型的描述信息中涵盖模型的具体属性。这些描述信息对于后面数据库设计有很大的影响。模型描述使用蓝色标注,如下图:

5.提取 ER 图

领域模型构建完成之后,在此基础上,我们已经能够初步的掌握整个系统的数据模型。其中绿色的 Part-Place-Thing Archetype(参与方-地点-物品原型),可以用来表示 ER 图中的实体模型。红色的 Moment-Interval Archetype(时标性原型),可以用来表示 ER 图中的关系。对领域模型架构图进行提炼,得到如下图:

实体(Entity)和联系(RelationShip)存在一定的关联关系,一般存在 3 种约束性关系: 一对一约束、一对多约束和多对多约束。将这些约束性关系表现在 ER 图中,用于展现实体与实体间具体的关联关系,最终输出 ER 图。(考虑保证 ER 的简洁性,这里并没有把模型的属性画进来)

相关文章
|
2月前
|
XML 算法 安全
详解RAG五种分块策略,技术原理、优劣对比与场景选型之道
RAG通过检索与生成结合,提升大模型在企业中的应用效果。分块策略是其核心,直接影响准确性与召回率。本文系统解析固定大小、语义、递归、结构及LLM五种分块方法的原理、优劣与适用场景,并提供选择建议与前沿优化方向,助力构建高效可靠的RAG系统。
|
2月前
|
人工智能 JSON 安全
大模型应用开发中MCP与Function Call的关系与区别
MCP与Function Call是大模型应用中两大关键技术。MCP作为标准化协议,打通模型与外部工具的通用连接;Function Call则是模型调用外部功能的具体机制。前者如“桥梁”,后者似“工具”,二者互补协同,推动AI应用向更开放、灵活、安全的方向演进,构建“意图解析-协议传输-工具执行”的分层架构新范式。
|
2月前
|
人工智能 自然语言处理 API
全面认识MCP:大模型连接真实世界的“USB-C接口”
MCP(模型上下文协议)由Anthropic提出,是AI时代的“万能接口”,旨在标准化大模型与工具、数据源的连接。它降低开发复杂度,提升AI任务执行能力,推动智能体生态发展,被誉为AI应用落地的关键技术范式。
|
2月前
|
Java 持续交付 测试技术
生产环境发布管理
本文介绍大型团队中多环境自动化发布流程,涵盖DEV、TEST、PRE、PROD各环境职责,结合CI/CD平台实现分支管理、一键部署,并通过Skywalking等工具高效排查日志,提升发布效率与系统稳定性。
 生产环境发布管理
|
2月前
|
开发工具 git 运维
生产环境缺陷管理
git-poison基于go-git实现,通过“投毒-解毒”机制自动化追踪和管理多分支环境下的bug修复,避免人为疏漏导致的生产事故,降低协同成本,提升发布安全与效率。
生产环境缺陷管理
|
2月前
|
Kubernetes 容器 运维
物理部署图
物理部署图描述系统运行时的硬件配置与软件部署结构,展现节点、构件、物件及连接关系,帮助理解分布式系统的网络架构与运维逻辑,是实现应用与硬件协同运行的重要设计工具。
 物理部署图
|
2月前
|
存储 中间件 消息中间件
应用架构图
技术架构是将业务需求转化为技术实现的关键环节,涵盖分层设计、技术选型与系统集成。本文介绍单体与分布式架构的设计原则,包括展现层、业务层、数据层及基础层的职责划分,并阐述应用间调用关系、外部系统集成与边界定义,助力构建清晰、可扩展的技术体系。(238字)
 应用架构图
|
2月前
|
Java 大数据
ArrayList扩容机制
本文深入分析了Java中ArrayList的add及扩容机制。首次添加元素时,默认容量由0扩容至10;每次扩容为原容量的1.5倍(通过位运算提升效率),并通过ensureCapacityInternal、grow等方法实现动态扩容,同时介绍了length、length()、size()的区别与应用场景。
|
2月前
|
缓存 NoSQL Java
[ERP]SpringBoot集成Redis技术(☆)
本文介绍如何从Gitee克隆项目并运行代码,涵盖JDK、Maven等环境配置问题及应对策略。通过商品管理接口引入Redis缓存的实战需求,锻炼开发者在真实工作场景中独立解决问题、主动沟通和使用工具测试的能力,涉及git、maven、springboot、redis等核心技术。
 [ERP]SpringBoot集成Redis技术(☆)
|
2月前
|
前端开发 Java 关系型数据库
[Blog]三层架构:代码本地运行(☆)
本任务要求掌握SpringBoot、MySQL、Maven基础,耗时约2小时。需将项目本地运行,解决JDK、Maven、Idea版本等问题,并修复数据库未导入、名称不一致等bug,最终访问localhost:8080完成博客系统调试与问题排查。
 [Blog]三层架构:代码本地运行(☆)