UML 中的依赖关系

在 UML 中,如果一个元素(客户)使用或者依赖于另一个元素(供应者),那么这两个元素之间就存在依赖关系。在类图、组件图、部署图和用例图中,可以使用依赖关系来指示更改供应者就可能需要更改客户。

还可以使用依赖关系来表示优先顺序,即,一个模型元素必须优先于另一个模型元素。

通常,依赖关系没有名称。

如下图所示,依赖关系在图编辑器中显示为一条从客户指向供应者的带开口箭头的虚线。

名为 Client 和 Supplier 的两个类通过一条从客户指向供应者的带开口箭头的虚线连接起来。

依赖关系的类型

因为依赖关系可以表示多种不同类型的关系,所以关键字或构造型说明依赖关系的准确性质。

依赖关系的类型 关键字或构造型 描述
抽象 «abstraction»、«derive»、«refine» 或 «trace» 使在不同抽象级别或者从不同视点来表示同一概念的两个模型元素或多组模型元素相关
绑定 «bind» 将模板自变量连接至模板参数以根据模板来创建模型元素
实现 «realize» 指示客户模型元素是供应者模型元素的实现,而供应者模型元素是规范
替换 «substitute» 指示客户模型元素替代供应者;客户模型元素必须遵照供应者模型元素建立的合同或接口
使用 «use»、«call»、«create»、«instantiate» 或 «send» 指示一个模型元素需要另一个模型元素才能完全实现或执行操作
注: 诸如扩展关系和包含关系等多种关系使用与依赖关系的连接器相似的连接器,但是未考虑依赖关系。

使用依赖关系

可以对模型添加依赖关系以实现下列目标:

示例

在电子商务应用程序中,因为 Cart 类使用 Product 类作为“添加”操作的参数,所以 Cart 类依赖于 Product 类。在类图中,依赖关系是从 Cart 类指向 Product 类。因此,如下图所示,Cart 类是客户,Product 类是供应者。

这说明了前一段中所描述的示例。

以上关系指示更改 Product 类就可能需要更改 Cart 类。

相关任务
在 UML 图中指定关系

反馈