Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Uml “如何显示”;如果;序列图上的条件?_Uml_Sequence Diagram - Fatal编程技术网

Uml “如何显示”;如果;序列图上的条件?

Uml “如何显示”;如果;序列图上的条件?,uml,sequence-diagram,Uml,Sequence Diagram,我想知道,如何在序列图上表示“if”语句 if (somethingShouldBeDone) { // Do it } else { // Do something else } 它能代表一切吗?问题是。。。在我的代码中,检查大量的条件以确定各种操作。如果我要展示动作,我想明确指出动作是由特定事件引起的 如果可能,创建解决方案的图像表示。If-else条件,在UML术语中也称为备选方案,确实可以在序列图中表示。这里有一个链接,你可以在这里找到一些关于这个主题的好资

我想知道,如何在序列图上表示“
if
”语句

if (somethingShouldBeDone) {
       // Do it
} else {
       // Do something else
}
它能代表一切吗?问题是。。。在我的代码中,检查大量的条件以确定各种操作。如果我要展示动作,我想明确指出动作是由特定事件引起的


如果可能,创建解决方案的图像表示。

If-else条件,在UML术语中也称为备选方案,确实可以在序列图中表示。这里有一个链接,你可以在这里找到一些关于这个主题的好资源


如果else条件,在UML术语中也称为备选方案,确实可以在序列图中表示。这里有一个链接,你可以在这里找到一些关于这个主题的好资源

如果粘贴

A.do() {
  if (condition1) {
   X.doSomething
  } else if (condition2) {
   Y.doSomethingElse
  } else {
   donotDoAnything
  }
}
上。它将为您生成一个图表。

如果您粘贴

A.do() {
  if (condition1) {
   X.doSomething
  } else if (condition2) {
   Y.doSomethingElse
  } else {
   donotDoAnything
  }
}

上。它将为您生成一个图表。

在Visual Studio UML序列中,这也可以被描述为片段,在这里有很好的文档记录:

在Visual Studio UML序列中,这也可以被描述为片段,在这里有很好的文档记录:

非常简单,使用Alt fragment

让我们举一个ATM机的序列图的例子

如果插入的卡有效,则提示“输入Pin”…否则提示“无效Pin”

下面是同样的顺序图


希望这有帮助

非常简单,使用Alt片段

让我们举一个ATM机的序列图的例子

如果插入的卡有效,则提示“输入Pin”…否则提示“无效Pin”

下面是同样的顺序图



希望这有帮助

在Visio中,
Alt
是否被称为其他名称?我似乎找不到itVisio本身不是一个UML建模工具。如果您想使用UML2.0,那么您需要找到一个完全实现2.0规范的好的Visio模具。网上有几个免费的模板,你可能想试试:)这里有一个看起来不错(虽然没有尝试所有的功能)除了Visio还有其他的UML工具吗。企业架构师够好吗?@Venkatamadhav我真的说不上来。我从未使用过它的全部功能,但从我在谷歌上找到的阅读资料来看,它应该很漂亮good@JamVisio 2013中有一个
可选片段
,在Visio中,
Alt
是否被称为其他内容?我似乎找不到itVisio本身不是一个UML建模工具。如果您想使用UML2.0,那么您需要找到一个完全实现2.0规范的好的Visio模具。网上有几个免费的模板,你可能想试试:)这里有一个看起来不错(虽然没有尝试所有的功能)除了Visio还有其他的UML工具吗。企业架构师够好吗?@Venkatamadhav我真的说不上来。我从未使用过它的全部功能,但从我在谷歌上找到的阅读资料来看,它应该很漂亮good@JamVisio中有一个
可选片段
2013@Gholamali-Irani您尝试过Chrome扩展吗?如果是
A.do(int条件)
--如果。。其他的否则,不可能由于一次呼叫而全部发生。流取决于条件参数。如果泽努姆能画出来那就太好了。要及时接到三个电话。@ChefGladiator我不知道我是否明白你的意思。你能在这里添加一些伪代码吗?或者你可以在网站上告诉我。当然,代码是这样的:--需要三个调用才能满足所有条件。UML序列应该显示三个调用,而不是一个。当然,活动图最好显示算法内部/@Gholamali Irani您尝试过Chrome扩展吗?如果它是
A.do(int条件)
--If。。其他的否则,不可能由于一次呼叫而全部发生。流取决于条件参数。如果泽努姆能画出来那就太好了。要及时接到三个电话。@ChefGladiator我不知道我是否明白你的意思。你能在这里添加一些伪代码吗?或者你可以在网站上告诉我。当然,代码是这样的:--需要三个调用才能满足所有条件。UML序列应该显示三个调用,而不是一个。当然,活动图更好地显示算法内部/我知道这个问题很老了,我还没有做过搜索,但它让我怀疑显示分支对于序列图是否是一个好主意。我一直认为场景中明确描述了序列的条件,因此在序列期间没有发生分支。通过描述具有自己序列图的场景变体来处理备选路径。这有点主观,所以也许我应该把它发布在Meta上,或者可能是软件工程上?我知道这个问题很老了,我还没有做过搜索,但这让我想知道显示分支对于序列图来说是否是个好主意。我一直认为场景中明确描述了序列的条件,因此在序列期间没有发生分支。通过描述具有自己序列图的场景变体来处理备选路径。这有点主观,所以也许我应该把它发布在Meta上,或者可能是软件工程上?作为一个提示,UML设计器从VS2017开始就被删除了。为了澄清,UML仍然在Visio中,只是不在VisualStudio中。作为一个提示,UML设计器从VS 2017起被删除。为了澄清,UML仍然在Visio中,只是不在VisualStudio中。