首页 > 解决方案 > 如何在序列图中表示通过继承的方法调用?(红宝石)

问题描述

class FirstClass < SecondClass; end

class SecondClass
  include ThirdModule 
end

module ThirdModule
  def inherited_method 
  end
end

我将如何FirstClass.new.inherited_method在 UML 序列图中表示?我想明确地表明该方法是从 ThirdClass 继承的(因为我将绘制一个平行于也使用相同继承方法的另一个序列)。

标签: rubyruby-on-rails-3umlsequence-diagram

解决方案


虽然我的 Ruby 有点生锈,但这里有一个方法。类图看起来像

在此处输入图像描述

(假设 Ruby 中的“<”运算符是继承)。ThirdModule是刻板印象的,<<module>>因为它只是某些操作的容器,而不是真正的类。这不是标准,但您需要在建模的领域中引入一些东西。

一个电话inherited_method看起来像

在此处输入图像描述

请注意,Enterprise Architect 等工具无法识别导入的操作,并且不会在消息列表中提供它们,FirstClass因此您需要手动输入。


推荐阅读