0

I need a tool (preferably online, but at that stage I don't care anymore) which allows me to modelize relationships (similar to BPMN) which can be represented as compound graphs (though most of the times, it will be a simpler nested graph). I can't seem to achieve my goal using BPMN formalism (swimlanes are the closest but they do not allow arbitrary nesting). I am thinking to reuse UML modelization tools but I don't know enough about UML to know if UML covers my use case.

Imagine an integrated circuit which is made of chips connected with wires. So three chips : A,B,C and Chip A -> Chip B, Chip C. Each chip has input ports and output ports, and some of the output ports of A are connected to the input ports of B, some are connected to those of C. Now Chip A itself can be considered as an integrated circuit, and as such can be decomposed in another graph : Chip A :: Chip A.1, Chip A.3 -> Chip A.2. Each Chip A.1 can also be decomposed etc. This is what is called a compound graph. Each node of a compound graph can have children which are themselves graphs.

I do know about the Harel's and UML's statecharts formalism, which allows for hierarchical graphs to describe hierarchical nested state machines (hence any nested graph can potentially be expressed with statechart formalism), though I do not know any online tool which allow to draw statechart. The question is whether UML has a mechanism or tools which allow to specify a compound graph, and if so, what is the nesting mechanism?

Level 1

   -------
---|ChipA|---ChipB---
   |     |---ChipC---
   |-----|

Zoom on Chip A

-----ChipA.1---ChipA.2----   (...linked to ChipB input port
  |--ChipA.3-|         |--   (...linked to ChipC input port

An example of compound graph from the litterature :

enter image description here

4

2 回答 2

2

针对您的评论,

问题是 UML 是否有允许指定复合图的机制或工具,如果有,嵌套机制是什么?

在基础设施级别,它使用Element::ownedElement关联来表示包含。Namespace::ownedMember关联该关联的子集,类及其成员、包和嵌套包、组件及其包含的项等之间的关联也是如此。所有这些在概念上都是复合图,但不会以与您的图类似的方式呈现。

就您“由芯片组成的芯片”而言,UML 上层结构(2.4.1上层结构的第 9 节)中的 CompositeStructures 包使用这些关联来创建复合材料,或者对于构建在 UML 之上的特定领域示例,则 SysML 是为系统工程创建的 UML 方言。

系统工程框图由使用端口和连接器创建的块组成;块可以具有进一步的块网络的内部结构。连接器承载流动,可以是信息、能量或物质。

一些工厂的示例框图显示了用于在与其容器相同的图表中显示拥有元素的自定义渲染: 框图

有关详细信息,请参阅http://www.omgsysml.org/http://sysmlforum.com/sysml-faq/

sysml 工具列在http://sysml.tools/站点上。

于 2016-06-22T08:41:29.273 回答
1

从 UML 中的组件图开始。

您的芯片可以被视为组件,端口将是......好吧,端口;-)但您还应该定义某种接口(这些端口提供/需要的功能)。据我了解,箭头方向描绘了某种依赖性(因此带有箭头的芯片末端提供了一些东西,因此将具有提供的接口,而另一端将具有所需的接口和它们之间的正确连接)。

如果使用内部结构实现特定端口,您将为此使用委托连接器。

于 2016-06-22T08:19:02.497 回答