扩展用例建模查询

extend for use case modeling query

下图是收银系统的一个简单用例。 一个check-out的一般流程流程如下

  1. 收银员扫描商品
  2. 收银员select一种支付方式

    2.A.1 收银员select 信用卡支付

    2.A.1 收银员将信用卡刷到 reader

    2.A.3 付款完成

    2.B.1 收银员select现金支付

    2.B.2 收到收银台输入金额。

    2.B.3 系统显示找零给客户。

    2.B.4 付款完成

  3. 签出完成。

我想知道在这种情况下使用扩展是否有效的问题,其中任何一个都会在付款时发生。 根据我的理解,扩展意味着基本案例可以选择调用扩展。我的用例模型是否意味着有可能两种方法都没有被调用(不应该是这种情况)?

没有。这是不正确的。 Payment via ... 不是用例。这是 Make Payment (either/or) 的约束。您正在尝试使用 include/extend 进行功能分解。这也不对。避开他们。如果你需要 "order" 用例,那么使用前置条件来控制它。

另见