我有一个由以下组件组成的系统:
- 用户可控制的移动的应用程序。用户可以登录,创建帐户,然后连接到镜像,之后他们可以修改模块设置并保存修改。
- Firebase作为系统的数据库和后端。
- 一个控制魔镜的REST API。当用户与它关联时,API会从Firebase请求JSON参数并将其应用到镜像。如果不存在关联的用户,则镜子显示QR码。
我尝试了这个设计:
我试图弄清楚主角是User
,Firebase
是次要角色。但它看起来很复杂,我也不太确定,因为最终用户只关心改变智能镜子的状态。因为我是UML的新手,我想知道这是不是该走的路?
1条答案
按热度按时间gojuced71#
根据UML规范:
用例定义了主题提供的行为,而不参考其内部结构。这些行为涉及参与者与主体之间的交互,可能导致主体的状态以及与其环境的通信的改变。
这意味着,一旦你基于系统的内部设计分析用例或参与者,你就走上了错误的道路。
你的用例应该关注为用户增加的价值,而不是技术解决方案:
当一个用例应用于一个主体时,它指定了该主体执行的一组行为,这产生了一个可观察的结果,该结果对参与者或该主体的其他利益相关者有价值。
考虑到actor可以是system,如何检查
FireBase
是否是actor?Firebase不符合这些条件。所以走那条路可能不是个好主意。