PlantUML用例图:能否在组外定义用例并纳入组中?
在PlantUML用例图中能否在组结构外部定义用例?
你希望在package、rectangle这类组结构外部先定义用例,再把用例别名加入组中,比如尝试这样编写代码:
actor Guest as g usecase "Eat Food" as UC1 usecase "Pay for Food" as UC2 usecase "Drink" as UC3 usecase "Review" as UC4 package Restaurant { UC1 UC2 UC3 UC4 } g --> UC1 UC1 --> UC2
但这种写法会触发报错,想知道是否有其他替代结构,或者是否必须把用例嵌套在组的{}内部(如下方示例):
actor Guest as g package Restaurant { usecase "Eat Food" as UC1 usecase "Pay for Food" as UC2 usecase "Drink" as UC3 usecase "Review" as UC4 } g --> UC1 UC1 --> UC2
答案
PlantUML的组结构(包括package、rectangle、partition等)不支持先在外部定义用例,再将别名放入组内的语法。
出现报错的原因是:PlantUML无法识别组块{}内单独放置的用例别名,它会把UC1这类标识符当成全新的未定义元素,和外部已定义的用例别名产生冲突,从而触发错误。
如果要将用例归类到某个组中,只能采用你提供的第二个示例的写法——把用例的定义代码直接嵌套在组的{}内部。
内容的提问来源于stack exchange,提问作者katonda
相关产品推荐
相关产品推荐

