请看下面的例子: 1)椅子是用木头做的。2)纸是用树做的。3)沼气是由废弃物发酵产生的。( 4)沥青是通过石油精制而产生的。这些应该是组合还是依赖?
发布于 2021-10-07 23:40:07
总体而言
您可以排除UML组合:组合意味着独占的所有权。但椅子并不是唯一的木制品。
依赖不是太多了(一旦产生沼气,就不再需要浪费了)或者不够(椅子的木头是椅子的一部分;这是一种比需要了解的关系更强大的关系)。
此外,还不清楚您希望主席是一个类本身还是一个类产品的实例。
具体案例
“ of”表示与制造产品的部件之间的关系。这里的一个典型模式是物料清单。这种关系是一个简单的联系。有些人倾向于使用UML聚合,但是UML规范没有精确地定义语义,所以不要使用它来避免模棱两可。
这里有一个(非常简化的)图表:

"Made of “表示一个转换过程,其中一些原始产品在此过程中消失,另一些则被创建。纸是用纤维素制成的,纤维素是从树上提取的。但是原来的树不在纸上。
通常在流程工业,如化学品,这是一个“配方”,这是一系列的投入(废物)和操作,以获得产品(沼气)和辅助产品(发酵残渣)。在其他行业中,这是一个“路由”,即在BOM上执行的一系列操作(在本例中,BOM不仅包含前面显示的组件,而且还包含由路由中的操作转换的原始产品)。
我将不显示图表,因为这很快非常复杂,但同样,它将使用简单的关联。
最后,"made of“和"made from”都将在UML中用关联来表示。但只有你附着在它上的语义才会改变。
发布于 2021-10-06 08:40:28
我不认为任何“由”组成的是由某种静态的关系所代表的。要做一张木椅,只需在木头上做Depends。这里没有其他的关系,因为你有一些复杂的过程,把木头变成椅子。或者一棵树变成纸。或者你的其他选择。为了描述这种关系,您需要描述这个过程。这是可能的使用活动。您也可以使用UML来消除物理组件。但这会让我们远离你的问题.
你可以在这里寻找作文的答案。但即便是这些,也会引起争议。建模现实产生了一个模型。这不是现实。
发布于 2021-10-06 14:18:41
您的问题突出了本体与信息模型或应用程序设计之间的区别。例如,在概念本体(它说明了世界上必要和可能的情况,而不是观测和测量的数据格式)中,每个人都有一个母亲。在特定的数据库或应用程序中,这种知识通常是不相关的。什么东西是由什么组成的,它是如何产生的,更多的是属于概念本体论,而UML的表达能力不够强。这就是为什么使用诸如一阶逻辑(FOL)和OWL等语言的原因,以及为什么有些工具(例如我公司的工具)会在UML中插入漏洞。( UML中的一个漏洞是无法准确表示两个类的交集。)
https://stackoverflow.com/questions/69462292
复制相似问题