系统与自身交互的用例的参与者是什么?

What actor for a use-case of a system interacting with itself?

我正在创建一个用例图,系统与自身交互。例如,它是一个病人监护系统,可以读取信息并将其馈送到监测站。

将用例的主要参与者设为“System”会不会太模糊或太宽泛?我应该详细说明并指定系统的哪一部分是那个演员吗?

让西斯特姆来当演员是再好不过了。查看类似问题:

如果您想编写更详细的用例规范 - 您必须更深入地编写第二组附加用例 under-the-sea/function 级别。当然,这意味着您必须引入新的参与者,将系统分解成单独的组件。

用例图的用途是什么?

用例图旨在展示主题如何带来与其[=相关的有用功能42=]演员。每个用例都对系统的参与者或其他利益相关者具有一定的价值。
根据 UML 2.5 规范:

Each UseCase specifies some behavior that a subject can perform in collaboration with one or more Actors. UseCases define the offered Behaviors of the subject without reference to its internal structure.

An Actor models a type of role played by an entity that interacts with the subjects of its associated UseCases (e.g., by exchanging signals and data). Actors may represent roles played by human users, external hardware, or other systems.

所以原则上,系统本身并不是它自己的演员。 Actor应该对应一个独立于系统表达的角色。请注意,我的措辞并不排除系统自己完成这个角色。

这对您的自交互系统意味着什么?

因此,将演员标记为“系统”是一个非常糟糕的主意。 Actor应该对应一个独立于系统表达的角色。例如,您可以考虑一个演员:Supervision system(可能是另一个系统,或系统本身):

另一种可能性是深入挖掘细节:

A subject of a UseCase could be a system or any other element that may have behavior, such as a Component or Class.

所以你可以从子系统的角度展示用例,例如有一个主题 Measurement Subsystem 和一个演员 Monitoring Subsystem:

你真正想代表什么?

内省用例可能是图表选择错误的症状。

您可能对系统如何为用户的目标做出贡献以及它与外部环境的关系不太感兴趣,而对系统的内部更感兴趣。在这种情况下,请检查 activity, sequence or communication 图表是否不能更好地满足您的需求。