如何决定在建模时使用ER还是UML?

12

UML图既可以用于建模数据库设计,也可以用于建模类设计,但ER图应该只在数据库问题中使用。那么如何选择其中一种图形表示法?

3个回答

16

ERD(实体关系图) - 给出了表之间的连接方式、每个表中会有哪些字段,表的连接方式,如果是多对多关系,则是一对多关系。

UML不仅可以用于ERD,还可用于许多其他类型的图表。例如序列图、状态图等,更多地描述应用程序的功能(用户可以执行什么操作、由谁执行、何时执行、在哪个步骤之前执行以及使用哪些表格执行)而不是仅限于表的描述。

我会使用ERD来描述数据库关系,使用UML来描述操作、时间、动作等等。

参考维基百科: Entity-relationship_diagram & Unified_Modeling_Language


1
UML可以用于ERD用于的所有内容。可以通过编程从UML构建数据库模式。好处是UML也描述了ORM。个人而言,我从不使用ERD。 - Huliax

4

建议始终使用UML,因为它涵盖了ER。唯一需要使用ER的原因是如果您在使用仅支持ER的工具(例如生成创建表的DDL SQL脚本的工具),现在大多数工具都支持UML,但您仍然可能会发现有些人坚持使用ER。


3

UML是一种符号表示法,如果你与理解UML的人交流,使用UML会更有益。经典的实体关系图通常使用陈式符号表示。

个人而言,我发现在建模实体关系时一直使用UML,只在学术界使用陈式符号。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接