UML - &lt; <delegate>&gt;的建模连接到接口或其实现?

时间:2016-05-16 13:56:54

标签: uml autowired

我想将一个类的方法执行的委托描述为另一个类。但我在类中使用有线接口,并通过依赖注入找到实现。

我应该按照左边的图表对它进行建模 - 就像在课堂上说明的那样:

public abstract class ComplexClass {
    @Autowired
    private WiredInterface wiredInterface;
    //other stuff

    public Object doSomething {
        return Object wiredInterface.doSomething();
    }
}

通过注入的实现 - 右边的图表?

UML <<delegate>> connector modelling

我找到了委托here的一个例子(在Sparx系统UML教程中),它指向一个接口。这对我来说很有意义,但在我得到的其他一些文章中,则是另一种方式。请告诉我,这里有什么更合适的方法。

1 个答案:

答案 0 :(得分:2)

Superstructes 2.5说明如下:

  

委托连接器是一个连接器,它将端口链接到拥有的EncapsulatedClassifier中的角色。它表示请求的转发(操作调用和信号)。到达具有委托连接器的端口的请求将传递给这些目标以进行处理。

     

委托连接器可用于建模行为的层次分解,其中EncapsulatedClassifier提供的服务最终可以通过嵌套在其中的多个级别的服务来实现。

     

作为ConnectableElement,端口的有效提供的接口(见11.2.3)是其提供的接口,有效的所需接口是其所需的接口。但是,对于委派端口,即位于委托连接器末端且不在角色上且不是行为端口的端口,有效提供的接口是其所需的接口,并且其提供的有效所需接口是其提供的接口。因此,委托端口表现为连接,好像它有一个内部“面”,它是外部“面”的共轭。

所以我会把它看作“委托转到界面”。

N.B。:如果编辑器正确解释其含义,我不介意使用委托实施的模型。