用例图:何时分解用例,何时不分解?

问题描述 投票:0回答:1

举个例子,我想为人工自动售货机画一个用例图,如下所示:

  • 自动售货机有 3 个选项:

    carbonated drinks
    tea
    pure water

  • 用户下单只能选择以上一项:

    • 如果用户选择
      carbonated drinks
      ,则用户需要选择哪个品牌:例如可口可乐或百事可乐。
    • 否则如果用户选择
      tea
      ,那么他/她必须选择糖的量。
    • 否则如果用户选择
      pure water
      ,那就这样了。
  • 选择饮料后,用户必须选择饮料的数量(有点做作)。然后机器会发出确认信息供用户确认。

I tried this but not really sure of it, don't know what to keep, what to add or what to remove..

问题是:

  • 这里的2个

    Choose the number of drinks
    Confirm
    应该独立保留为用例,还是应该与大用例合并:
    Buy a kind of drink

  • 如果要保留其中至少 1 个,我应该将它们绘制为包含

    Buy a kind of drink
    的用例还是应该将它们绘制为独立用例?

  • 我认为这 3 个用例

    Buy carbonated
    Buy tea
    Buy pure water
    Buy a kind of drink
    的离散化。对于
    Buy carbonated
    Buy tea
    ,我应该保留包括的用例:
    Choose brand
    Choose sugar amount
    还是也应该删除它们?

  • 更一般的问题:什么时候应该将做一些大用例的步骤保留为用例,什么时候不应该?这里有很多问题都是相同的,但是答案不一致。

uml use-case use-case-diagram
1个回答
0
投票

用例是关于“什么”而不是“如何”。后者进入活动并分为操作。用例仅显示正在考虑的系统为其参与者带来的附加值。 所以唯一的附加值是Sell drink,仅此而已。

我建议阅读 Bittner/Spence 有关用例的内容。他们称之为“综合”,这是正确的词。不分析,更不分解。

奇怪的是,技术人员总是想分解东西。嗯,我知道这很难学,因为我也一直在摸不着头脑。它可能如此复杂,因为它很简单。

© www.soinside.com 2019 - 2024. All rights reserved.