关于UML图中Extend与Include指向外部参与者的合理性问询
UML用例图中Extend/Include指向参与者的画法问题解惑
你的判断是对的,这种画法确实不符合UML的规范要求,具体原因和正确用法如下:
Extend和Include是用例间的专属关系
按照UML官方规范,这两种关系仅用于连接用例与用例,用来梳理用例的行为逻辑拆分:Include:由基础用例指向被包含的用例,代表基础用例的执行过程中必须调用并完成被包含用例的逻辑Extend:由扩展用例指向基础用例,代表当满足特定触发条件时,扩展用例的逻辑会插入到基础用例的执行流程中
参与者与用例的正确关联方式
参与者是系统外部的交互角色,它和用例之间只能通过实线关联来表示“该角色会触发或参与此用例”,和Extend/Include没有直接关联逻辑。把这两种关系的箭头指向参与者,完全违背了UML定义的语义。如果想表达参与者触发扩展逻辑的正确做法
要是导师的意图是说明某个参与者触发了扩展用例的执行,正确的画法是:让参与者先通过实线关联到扩展用例,再由扩展用例用Extend箭头指向基础用例;或者让参与者直接关联基础用例,在基础用例的文档说明里明确触发扩展逻辑的条件即可。
内容的提问来源于stack exchange,提问作者NamelessJoe
相关产品推荐
相关产品推荐

