ER(实体关系)建模入门指引

编辑导语:产品经理在曰常工作中需要掌握一些重要技能,比如本文说到的ER建模,在产品经理X方面X实体——关系模型的过程;本文作者详细分享了关于ER建模,我们一起来学xí一下。

ER建模(Entity Relationship Modeling)是产品经理,特别是B端产品经理需要掌握的重要技能,本文将从以下几个方面详细介绍ER建模的基础知识。

  • 什么是ER建模?
  • ER建模对产品经理有什么意义?
  • ER图的基本元素包括哪些?
  • 从产品的角度,如何绘制ER图?

一、什么是ER建模?

ER建模(Entity Relationship Modeling),即实体关系建模,是指提炼X,归纳并设计对应的实体——关系模型的过程。

ER建模最终输出的结果为实体关系图(ERD-Entity Relationship Diagram)。

对产品经理而言,ERD体现了实体、属性以及实体间的X,抽象出了X的核心特征;对开发人员来说,实体关系图显示数据库中的实体(表)以及该数据库中的表之间的关系,奠定了整个系统的框架基础。

二、ER建模对产品经理有什么意义?

  • 提升抽象、归纳能力:ER建模从系统的实体出发,要得到一个X义的实体关系模型,要qiú我们对X进行深入分析,从Xliú程、X表象中归纳并抽象出核心的实体。
  • 图形化沟通,提升效率:ER图可以帮助产品经理向开发人员传达系统主要核心实体及其关系,让开发人员准确理解需qiú,并就合理性、扩展性等问题进行深入沟通。
  • 合理建模,少走弯路:ER建模的好坏,决定了软件产品的扩展性和灵活性;ER建模不准确,有可能导致软件设计缺陷,甚至带来严重的X问题。

三、ER图的基本元素包括哪些?

ER图有三个基本元素,分别是:实体、属性、关系。

1. 实体

1)实体的定义以及符号

实际问题中客观存在的并且可以相互区别的事物或者概念称为实体,可以具体到人、对象、概念、X。

下面举几个例子说明:人(例如X)、对象(例如X)、概念(例如简介)、X(例如X)。

每个实体本身包hán多个实体成员,例如X是一个实体,具体可能有小明、小王等实体成员。

在ER图中,实体通常使用矩形表示,如下所示:

ER(实体关系)建模入门指引

2)进阶概念:弱实体与强实体

在众多的实体中,有些实体对另一些实体有很强的依赖关系,即一个实体的存在必须以另一实体的存在为前提,前者就称为“弱实体”。

比如X家长就是一种弱实体,因为只有X实体存在,家长实体才会存在。

一般情况下,产品经理只需要能够区分哪些是弱实体就可以了,不一定要在ER图中表现出来。要注意的是,强实体与弱实体的X只能是1:1或1:N。

在ER图中,弱实体通常使用双线矩形表示,如下所示:

ER(实体关系)建模入门指引

3)怎么找到实体?

实体最终源于具体的X,要想找具有X意义的实体,我们需要回归X本身,下面X两种思路,仅供参考:

方式一:思考我们的产品为哪些用户解决了什么问题。

特别是B端产品的设计,往往会涉及比较多的用户角sè,可以抽象出一部分实体。

比如,我需要为某设计一个图书馆管理系统,经调研,相关的用户角sè以及诉qiú如下:

X以上分析,我们至少可以得出以下实体:借阅者、借阅者账号、图书管理员、图书管理员账号、书籍。

方式二:结合Xliú程图去找实体。

这是一种主要的寻找实体的方式,Xliú程图往往说明了主要实体之间的交互过程,可以帮助我们快速找到相关的实体。如下图为电商用户的下单liú程:

ER(实体关系)建模入门指引

4)实体有那么多,需要全部都列完吗?

产品经理的实体建模环节,更关注核心实体;一个稍微复杂点的产品,是会涉及到很多个实体的,但就前期的需qiú分析与X抽象环节而言,我们仅需要关注几个核心的实体就可以了(往往跟核心Xliú程相关),确定了核心实体以及关系,就确定了X的整体方向。

2. 属性

属性是实体所具有的某一个特性,比如电商平台的用户可能有“用户ID”、“昵称”、“性别”等属性。

每个实体至少要有一个唯一属性(也称为主键-Primary Key),用于区分不同的实体成员。

例如就算两个用户的昵称相同,也可以X用户id来区分。

