【软件工程】UML用例图介绍和实例说明

文章目录

1、什么是用例图

用例图(Use Case Diagram)是统一建模语言(UML)的一种图,它主要用于描述系统的功能和用户(参与者)与这些功能的交互。用例图是需求分析的重要工具,它帮助开发者和用户理解系统的功能,并在此基础上设计出符合需求的软件系统。要画好一张用例图,需要把握三个元素:参与者(Actor)、用例(Use Case)和用例间的关系(Relationship)。

2、用例图的作用

用例图是需求分析中的产物,主要作用是描述参与者和用例之间的关系,帮助开发人员可视化的了解系统的功能。借助于用例图,系统用户、系统分析人员、系统设计人员、领域专家能够以可视化的方式对问题进行探讨,减少了大量交流上的障碍,便于对问题达成共识。

用例图可视化地表达了系统的需求,具有直观、规范等优点,克服了纯文字性说明的不足。

3、怎么画用例图

  1. 确定参与者:确定系统中的各种参与者,即与系统交互的各种角色或实体。参与者可以是人、其他系统、设备或外部组织。
  2. 识别用例: 识别系统中的各种用例,即系统提供给参与者的各种功能或服务。用例通常描述系统的一个特定的功能或用户目标。
  3. 绘制参与者和用例之间的关系: 在图中绘制参与者和用例之间的关系,表示参与者与系统之间的交互。一般来说,用例会被绘制为椭圆形,而参与者会被绘制为人的图标或者简单的框。
  4. 添加关系: 添加关系表示参与者与用例之间的交互。常见的关系包括包含(包含关系)、扩展(extend关系)、泛化(generalization关系)。
  5. 标注用例: 对每个用例进行标注,描述其名称和简要描述。

4、三要素说明

  • 参与者
    UML中用一个小人图形表示参与者
    参与者本身并不属于系统结构之中,位于系统之外
    参与者不一定是人,也可以是另一个外部的系统、环境等
  • 用例
    UML中使用一个椭圆形表示用例
    每个用例在文档中都需要进行详细说明(包含用例名称、用例的参与者、用例的进入条件、用例的离开条件、流程、特殊需求)
  • 关系
    用例之间的关系只要包括三种,分别是扩展、包含和继承(泛化)
    扩展关系在UML中用<< extends >>和箭头表示
    包含关系指一个主用例包含子用例。包含关系常用于子用例频繁被使用的情况
    处于继承关系中的用例在不同抽象层,其中被继承的一方是继承的一方更概括抽象的概念

5、实例说明

相关推荐
摸鱼仙人~12 小时前
Vue 应用完整启动链路
前端·vue.js·软件工程
郝学胜-神的一滴12 小时前
C++20模板元编程 02:吃透模板基础核心四大核心知识点
开发语言·数据结构·c++·程序人生·软件工程·visual studio
架构谨制@涛哥13 小时前
知识工程-4.超越RAG:OKF会如何取代矢量数据库吗?
人工智能·软件工程·软件构建·知识图谱
nagualky12313 小时前
AI Agent上线后怎么升级?先建立一套可回滚的变更控制
人工智能·机器学习·语言模型·软件工程
盖伦发发14 小时前
SpringCloud Alibaba Sentinel 教学:限流、熔断、降级、线程/信号量隔离、活动过载保护
后端·软件工程
Daorigin_com1 天前
从“出海合规”到“全域合规”:道本科技用数字底座重构企业合规的逻辑
软件工程·团队开发·软件构建·需求分析·个人开发·设计规范·结对编程
盖伦发发1 天前
代码实现前流程深度梳理-需求拆解, 架构与设计
软件工程
盖伦发发1 天前
MySQL InnoDB事务完整教程|ACID、MVCC、隔离级别、事务控制
经验分享·后端·spring·软件工程
西瓜太郎12342 天前
外层模型卡片与分组详情成功率不一致,应该怎么排查?
前端·typescript·go·软件工程·react
郝学胜-神的一滴3 天前
C++11 工程级应用 12:编译期类型魔法,干掉重复与臃肿的代码
开发语言·数据结构·c++·软件工程·visual studio