用例图

用例图回答「谁用这个系统、能做什么」。需求分析开头放一张用例图,功能范围一目了然。

hajimicode.cn
用例图操作界面

角色与用例

小人图标 + 椭圆用例规范画法

包含扩展

include / extend 虚线标注

系统边界

边界框自动绘制

快速布局

用例环绕排列不交叉

产品能力

1

参与者与用例

小人图标表角色,椭圆表用例,系统边界框自动绘制。

2

包含与扩展

include / extend 关系虚线箭头标注规范。

3

快速布局

用例自动环绕排列,角色与用例连线不交叉。

用例图功能面板

使用步骤

  1. 1

    识别参与者(角色)

  2. 2

    列出系统用例并归入边界

  3. 3

    连接角色与用例、标注包含扩展关系

详细介绍

用例图回答什么问题

用例图描述「谁(参与者)用这个系统做什么(用例)」,是需求分析第一张该画的图。它的作用是界定系统边界和功能范围,让开发方和评审方对「系统要做哪些事」达成一致。用例图不描述处理流程,流程细节交给活动图或流程图。

用例图回答什么问题(用例图界面示意)

参与者与用例的识别

参与者是与系统交互的外部角色,可以是人(学生、管理员),也可以是外部系统(支付网关、短信平台)。用例是参与者要完成的一个完整目标,命名用动宾短语(「提交订单」「查询成绩」)。判断粒度的经验标准:一个用例应该是一个参与者可以独立完成的目标,太细会变成操作步骤,太粗会变成模块名。

参与者与用例的识别(用例图界面示意)

包含、扩展与边界

多个用例共用的子流程用 include 提取(比如「身份验证」),可选或异常分支用 extend(比如「订单超时取消」)。系统边界框把用例圈起来,参与者放在框外。画完自查:参与者是否都在边界外、用例之间有没有出现箭头互指的混乱关系。

包含、扩展与边界(用例图界面示意)

适用场景

需求分析的功能界定
系统概述章节配图
UML 课程作业

交稿前核对清单

按这份清单过一遍,能挡掉答辩时最常见的格式扣分点。

  • 用例是否都是完整目标(动宾短语)
  • 参与者是否都在边界框外
  • include / extend 用法是否正确
  • 用例粒度是否合适(不过细过粗)
  • 命名风格是否统一
  • 边界框是否画出系统范围

配套教程

UML 用例图怎么画:参与者、用例与关系一次分清

分清参与者、用例和包含 / 扩展关系,画出需求分析章节里能站得住的用例图。

阅读教程

常见问题

用例图要画多细?

画到「参与者能完成的目标」粒度即可,比如「提交订单」「查询成绩」。不要把点击按钮的操作步骤写成用例,那是活动图的内容。

参与者只能是人吗?

不是。外部系统也是参与者,比如支付网关、短信平台、第三方登录。用小人图标表示人,用矩形加 «actor» 表示系统参与者。

include 和 extend 有什么区别?

include 是「每次都会执行的公共子流程」(如身份验证),必须执行;extend 是「可选或异常分支」(如订单超时取消),条件触发。

系统边界框必须画吗?

建议画。边界框明确系统范围,参与者放框外、用例放框内。没有边界框容易被问「这个功能做不做」,边界清晰可以减少范围争议。

用例命名有什么规范?

用动宾短语(「提交订单」「导出报表」),不要用名词(「订单管理」)也不要写太长。同一张图的命名风格保持一致。

用例需要写详细描述吗?

图上只放名称,详细描述(主流程、扩展流程、前置后置条件)写用例规约文档。论文里可以挑 2-3 个核心用例写规约作为补充材料。

免费开始使用 用例图

图表交给工具,时间还给论文。

免费开始