【问题标题】:How to determine non-human actors of a use case?如何确定用例的非人类参与者?
【发布时间】:2011-03-14 02:59:07
【问题描述】:

我刚刚学习 UML,并且正在质疑如何正确定义参与者。我知道演员在系统中扮演角色,我在确定人类演员时没有问题。我的问题是如何确定系统中的参与者是哪些非人类的外部组件。

例如,在家庭自动化系统中,房主和系统安装人员将成为参与者。将门传感器或咖啡机命名为演员是否正确?这些组件接收来自主计算机模块的信号,并且可以编写用例以执行对它们执行的操作(即打开/关闭咖啡机)。

主计算机/服务器是“系统”还是系统由计算机/服务器和所有组件(照明模块、咖啡机、门传感器)的集合组成?

【问题讨论】:

    标签: uml


    【解决方案1】:

    我认为你必须首先定义系统的边界,这样会更容易理解外部参与者,但请记住,参与者通常被视为黑匣子。

    例如,如果自动化系统发现食品供应不足并需要补货,它可能会启动在线服务订单;在这种情况下,接受此类订单的在线系统是参与者,您不需要知道它将如何处理订单,您作为自动化系统的开发人员需要知道它的公共接口才能与之交互。

    参与者是与您尝试开发的系统交互的人或事物(另一个系统)。更正式地,参与者启动用例。

    【讨论】:

      【解决方案2】:

      @Stef - 参与者还可以协助主要参与者实现用例的既定目标。您的示例中的在线服务就是这种情况。在线服务不会在这里启动任何用例,但在接收订单时,它会成为 Order Food Supplies 用例的次要参与者。

      【讨论】:

        猜你喜欢
        • 2014-07-10
        • 1970-01-01
        • 2019-10-07
        • 2015-12-28
        • 1970-01-01
        • 2010-09-20
        • 1970-01-01
        • 2014-08-08
        • 1970-01-01
        相关资源
        最近更新 更多