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

简介: 本文介绍如何通过四色原型法构建领域模型,并逐步推导出ER图。利用MI(时标性)、PPT(参与方-地点-物品)、Role(角色)和DESC(描述)四类原型,结合风控系统案例,从业务流程中提取实体与关系,最终形成清晰的数据架构模型,指导数据库设计。

数据架构重要的输出是数据-实体关系图,简称 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 的简洁性,这里并没有把模型的属性画进来)

相关文章
|
12月前
|
存储 SQL 人工智能
阿里云ODPS 使用实践的深度总结
本内容深入解析ODPS在大数据实践中的核心价值与挑战,涵盖分布式架构、流批一体、成本控制等关键技术,结合制造业、营销等场景案例,展示从数据治理到智能决策的跃迁路径,并展望未来边缘协同、AI平民化等前沿方向。
619 2
|
8月前
|
开发者
业务架构图
本文介绍了业务架构图的核心概念与绘制方法,涵盖业务定义、架构域分类、分层分模块分功能的要义,并结合实例说明其在产品设计中的应用价值。
|
8月前
|
负载均衡 应用服务中间件 Nacos
Nacos配置中心
本文详细介绍Nacos作为配置中心的实现原理与实战应用,涵盖配置管理、热更新、共享配置及优先级规则,并演示集群搭建与高可用部署,提升微服务架构下配置的动态管理能力。
|
8月前
|
Java Spring
1. 整合Logback,滚动记录+多文件
`logback-spring.xml` 是 Spring Boot 项目的日志配置文件,支持按级别、模块分离输出日志,包含控制台、文件滚动等配置,并可通过 `LogProxy.getLogger()` 获取指定名称的日志实例,实现精准日志管理与追踪。
|
8月前
|
缓存 Java 数据库连接
1.常见配置
本文介绍了MyBatis的核心配置机制,包括属性加载优先级(方法参数 > resource/url > properties元素)、常见配置项如缓存、延迟加载、执行器类型等,并详解了多环境配置方式及事务管理(JDBC与MANAGED)的使用场景,适用于数据库连接与事务控制的灵活管理。
|
8月前
|
存储 NoSQL 关系型数据库
4-MongoDB索引知识
MongoDB索引基于B树结构,可高效支持查询,避免全集合扫描。包括单字段、复合、地理空间、文本及哈希索引,分别适用于排序、多条件查询、位置搜索、文本检索和分片场景,显著提升查询性能。
|
8月前
|
安全 Java 数据安全/隐私保护
2.OAuth2.0实战案例
本文介绍了基于Spring Boot与Spring Cloud构建OAuth2授权服务的完整流程,涵盖父工程搭建、资源服务器与授权服务器的创建、核心配置类编写及四种授权模式(授权码、简化、密码、客户端)的测试验证,实现安全的分布式系统认证授权。
 2.OAuth2.0实战案例
|
8月前
|
存储 JSON NoSQL
3-MongoDB常用命令
本文介绍如何使用MongoDB存储文章评论数据,涵盖数据库与集合的创建、删除,以及文档的增删改查操作。内容包括:使用`use`创建articledb数据库,通过`insert()`插入评论文档,利用`find()`查询数据并支持投影与排序,结合`limit()`和`skip()`实现分页,以及使用`update()`和`remove()`进行更新与删除操作,全面讲解MongoDB基本CRUD语法及注意事项。
|
8月前
|
前端开发 程序员
常见注解及使用说明
本文介绍了SpringMVC中@RequestMapping注解的作用与原理,通过注解将HTTP请求映射到控制器方法,实现前后端接口路径的对应,并简要解析其底层机制及衍生注解的应用。
 常见注解及使用说明
|
11月前
|
存储 人工智能 API
阿里 Qoder 新升级,Repo Wiki 支持共享、编辑和导出
Qoder 是阿里巴巴推出的 Agentic 编程平台,集成顶尖编程模型,具备强大上下文工程能力,可一次检索10万代码文件,大幅提升软件开发效率。其 Repo Wiki 功能自动生成结构化文档,支持共享、编辑与导出,助力知识沉淀与团队协作。

热门文章

最新文章