我对 SysML 中的块的概念有点困惑。
从UML我了解到类和实例/对象之间存在区别,就像在OOP中一样。
但是,我不确定这是如何在 SysML 中实现的。我的问题:
SysML 是否区分类和实例?
假设我想描述一种通用类型的子系统,例如读卡器。我的系统应该包括多个相同(或参数化)读卡器的实例。我如何在 SysML 中最好地对此进行建模。
目前,我正在测试 SW Enterprise Architect。如果我想在这里建模类/实例,有什么特别需要考虑的吗?
谢谢你的提示。
我对 SysML 中的块的概念有点困惑。
从UML我了解到类和实例/对象之间存在区别,就像在OOP中一样。
但是,我不确定这是如何在 SysML 中实现的。我的问题:
SysML 是否区分类和实例?
假设我想描述一种通用类型的子系统,例如读卡器。我的系统应该包括多个相同(或参数化)读卡器的实例。我如何在 SysML 中最好地对此进行建模。
目前,我正在测试 SW Enterprise Architect。如果我想在这里建模类/实例,有什么特别需要考虑的吗?
谢谢你的提示。
SysML 和 UML 实例之间没有区别。在这两种情况下,实例都显示为带有下划线的名称。因此,您在 SysML 中看到的块是 UML 中的简单原型类。如果您实例化一个块(在 EA 中按住 ctrl 并将其拖到图表上并选择实例),您将得到一个具体块。例如,Car
被实例化的块变成MyMercedes:Car
(在带有下划线文本的图表上)。
如果要显示真实的读卡器,则创建多个实例。如果您有不同类型的读卡器,您可以创建不同的块,例如从基本读卡器继承(这里有不同的方法)。
你的最后一个要点太宽泛了。如果遇到问题,请阅读手册并查看 Sparx 论坛(或在此处提问)。
在 SysML 中,您有块 ~ 类和部分 ~ 属性,其中 SysML 最佳实践不会将块聚合到块,即当您描述子系统时,您会将它们显示为主块的部分(其他块的实例)。