首页 文章

问:如何在UML状态机转换中处理多个条件

提问于
浏览
1

如何在UML状态机转换(作为保护)中处理多个条件(具有不同的布尔表达式)?

示例:
enter image description here

在这个例子中,我想在注释中描述的“登录”到“登录”的过渡中添加多个条件(尝试<3) .

如何处理这个UML兼容?

2 回答

  • 1

    简单地说(并专注于所需的步骤)

    enter image description here

    Guard 中放置一个类似上面的布尔条件 . 这可以是任何文字 . 您可以编写C样式或纯文本 . 我无论如何都是出于学术目的(我的意见) .

    注:您的图表显示 Tries = 3 ,也应该是 Guard (即 [Tries = 3] )而不是 Name .

  • 1

    这里有几个选项:

    • 你的守卫条件可以在_1590297中组合多个支票 - 就像你在笔记中所做的那样 .

    • 您可以在相同的两个状态之间进行多次转换,每个状态都有自己的条件 .

    • 您可以在州内拥有州 . 因此,在您的示例中,这三个状态可能在'Normal Operation'的超级范围内 - 然后您可以在其他文档中或通过注释进一步定义 .

    所有这些都是有效的UML语法 . 但请注意,仅仅因为某些内容有效并不意味着它会在您的编辑器中得到支持 . 例如,在编辑器中可以获得序列图的大部分功能之前很多年......

相关问题