Project management 如何在应用程序的用例中指定参与者?

Project management 如何在应用程序的用例中指定参与者?,project-management,actor,use-case,Project Management,Actor,Use Case,我正在为应用程序设计用例图,但在指定参与者时遇到问题: 假设我们有一个人,他通过一个CID机器传递一张票据,这个CID机器将扫描他的票据,并触发应用程序的函数void savetickettidstring ID将票据的ID保存到数据库注意,CID机器和应用程序是两个分离的系统,我的工作是只处理应用程序 问题是谁是这个案子的主角?人类还是CID机器 CID机器直接使用函数void savetickettidstring ID。 虽然人类不直接使用该功能,但如果没有他,CID机器无法执行任何操作,

我正在为应用程序设计用例图,但在指定参与者时遇到问题:

假设我们有一个人,他通过一个CID机器传递一张票据,这个CID机器将扫描他的票据,并触发应用程序的函数void savetickettidstring ID将票据的ID保存到数据库注意,CID机器和应用程序是两个分离的系统,我的工作是只处理应用程序

问题是谁是这个案子的主角?人类还是CID机器

CID机器直接使用函数void savetickettidstring ID。
虽然人类不直接使用该功能,但如果没有他,CID机器无法执行任何操作,也无法触发该功能?

如果我是你,我将定义两个角色,人类和CID机器,人类将触发CID中的操作,CID将触发该功能

如果您设计了一个UML图,希望从中生成代码,就我所知,这可能不是任何选项,因为语法错误,actor不能触发actor函数

但是:如果您设计一个图表来与其他人讨论项目,那么让所有真正的参与者都参与到计划中是有帮助的,正确的语法并不那么重要

不幸的是,业务流程不是UML用例图的一部分,只是软件流程。在您的情况下,通过机器的人是您软件之外的业务流程步骤


顺便说一下,您键入了以大写字母开头的SaveTicketID,但通常函数应该以小写字母开头SaveTicketID,以显示与类的明显区别,正如大多数编码准则所建议的那样。当然,这只是定义问题。

目标是什么?如果用户点击一张票打开一个入口,那么参与者应该是人,然后用例应该是唯一一个打开的入口