1

在 UML 组件图中对架构进行建模时,如何同时显示连接器的各种属性?喜欢

  • 业务对象信息流(A->B、B->A、A<->B)
  • 请求/响应方向
  • 同步/异步行为

我知道其他图表类型,如序列图。但是,让这些信息在组件图中可见是有价值的。

除了关联(仅显示组件已连接)或“棒棒糖”(请求/响应)之外,还有什么可能?

4

3 回答 3

3

首先,不要尝试使用类图上的连接器来解释这些动态协作。

类图上箭头连接器的方向只是指定谁知道谁。这意味着,类之间的依赖关系。使用这些箭头,您可以传达哪些类需要哪些其他类,但您不必解释这些类之间的协作动态如何。这就是 UML 动态图的用途。

从你的类图开始,这是系统的静态视图,然后添加一些动态图。

作为动态图,连同最常见的序列图,您还可以使用:

  • 活动图
  • 状态图
  • 协作图

每个都有自己的兴趣点,主要策略是重用类图中定义的一些对象来描述特定场景。

对于系统上的每个“有趣”场景,您应该制作这些动态图之一来描述您在类图中指定的对象之间发生的情况。

通常,每个用例将由一个类图和一个或多个动态图来描述。所有这些设计信息一起称为用例实现,因为它们描述了在构建代码时将使您的用例真实的设计。

查看Fowler 的 UML Distilled以获得对使用 UML 的设计工作流程的简明但出色的解释。

于 2008-09-24T08:08:52.093 回答
0

您可以使用信息流关系,如 UML 上层结构的第 17.2 节所述:

信息流以一般的方式描述了系统中信息的流通。它们没有指定信息的性质(类型、初始值),也没有指定传递此信息的机制(消息传递、信号、公共数据存储、操作参数等)。它们也没有指定序列或任何控制条件。其目的是,在详细建模的同时,表示和实现链接将能够指定哪个模型元素实现指定的信息流,以及如何传达信息。

于 2008-09-24T22:51:38.853 回答
0

您可能希望使用序列图而不是类(即组件)图。

如果你想坚持静态图,你可能还想考虑将 << sterotypes>> 添加到各种连接器,甚至使用关联类

如果可能,您可以使用序列图中的连接器来连接组件图中的分类器(例如,同步/异步消息传递箭头)。

于 2008-09-24T07:59:17.220 回答