我正在为 EPOS 系统做一个用例模型。基本上员工和经理可以卖票,经理可以生成 X 报告、Z 报告等。
问题是,需要数据库并由管理员维护。现在,股票应该经常更新。
那么是否应该有一个名为“数据库”的辅助角色?它应该与哪些用例相关联?
另外,“时间”的次要演员是做什么用的?
谢谢
我正在为 EPOS 系统做一个用例模型。基本上员工和经理可以卖票,经理可以生成 X 报告、Z 报告等。
问题是,需要数据库并由管理员维护。现在,股票应该经常更新。
那么是否应该有一个名为“数据库”的辅助角色?它应该与哪些用例相关联?
另外,“时间”的次要演员是做什么用的?
谢谢
数据库不是参与者,它是存储哪些参与者和他们参与使用的业务事务。
时间是次要的/或间接的参与者,因为事物(门票、股票)可能会按日期变得可用或到期。时间的流逝可能会有效地触发股票或交易改变状态。
“时间”和相关更新传统上由夜间批处理处理,但也可以动态完成(要处理的定时事件队列,如果它们不是全部同时处理,效果最好)或计算(找出有效状态是什么) ,当您查询或加载记录时)。
如果数据库仅用于您的应用程序和系统,则意味着它是系统的一部分,因此无需将其作为参与者。参与者是系统外部的那些实体,系统对他们来说就像黑匣子一样。
用例应该帮助您从抽象的角度理解系统。你不必在那里解释一切。
话虽如此.. 根据系统和软件工程词汇 - ISO/IEC/IEEE 24765.2010(E)
演员
- 一个角色(相对于该动作),其中履行该角色的企业对象参与该动作。ISO/IEC 15414:2006,信息技术 — 开放分布式处理 — 参考模型 — 企业语言.6.3.1。2. 提供和/或获取 SEE 服务的组织或 CASE 工具。ISO/IEC 15940:2006,信息技术 — 软件工程环境 Services.2.2.4。3. 在 UML 中,与系统交互的系统外的某人或某物 注意指定哪个参与者启动该动作可能是有意义的。
在我看来,您可以将数据库管理员建模为参与者,并创建一个他/她执行数据库维护的用例。然后可以将任何自动脚本(例如备份)建模为假设数据库管理员角色,以描述它们与系统的连接。