首页 文章

如何绘制多阶段用例的序列图?

提问于
浏览
4

在当前系统中,一些功能/用例可能需要多个阶段才能完成整个过程 . 示例类似于用户注册,其可包含两个阶段:在数据库上插入用户记录和电子邮件激活 . 或者对于网上银行的汇款,它需要在实际交易发生之前填写转账信息和短信验证的阶段 . 我想知道如何绘制这种功能/用例的序列图 .

更具体地说,我已经使用MVC模式绘制了用户注册示例的序列图,该模式显示在底部 . 在该图中,两个阶段被红线分开 . 此外,我跳过处理故障或异常的逻辑,例如数据库中已存在的无效输入或用户名,以使其更简单 . 看来这个图中涉及的对象太多了,我应该用这种方式绘制序列图吗?或者每个阶段使用2个序列图更好?

1 回答

  • 5

    一般来说,较小的图表越好 . 如果您正在进行文档/通知目的,那么清晰度应该是您的首要任务 .

    a)分手

    在您的特定示例中,将其分解为(至少)两个序列图将是一个不错的选择,因为这些活动通常在不同的时间执行 .

    你可以看到这个的方式是:

    • 第一个图作为输入 unregistered user 并产生 unverified user

    • 第二个图作为输入 unverified user 并产生 verified user

    这样你就不必担心连接这两个图,因为它们实际上并不依赖于它们 .

    b)使用交互概述

    话虽这么说,UML有交互概览图(http://www.uml-diagrams.org/interaction-overview-diagrams.html),允许您将各种图表一起播种,因此您可以将其拆分为两个,然后以不同方式连接它们 . 或者您可以使用状态机图来跟踪用户的变异 - UML词汇表相当大,因此不需要仅限于一种类型 .

相关问题