项目流(ItemFlow)

项目流表示在连接器或关联关系中通过的项目(item)的流。项目流的类型(Type),也就是流过的项目的类型,可以是一个值类型(ValueType)、模块(Block)或信号(Signal)。

项目流是一个关系。在定义一个项目流的时候,应该把它跟两个模块连接起来,表示两个模块之间流过某种类型的项目。在这两个模块中,应该有和项目流相对应的流属性(flowProperty),而且流属性的方向和项目流的方向对应。例如,对于一个单向的项目流,作为“源”的模块中的流属性方向应该是“出”(out),而作为“目标”的模块的流属性应该是“进”(in)。

可以在模块定义图中,预先定义好两种模块之间的项目流关系。在模块定义图中,选择图形工具栏中的项目流,然后在图中连接两个模块。再通过这个项目流连接线节点的右键菜单,定义项目流的类型。之后,可以在内部模块图中定义连接器的时候,或者在模块定义图中定义关联关系的时候,使用这个项目流。也可以在定义连接器或关联关系的项目流属性时,直接增加项目流。连接器或关联关系和对应的项目流,必须两端的模块类型是匹配的。也就是必须相同,或者连接器或关联关系两端的模块是项目流两端模块的子类。

例如,如下的内部模块图中,油箱总成和内燃机之间有一个连接器属性fuelDelivery,在这个连接器中有两个项目流。定义项目的窗口如下,这个窗口通过连接器连接线节点的右键菜单“选择项目流”打开:

在这个窗口中,可以增加多个项目流,而且项目流的方向可以不一样(发送端和接收端可能是相反的)。每个方向的项目流会显示在连接器的某一端,用一个实心三角形标识,旁边显示项目流的类型。在上边这个图中,定义项目流的类型的话,先选择一个项目流,然后右键菜单“选择传递的类型”,从类型选择窗口中选择一个类型元素。也可以定义项目流对应的项目属性(item Property),这个项目属性必须是项目流的源端和目标端的公共所有者。定义方法是通过上图中项目流的右键菜单“选择项目属性”进行定义。例如下图中,这个项目属性是“ice:内燃机”和“ft:油箱总成”的公共所有者,就是“动力子系统”的一个属性。(完整的示例,参见案例解决方案“SUV产品系统方案”中的图“D.19 动力系统的内部结构”)。上图中“传递项目”的类型是“fuelSupply:燃油”和“fuelReturn:燃油”,它们是更上层的“动力子系统”的两个属性。

具有两个方向的项目流的连接器显示如下:

在关联关系中定义项目流的方法和在连接器中定义项目流的方法类似,不同的地方只是关联关系中的项目流不能定义对应的项目属性。

MBSES用户使用说明书