【发布时间】:2018-06-03 12:01:17
【问题描述】:
当我在寻找系统的参与者时,我对“外部实体”的含义感到困惑。
例如,如果案例研究是一台洗衣机,那么是否存在为机器提供电力的演员“权力”? “权力”是外部实体吗?
【问题讨论】:
标签: uml use-case-diagram
当我在寻找系统的参与者时,我对“外部实体”的含义感到困惑。
例如,如果案例研究是一台洗衣机,那么是否存在为机器提供电力的演员“权力”? “权力”是外部实体吗?
【问题讨论】:
标签: uml use-case-diagram
SysML 比 UML 为您提供更好的服务,尽管有模仿 SysML 的 UML 配置文件。在 SysML 中,您通过连接到 Block 的 Port 供电。有几个使用 SysML 的示例(我发现this one,但可能有更好的教程)。所以我的建议是你看看SysML published by OMG。
【讨论】:
在UML中,Actor的定义是:
指定用户或任何其他系统扮演的角色 互动与主题。 Actor 对与主体交互的实体所扮演的角色类型进行建模(例如,通过 交换信号和数据),但它是主题之外的。 (OMG 定义)see reference
当我们对任何系统进行建模时,主题将视为任何事物。 A module, A component, A subsystem, even a use case and etc. 因此,对于主体外部并与主体交互的所有事物都可以成为演员。
因此,Actors 有 3 种类型,应该在主体外部:
示例 1:假设我们正在建模 ATM。所以主题是ATM。因此,客户(来自主体外部)与主体交互。那么客户可以是一个演员。
示例 2:软件系统使用 Google API。因此,如果假设主题是 Google 系统,那么与 Google 交互的其他软件也可以是参与者。
示例 3:假设我们正在对系统中的一个模块进行建模。所以,主题就是那个模块。来自(我们模块的)外部的另一个模块可以与我们的模块交互并且可以是参与者。
示例 4:我们正在建模并专注于一个用例。所以,主题就是这个用例。来自我们用例外部的另一个用例与我们的用例交互(例如包含关系)。所以其他用例可以成为我们用例的参与者
示例 5:我们正在建模洗衣机,洗衣机是我们的主题。任何从主题外部启动机器的客户都可以成为我们主题(洗衣机)的参与者。
示例 6:我们正在为洗衣机内部建模(就像它是电机引擎)。所以马达引擎是我们的主题,而力量在外部。所以 Power 可以成为我们系统的参与者(洗衣机内部电机引擎)
最后:主题的含义与主题观察者的观点有关。在我们在项目中确定了 Subject 的含义之后,External the Subject就可以很容易地确定了。
【讨论】: