0

我正在尝试编写以下流程:

我描述的活动包含在两个二进制文件中。第一个接受输入一个文件,并生成几个(假设是两个)。这两个文件,加上另一个来自环境的文件,被馈送到第二个二进制文件,它将生成一个输出文件。

我想用 plantuml 来描述这一点,但文档并没有真正的帮助——它没有涉及活动的输入/输出。

我可以用 绘制文件file myFile,但我没有设法将它们链接到盒子。我应该为此使用用例图还是活动图?有人可以告诉我如何从 afile到 a画一个箭头(binary)吗?

我现在站在

@startuml
file myFile
(firstBinary)
@enduml

这并没有真正做到我想要的。

4

1 回答 1

2

我应该为此使用用例图还是活动图?

与您尝试描绘的内容最接近的图表将是具有工作产品/工件依赖关系的流程图。本质上,您的二进制文件是依赖于工件(文件)并创建新文件的进程。然而,并不是我们想要描述的所有东西都适合特定的图表类型,也不是必须的。

由于 PlantUML 使用 GraphViz 来呈现图表,因此您始终可以使用 DOT 语言直接指定这些关系。例如,

@startuml
digraph a {
    InFile1 [shape=note]
    Binary1 [shape=ellipse]
    TmpFile1 [shape=note]
    TmpFile2 [shape=note]
    TmpFile3 [shape=note]
    Binary2 [shape=ellipse]
    EnvFile [shape=note]
    OutFile [shape=note]

    InFile1 -> Binary1
    Binary1 -> TmpFile1
    Binary1 -> TmpFile2
    Binary1 -> TmpFile3

    TmpFile1 -> Binary2
    TmpFile2 -> Binary2
    TmpFile3 -> Binary2
    EnvFile -> Binary2

    Binary2 -> OutFile
}
@enduml

将导致下图。

在此处输入图像描述

DOT 并不比 PlantUML 的语言复杂,尽管当图表变大时,很好的理解肯定是有好处的。您可以在 Graphviz 的文档站点获得有关 DOT 语言的更多信息。

于 2017-05-19T06:36:34.273 回答