下图是一个电商平台用户可能存在的部分属性,关于属性的定义、个数需要视具体的X诉qiú而定,我们可以在具体的设计环节一步步完善,不一定要在实体关系建模中就要qiú全部罗列出来。

ER(实体关系)建模入门指引

3. 关系

两个实体之间的关系表示这两个实体以某种方式相互关联。

例如在电商平台中,当用户下单时,一个订单可以包括多种商品,因此“订单”与“商品”之间是有关系的。而这关系则在 ER 图中以连接线表达着。

ER(实体关系)建模入门指引

4. 基数

1)基数的定义以及类型

基数是定义关系所关联的两个实体的实例之间互相可以关联的个数。

常见的基数关系有:一对一、一对多、多对多。

ER(实体关系)建模入门指引

一对一的关系

ER(实体关系)建模入门指引

一对多的关系

ER(实体关系)建模入门指引

多对多的关系

理解基数X的方fǎ是从两个方向进行解读,但不管从哪个方向开始读起,都必须是1开头,例如“1个X可对应多门课程,1门课程可对应多个X”。

2)进阶概念

关于基数,上述内容已经可以满足我们产品经理的曰常使用,但如果你还想更加严谨界定基数的边界值,我们还可以使用区间来表达基数。

比如一个订单至少要包括1个商品,也可以包括多个商品。但是一个商品,可以不属于任何订单(比如没有交易的情况),也可以属于多个订单。

ER(实体关系)建模入门指引

“1..*”表示1到多个,是一种X性对应关系。

“0..*”表示0到多个,即0个或者1到多个,是一种可选对应关系。

ER(实体关系)建模入门指引

上图表示1个实体A对应0到3个实体B,“0..3”表示0到3个,“x..y”表示(x到y个,且x小于y)。

四、从产品的角度,如何绘制ER图?

ER图最早是由美籍huá裔计算机科学家陈品山(Peter Chen)发明,他创建了陈氏ER符号X。

随着实体关系建模的发展,也出现了其他符号X,下图是ER图的几种不同画fǎ。其中比较常见有陈氏符号(Chen)、压掌模型(Crow’s Foot)、UML中的类图画fǎ。

ER(实体关系)建模入门指引

图来自决胜B端知识星球

个人感觉陈氏符号与UML画fǎ更容易让常人理解,所以本文简单介绍这两种画fǎ;至于压掌模型(Crow’s Foot),大家有兴趣可以自行了解。

陈氏符号

实体:实体用矩形表示。

属性:属性用椭圆表示,椭圆内注明属性内容,若是该属性为键值属性,可以在属性下方用横线表示。

X:实体之间X菱形与直线相连,菱形内注明实体之间的X情况。

基数:菱形两侧注明基数关系。

ER(实体关系)建模入门指引

UML画fǎ

我们可以用UML类图的画fǎ来构建实体关系模型,有些朋友可能会对类图和ER图的关系有疑问。ER图是表示实体关系模型的图形,ER图的画fǎ有很多种,而UML类图的符号标准则是其中一种。

实体:实体用矩形表示。

属性:产品经理使用UML画fǎ去绘制ER图的时候,其实可以先不标出属性,因为我们在实体关系建模阶段更关注的是有哪些实体,这些实体之间的关系是什么?至于属性,我们可以在具体的产品设计中去完善。

X:实体之间X直线相连,直线两端标明基数X关系。关于基数的具体表达方式,我在上面已经做了介绍,就不赘述了。

延续上面举过的电商平台mǎi家下单简易liú程的例子,分别画出简易版的实体关系图以及进阶版(对基数关系做了更加充分的说明)。

ER(实体关系)建模入门指引

实体关系基础版,可以帮助我们快速进行实体关系建模。

ER(实体关系)建模入门指引

实体关系进阶版,更加严谨的说明了基数的X关系。

五、写在最后

笔者认为ER建模最产品经理最大的意义还是在于帮助我们抽象、归纳X本质,可以在一定程度上提升产品设计的效率与科学性。

本文只是从产品经理的角度出发,简单分享了实体关系建模的基础知识,实际上ER建模是一门很复杂的学问,需要长期的沉淀与实践。

收藏 (0) 打赏

以上内容不错,打赏支持一下!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有教程资源,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

雄发创业网 自媒体是如何赚钱的 ER(实体关系)建模入门指引 https://www.xiongfawang.com/1347.html

常见问题

相关文章

ER(实体关系)建模入门指引-海报

分享本文封面