【问题标题】:UML Use Case/Sequence Diagram CreationUML 用例/序列图创建
【发布时间】:2017-01-25 17:44:46
【问题描述】:

我必须为我的一项任务创建一个用例和序列图。这是描述:

请考虑以下对自动气泵系统的描述。

自动加油泵允许客户使用信用卡、借记卡和现金 购买气体。不使用时,泵会显示有关每日特价和 销售量。客户要使用泵,请注明付款方式。如果选择现金 客户等到售货员启动泵。如果信用卡或借记卡是 使用时,客户通过连接到泵的读卡器刷卡。在这种情况下 输入借记卡的密码。信用卡/借记卡由以下人员验证 与信贷公司计算机通信,泵被激活。这 然后客户选择气体类型,从泵上拆下“泵喷嘴”,然后 通过抽气购买气体。客户通过更换 “泵嘴”回到泵中。如果使用信用卡/借记卡,客户的 账户收取燃油费用,客户可选择打印收据 并且交易结束。如果需要现金支付,泵将保持闲置状态,直到 售货员收到客户的付款并将泵重置为空闲状态。 每日加油站经理更新每个等级的天然气的定价信息。此外,在 每天结束时信用卡交易被发送到信用卡公司 付款。

对于用例图,我觉得它是正确的,只是在寻找反馈。

UML 图像:

Use Case Diagram

Sequence Diagram

对于序列图,场景是:“用信用卡购买汽油”

我觉得我错过了一个 GasPump 控制器实体,或者现在就可以了?车辆真的有必要吗?

【问题讨论】:

    标签: uml use-case sequence-diagram


    【解决方案1】:

    用例图

    1. “Payment”、“Gas type”、“End of day summary”不是用例的专有名称。 “更新价格信息”是。
    2. 所有“包含”实际上都是“扩展”(如果我正确理解用例的实际含义的话)。因为它们是可选的。
    3. “付款”、“结束交易”等场景看起来是独立的。这不是真的,它们包含在“购买气体”中。 (我认为“结束交易”只是其中的一个步骤,最好将其重命名为反映实际操作的内容,例如“更换喷嘴”。)
    4. “信用卡公司电脑”对演员来说不是个好名字。用例是技术中立的,参与者是一个角色,而不是集合枚举。只是“信用卡公司”。
    5. 缺少“验证卡”方案。我会在“证明偿付能力”之类的场景中包含它和“激活泵”。
    6. 不需要为借记卡和信用卡设置单独的场景,因为它不会影响用例中的任何内容。
    7. 像“计算总金额”这样的场景通常会隐藏很多惊喜和业务规则,最好有它。

    我觉得我错过了一个 GasPump 控制器实体,或者只是拥有现在的样子就可以了吗?

    这取决于您要描绘的关卡。在您的情况下,它似乎是用户目标级别,您不需要控制器。

    还有车辆真的有必要吗?

    只有当它真的做某事时,即如果它是一个演员。

    【讨论】:

    • 谢谢!所以车辆不被认为是演员是吗?还是因为它与气泵相互作用? @弗拉德
    • 车辆不交互,这是关键。此外,它可以是油桶而不是汽车。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-11
    • 2012-12-26
    • 2020-03-23
    • 2023-03-04
    • 1970-01-01
    相关资源
    最近更新 更多