You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

UML用例图技术咨询:数据库操作用例与外部数据库Actor判定

嘿,我来帮你梳理下这两个UML用例图的问题:

关于UML用例图的两个问题解答

1. 是否要把“Update database”“Add to database”作为用例添加?

完全没必要哦!UML用例图的核心是捕捉系统对外部参与者提供的价值功能,而非展示内部技术实现细节。“添加/更新数据库”本质是系统完成某个业务用例(比如“用户注册”)时的内部操作步骤,不是参与者(比如终端用户)主动想要触发的功能。要是把这类操作放进用例图,只会让图变得冗余杂乱,反而掩盖了真正的业务价值点。

举个实际的例子:用户只关心“成功完成注册”这个结果,根本不会在意系统背后是怎么把数据存进数据库的。所以你只需要保留“用户注册”这个核心用例就够了,数据库操作属于这个用例的内部实现环节,完全没必要单独拎出来当作用例。

2. 外部数据库要不要作为参与者?

这得分情况来看:

  • 如果数据库只是被动接收系统的数据写入、读取请求,没有主动发起任何交互(比如不会主动给系统推送数据、触发业务流程),那它算不上参与者。毕竟参与者的定义是和系统有主动交互的外部实体,这种情况下数据库只是系统的“数据存储依赖”,不需要画进UML用例图里。
  • 但如果数据库有主动行为(比如定期给系统推送数据、触发某个业务流程),那它就符合参与者的特征,可以作为一个外部参与者加入图中。不过这种场景在普通项目里很少见,大部分外部数据库都是被动提供存储服务的。

内容的提问来源于stack exchange,提问作者Ioana

火山引擎 最新活动