关于书本示例中的UML扩展/包含的问题

关于书本示例中的UML扩展/包含的问题,uml,use-case,Uml,Use Case,在阅读有关UML的书时,我不理解以下内容: --------include---> Add new manufacturer Servoce Assistant---Add new product <--------extend----Add new product type -----------包括--->添加新制造商

在阅读有关UML的书时,我不理解以下内容:

                                      --------include---> Add new manufacturer
  Servoce Assistant---Add new product
                                     <--------extend----Add new product type    
-----------包括--->添加新制造商
伺服助手---添加新产品

首先,你需要给人们一些背景知识。您正在使用用例图。第二,我通常不使用UML进行扩展;但我会试一试的。“包含”用于模块化用例。例如,“用户登录”被大量使用,并且比在每个用例中写出步骤更容易“包括”。“Extend”试图在用例中使用泛化/继承,但我认为它不是很好用。下面是一个例子,“添加老虎”扩展了“添加动物”。再说一次,我不会说“扩展”。

首先,您需要在这里为人们提供一些上下文。您正在使用用例图。第二,我通常不使用UML进行扩展;但我会试一试的。“包含”用于模块化用例。例如,“用户登录”被大量使用,并且比在每个用例中写出步骤更容易“包括”。“Extend”试图在用例中使用泛化/继承,但我认为它不是很好用。下面是一个例子,“添加老虎”扩展了“添加动物”。再说一次,我会远离“扩展”。

托马斯,你是说而不是扩展一个类

以Lwoodyii的登录示例为例,您将有一个使用场景,其中所有内容都可以完美地工作,作为一个起点,然后您将在该场景中可能出现错误的地方向该用例添加扩展


有很多,只是google foruml用例扩展

Tomas,你的意思是而不是扩展一个类吗

以Lwoodyii的登录示例为例,您将有一个使用场景,其中所有内容都可以完美地工作,作为一个起点,然后您将在该场景中可能出现错误的地方向该用例添加扩展

有很多,只有谷歌的uml用例扩展

如果还没有uknown制造商,则使用包含的案例添加制造商。 但如果它仍然是uknown类型,有扩展吗?这对我来说毫无意义

我也不完全确定这对我来说是否有意义

UML2规范规定包括(第16.3.5节):

两个用例之间的包含关系意味着包含用例中定义的行为包含在 基本用例的行为。include关系旨在在存在项目的公共部分时使用 两个或多个用例的行为。然后将该公共部分提取到一个单独的用例中,由所有 具有此部分共同点的基本用例。由于包含关系的主要用途是重用通用零件, 基本用例中剩下的内容本身通常并不完整,而是取决于所包含的有意义的部分。这 反映在关系的方向上,表示基本用例取决于添加,而不是相反 反之亦然

所包含用例的执行类似于子例程调用。包含的用例的所有行为都是 在包含用例的执行恢复之前,在包含用例中的单个位置执行

请注意,包含的用例不是可选的,并且始终是正确执行包含的用例所必需的

和(第16.3.3节):

这个关系指定用例的行为可以被另一个用例的行为扩展(通常是 补充)用例。扩展发生在扩展使用中定义的一个或多个特定扩展点上 案例然而,请注意,扩展用例是独立于扩展用例定义的,并且是有意义的 独立于扩展用例。另一方面,扩展用例通常定义可能发生的行为 它本身并不一定有意义。相反,扩展用例定义了一组模块化行为增量 在特定条件下增加扩展用例的执行

如果在执行过程中到达第一个扩展点时扩展的条件为真 扩展用例,则扩展用例的所有适当行为片段也将被执行。如果 条件为false时,扩展不会发生

在OOD语言中,用例是相当程序化的东西。包括子程序调用。扩展是可选的过程,如条件逻辑或,其中主方法可以调用也可以不调用更具体的实现

由于用例是一个分类器,您可以在用例之间使用与类之间相同的泛化关系来表示泛化。扩展和包含表示可选和必需的子行为

如果只能从不同的地方调用Add-manufacturer,但Add-new-product-type仅在这种情况下存在,这将是有意义的。对吗?谢谢大家!

它说,每当你添加一个产品,你总是添加一个新的制造商,有时你可能会添加一个新的产品类别。它并没有说是否有任何用例是从其他地方调用的,尽管通常您只会在包含用例的情况下分离它们。鉴于现实世界中的制造商生产不同的产品,这可能是一个结构不良的例子

如果还没有uknown制造商,则使用包含的案例添加制造商。 但如果它仍然是uknown类型,有扩展吗?这对我来说毫无意义

我也不完全确定这对我来说是否有意义

UML2规范规定包括(第16.3.5节):

公司