首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在PlantUML序列图中绘制一个参与者内部的另一个参与者?

如何在PlantUML序列图中绘制一个参与者内部的另一个参与者?
EN

Stack Overflow用户
提问于 2019-12-15 02:31:41
回答 2查看 774关注 0票数 1

合流+植物,https://plantuml.com/sequence-diagram

代码语言:javascript
复制
@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response

Alice -> Bob: Another authentication Request
Alice <-- Bob: Another authentication Response
@enduml

如何在爱丽丝的盒子里画克里斯?所以爱丽丝的盒子里有克里斯的盒子。谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-18 00:23:52

使用框,

这是https://plantuml.com/sequence-diagram文档中的示例

代码语言:javascript
复制
@startuml

box "Internal Service" #LightBlue
    participant Bob
    participant Alice
end box
participant Other

Bob -> Alice : hello
Alice -> Other : hello

@enduml

它适用于我的简单情况。

票数 1
EN

Stack Overflow用户

发布于 2019-12-16 18:29:30

我不认为使用PlantUML可以在其他参与者内部绘制参与者。

不过,更重要的是:它不符合UML。UML序列图中的参与者是原子的,没有“子参与者”。

但我有一种强烈的感觉,你可以通过一个单独的参与者来表达你的想法,这个参与者叫做"Chris“,被"Alice”调用。你可以使用PlantUML提供的不同参与者声明来演示他们的角色(例如,如果"Alice“是他们在系统中的角色,你可以将”Alice“设置为控制器," Chris”设置为接口),这对图的受众理解Chris正在做什么很重要(即,使用白盒方法查看Alice)。然而,如果你的听众理解Alice有执行她的部分活动的子组件(即,对Alice的黑盒方法)这一点并不重要,那么在我看来,根本没有必要提到Chris。

因此,如果您必须创建一个UML图,上面的内容可能会对您有所帮助。如果您不必将您的图称为"UML序列图“,那么您可以随心所欲地绘制(除了使用特定于语言的建模工具,如PlantUML)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59338007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档