【问题标题】:Enterprise Architect object diagram refactoringEnterprise Architect 对象图重构
【发布时间】:2013-01-18 16:09:17
【问题描述】:

我已经创建了类图。 每个类都有其属性和操作。

然后我创建了对象图。 在这张图上,我放置了我的类的实例。我为每个属性定义了运行状态。

在几次迭代中,我们对一些属性进行了重命名、弃用或删除。 有没有办法以正确的方式重构类图?所以当我在类图中重命名一个类的属性时,它在对象图中也会改变(这个类被实例化的地方)? 我认为 EA 中应该有某种重构功能,因为重命名只是重构任务之一。

我使用 Sparx Enterprise Architect 8.0

【问题讨论】:

  • 你用的是哪个uml图软件?
  • Sparx 企业架构师

标签: refactoring class-diagram enterprise-architect object-diagram


【解决方案1】:

EA 实际上会为您做到这一点。只需先打开您的对象图。然后在项目浏览器中选择您的类并将其拖到您的对象图上。然后 EA 会询​​问您如何粘贴它。选择“实例(对象)”。之后对类所做的任何更改都应立即反映在任何实例(对象)中。我用一个名为“class”的类创建了一个测试用例。实例化后,我将 int 属性从“sdf”重命名为“sdff”。 EA 更改了相应的对象属性。还自动从实例中删除了一个已删除的属性。

使用 EA 10 测试(我没有安装 v8,但很可能以相同的方式工作)。

【讨论】:

  • 据我所知,这也适用于 v8.0。使用它有助于避免冗余。
  • 我希望它能够以这种方式工作,但事实并非如此。我会在 10 和 8.0 版本中再次检查
  • 看来我缺少 smt。我在新项目中尝试过,在重命名类的属性后,它在对象中没有改变。你能把你的项目贴在某个地方吗?当我重命名类中的属性然后转到对象 runstate(ctr+shift+r) 时,它会显示一个旧属性,另外它还会显示一个新属性
  • 您是否在 EA 10 中尝试过相同的方法来排除版本问题的可能性?您可以从 Sparx 下载免费试用版。我现在已经在 EA 9.1 中创建了演示,这是我现在可以得到的最旧的演示,你可以在这里找到它:dropbox.com/s/iw20ospsgy948yq/objectTest.eap 请查看符号 :Class1,它指示对象是哪个类的实例。
  • link 我已经完成了以下操作:通过单击 ctr+shift+r 设置对象 myObject 的运行状态,并设置 sdff = 123。之后我转到 Class1 并将其属性重命名为 sdff到sdff1。你猜什么?它没有反映 myObject 中的这种变化。现在您可以去设置 myObject 的运行状态并看到它有两个属性(即使 Class1 只有一个)。在回复的开头查看我的 .eap 项目。我错过了smt吗?想试试 IBM Rational Software Architect,但是太慢了,以后可能会
猜你喜欢
  • 1970-01-01
  • 2013-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-23
  • 1970-01-01
  • 1970-01-01
  • 2017-03-22
相关资源
最近更新 更多