UML用例图常见问题

用例图是用来描述系统功能的技术,表示一个系统中用例与参与者及其关系的图,主要用于需求分析阶段,同时它由参与者(actor)、用例(case)和容器(container) 三部分组成,并具有关联(Association)、泛化(Generalization)、包含(Include)和扩展(Extend) 四种关系。

在网上看了许多同学画的用例图,有几个共性的问题,和大家探讨一下。

1、用例图的基本画法:

用例图中人物线条图代表参与者, 椭圆形代表用例本身, 连线说明哪个参与者参与了用例,长方形表示系统边界,它定义了应用的计算机部分和操作者之间边界,如下图所示。

2、参与者与用例之间是否应该有箭头?

很多同学在画用例图的时候,都会使用箭头,但严格意义上,这种用例图是不准确的。

根据《系统分析与设计-敏捷迭代方法》和《UML Reference Manual by James Rambaugh》2本书上提供的示例,参与者与用例之间是没有箭头的。正确的画法如下:

使用不带箭头连线的原因是,参与者与用例之间是双向互动,如果画箭头应该是双向的箭头。为简化用例图,采用不带箭头的方式。

3、用例的“四轮马车”问题

我们先来看个例子理解一下,什么是用例的“四轮马车”问题,假如有一个在线商城系统,管理员可以登录后台管理商品,管理商品功能包括新建商品、修改商品信息、删除商品、查看商品。使用用例图表示时,很多同学会用下图表示:

这个是用例常见的“四轮马车”错误(即CRUD错误:Create,Read,Update,Delete)管理员的目的不是为了CRUD,他的需求是能对商品进行日常的管理。过多的增删改查,会掩盖了用户需求,而蜕变成为了关系数据库的建模。如果CRUD不涉及复杂的交互,一个用例“管理××”即可,如下图。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值