如何在UML组件diagam中显示组件提供的静态方法?

时间:2017-04-02 18:08:40

标签: uml

组件可以有一个提供的界面,可以用球表示法显示,或者实现对<<interface>>的依赖。但是如果组件提供静态方法呢?

给定一个通过公共静态mehtod`操作提供其功能的组件MyComponent,以下是一个正确的UML表示吗?

+---------------------+                  +---------------------------+
|    <<component>>    |   <<realize>>    |          AClass           |
|     MyComponent     |----------------->|---------------------------|
|                     |                  |+operation()    <<static>> |
+---------------------+                  +---------------------------+

或者AClass是否应该用<<interface>>刻板印象标记,即使它没有作为编程语言中的接口实现?毕竟,有些语言没有接口构造。

2 个答案:

答案 0 :(得分:0)

并非每个构造都受UML中的规则控制。所以你有相当大的自由度。特别是在对静态编程语言进行建模时(就像在具有大量C编程的嵌入式系统中一样),您需要设置自己的规则来表达事物。因此,基本上没有任何问题。您应该在您打算使用此构造的域的建模规则中简单地描述此构造。可能我会将AClass定型为<<interface>>,因为暴露了一些公开方法的事实比它被实现为静态的事实更重要。

答案 1 :(得分:0)

组件元素被定义为UML上层结构中的专用类元素。您可以将它用作标准类元素。您可以定义所有标准功能(操作,属性,接收)并连接关联。如果您正在使用uml工具将组件显示为构造型类(&lt;&gt;),那么您将看到所有已定义的功能。