实体关系图(ERD' s)是一种UML图还是一个单独的东西?
答案 0 :(得分:24)
我有另一个想法。我认为我们应该深入了解。
当我们谈论ERD(实体关系图)时,我们谈论的是Entity Relationship Modeling。
Peter Chen(1976)首先提出首先。他有两篇关于实体关系建模的着名文章(参见first和second文章)
他谈到了实体关系建模(非实体 - 关系图)。它是 ER模型。
1975年有another paper关于建模真实世界系统。
ER建模是(见reference,第二段):
在软件工程中,ER模型通常形成为表示 企业为了开展业务需要记住的事情 流程。因此,ER模型成为抽象数据模型 定义可以实施的数据或信息结构 在数据库中,通常是关系数据库。
当我们谈论ER建模时,有许多图表常规技术。
和其他符号(见reference)
以上所有注释都用于ER建模或数据建模。
UML表示法与其他ER表示法之间没有惊天动地的区别。它们都模拟了数据模型中最重要的元素。
最后:UML是一个标准的图形工具,用于对项目的整个部分进行建模。 我们可以使用UML(类图)进行ER建模,并将它们命名为ER模型或ERD。所以我们可以说:这是我在UML表示法中的ERD。
答案 1 :(得分:6)
ERD是它自己的事情。 It's not in UML specification。您可以从链接下载规范PDF。
UML是面向对象建模的常用符号/语言,它包含多种图表类型。 ERD是数据建模(属性和关系)的图表。一些结构UML图在你可以建模的模型中非常相似,但概念是不同的。
UML图的类型:
答案 2 :(得分:2)
这是Google首次搜索:
主要区别:UML代表统一建模语言。 ERD代表实体关系图。 UML是一种流行的标准化建模语言,主要用于面向对象的软件。实体 - 关系图用于结构化分析和概念建模
答案 3 :(得分:2)
我对杰瑞克有不同的看法。没有什么可以阻止您使用UML对数据建模。请记住,UML并不是基础知识,它代表了已经存在的许多类型的图(包括ERD)的演进,并且试图对这些符号进行标准化以创建用于系统设计通信的一致语言。 / p>
ERD用于(主要)对系统的静态模型进行建模。它们毫不奇怪地在系统中显示了相关实体,并清楚说明了它们之间的关联方式。
在UML中,类图源于ER图,用来表示类之间的关系。如果您认为(以最简单的形式)类是数据和方法的组合,则通过忽略方法,您将获得数据模型(尽管其语法与传统ERD不同)。
因此,如果您选择排除方法以及模型中那些表示数据保护的方面,则ERD与UML中的类图相关。
然而,UML本身具有更广泛的用途,因为一整套建模工具可共同用于对系统的静态和动态 性质进行建模。 它包括一些图表,这些图表比您通过描述其实体(或数据)所能获得的更有助于建立一个更完整的系统模型:
答案 4 :(得分:1)
UML作为一种面向对象的表示法,对数据建模没有任何要求。很多时候,我读到有关属性作为数据列的信息。这不是真的。我们可以将简单数据或任何其他复杂对象赋予属性。
对于数据建模(数据库,关系数据库),我们使用ERD图;对于在对象系统中存储数据,我们可以使用ORM(对象关系模型),如果我们使用活动表或活动记录。
答案 5 :(得分:1)
我对安迪有不同的看法。在UML类图中,您描述了两个类之间的关系。使用ERD,您可以讨论两个以上实体之间的关系。
这就是为什么与UML类图相比,Chen-Diagrams中的基数位于相反的位置的原因。您必须考虑每个实体的关系数量。
让我们看一个简单的例子: