技术开发 频道

利用UML进行实体关系建模

    分类(Categorization)

    特化是在实体上完成的,而分类则定义了关系类型上的约束条件。大多数情况下,分类是排他性的,这意味着根据实体状态的不同,一个实体要么参与关系 A 要么参与关系 B。该状态可能是一个属性值(另一种关系的存在),或是某些外部状态。

    分类不改变实体的属性。它需要数据访问和操纵,来考虑分类中指定的约束条件。

    交通工具就是分类的一个好例子。根据交通工具种类的不同,我们需要构建不同的关系。对于卡车,我们需要货物信息,而对于公共汽车,我们需要乘客姓名。这些信息将被用于不同的关系中,以便为这些关系提供有意义的上下文。

    图 10 根据范畴的不同,卡车和公共汽车中的分类与实体类型 Cargo 和 Person发生关系

    ER 方法学的表示法

    目前,ER 建模中使用了数种表示法,包括陈氏 ER、Barker ER Information Engineering (IE)和 IDEF1X,其中大部分还包含关系表示法。

    对象角色建模(ORM)表示法也是 ER 方法学的一员。它能表达非常精确和完整的业务规则,并且可以用图形阐述约束条件。不幸的是,这种详细程度需要具有丰富细节的大量图表。与 ORM 相关的问题是我们是否需要 ER 模型级的表示法精确度。ORM 表示法还很复杂,并且与其他表示法完全不同,因而那些没有使用 ORM 的项目组成员很难理解它。

    UML 是一种表示法语言,最初用于软件设计,目前软件设计已经扩展到业务和数据库设计。UML 包括从分析到实施再到部署指定任何事项所必需的元素和图表。通过使用几种图表和数十种元素,UML 还能表达不同程度的系统抽象。这是一项非常独特的功能。但是,我们不需要知道 UML 的所有细节或者成功利用 UML 进行 ER 建模所需的所有视图和表示。

    为了更好理解 UML 在 ER 方法学中扮演的角色,我们将描述 UML 如何处理前面已经提到过的 ER 建模的核心元素。

0
相关文章