【UML】- 用例图(结合银行案例解释其中的奥义)

news/2024/11/6 3:32:52 标签: 用例图, UML

目录

一、相关介绍

作用:

组成:

关系

二、使用具体银行案例解释各组成部分的含义

1、系统

2、参与者

3、用例

4、关联关系

5、扩展关系

6、泛化(继承)关系

三、成品


一、相关介绍

作用:

用例图可以描述一个系统工作的基本流程

组成:

用例图包括四个元素:系统(system)、参与者actors、用例(uer cases)、关系(reletionships)

关系

关联 (Association)

包含(Includ)

扩展(Extend)

泛化 / 继承(Generalization)

二、使用具体银行案例解释各组成部分的含义

1、系统

在这里银行应用就是一个系统:

用一个矩形表示;

系统名称放在矩形顶部;

这个矩形定义的系统的范围。矩形内的任何事都会在银行系统中出现,矩形之外的都不会出现。

2、参与者

参与者分为主要参与者和次要参与者:主要参与者做出动作后,次要参与者才会给予响应

参与者用如下图小人表示:

该系统有两个参与者:

用户(主要参与者):下载并使用银行应用APP

银行(次要参与者):向APP提供相应数据

这些参与者都是APP外部人员,所以放在矩形外,主要参与者在系统左边,次要参与者在系统右边:

3、用例

用于描述系统功能所要用到的元素(银行应用内的动作),用椭圆表示:

将可能有的动作按逻辑顺序排列:

注意:

每个参与者至少与系统中的一个用例进行交互

4、关联关系

用户可以登录APP,可以查看余额,转账,支付等操作,所以用一条直线将用户和用例连接起来:这就是关联关系

以此类推,连出银行参与者的关联关系:

5、包含关系:

(1)、概念:显示基本用例和包含用例之间的依赖关系,每次执行基本用例时,包含关系也会执行。

(2)、使用:当有包含关系时,用虚线箭头指从基本用例指向包含用例,并在线上写出<<include>>。

(3)、在例子中,用户登录是基本用例,验证密码是包含案例,每次登录时,APP都会验证密码是否正确,所以进行包含关系连接:

5、扩展关系

(1)、概念:扩展关系中有基本用例和扩展用例,当基本用例执行时,扩展用例可能执行也可能不执行,扩展用例必须满足一定的条件才会执行,此时就有扩展关系。

(2)、使用:当有扩展关系时,使用一条虚线箭头,从扩展用例指向基本用例,并在线上标注<<extend>>。

(3)、在例子中,用户登录是基本用例,提示密码错误是扩展消息,因为只有密码输入错误才会提示:

注意:

多个基本用例可以指向同一个包含或扩展用例,比如转账和支付两个操作,在执行之前都需要验证资金是否充足(包含关系):

6、泛化(继承)关系

(1)、概念:该关系中有父用例和子用例,子用例拥有父用例的功能,并且子用例还可以额外具有特有的功能,

(2)、使用:当出现泛化关系时,用实线空心箭头从子用例指向父用例连接。

(3)、该例子中支付用例可以细分为支票支付和现金支付,所以存在泛化关系,连接如下:

三、成品


http://www.niftyadmin.cn/n/5740117.html

相关文章

【学习日记】Anaconda的安装与使用-小白大学生

目录 日记说明 解压安装&#xff1a; 配置 使用 日记说明 作者是个大学生 这个专栏主要收集课时常用的软件 以及女朋友上课用的软件的教程 所有安装包可以私聊我获取 免费 提前清除已有python环境 windows11 Anaconda-2024.02 垃圾话&#xff1a; Anaconda 是全球领先的数…

高阶函数--python

高阶函数应当满足至少下面一个条件&#xff1a; 接受一个或多个函数参数 输出一个函数 下面用一个例子来理解高阶函数。 一、高阶函数 先看一个简单的函数 例一&#xff1a; 例二&#xff1a; 是高阶函数&#xff0c;因为满足条件&#xff0c;返回一个函数 并且有闭包&a…

Python self

在Python中&#xff0c;self 不是类本身&#xff0c;而是类的实例对象本身。当你定义一个实例方法时&#xff0c;Python 会自动将调用该方法的实例对象作为第一个参数传递给这个方法&#xff0c;按照惯例&#xff0c;这个参数被命名为 self。 这里有一个简单的例子来说明 self…

【自用】fastapi 学习记录 --请求和参数部分

fastai个人学习笔记 一、模块化结构框架 设置了默认请求头shop之后就无需再app0x里接口函数前全部写上/shop/xxx&#xff0c;或者/user/xxx&#xff0c;他会同意添加~如果都写了就会出现以下的情况&#xff08;重复shop&#xff09;&#xff1a; 二、请求与响应 关于参数&a…

2024年专业的10款数据恢复工具你都用过哪些?

数据丢失是很多人在生活中都会出现的问题&#xff0c;但想真多情况下都不是什么难题。因为有很多的数据恢复软件可以进行数据恢复。于是我根据工具的恢复成功率&#xff0c; 工具的兼容性、易用性以及恢复数据的种类和安全性这些因素&#xff0c;在网上搜罗了一些好用的数据恢复…

计算机网络 TCP/IP体系 数据链路层

一. 数据链路层的基本概念 数据链路层主要负责节点之间的通信&#xff0c;确保从物理层接收到的数据能够准确无误地传输到网络层。 数据链路层使用的信道主要有以下两种类型: 点对点信道: 这种信道使用一对一的点对点通信方式。广播信道: 这种信道使用一对多的广播通信方式,…

若依系统前端项目解读——从使用过程解读

登录系统 用户初次登录&#xff0c;浏览器中未存用户信息&#xff08;token&#xff09;&#xff0c;需向后端请求并保存至浏览器中用户再次登录系统&#xff0c;向后端发请求会携带token在请求头中&#xff0c;并与后端Redis缓存的token比较&#xff0c;判断token是否还在有效…

uniapp在js方法中,获取当前用户的uid(uni-id-user)表中的用户id

// 1.判断当前用的权限 let uid uniCloud.getCurrentUserInfo().uid //获取当前用户的uid // 用户uid等于发布者id或者用户权限等于admin或者用户角色等于webmaster if (uid this.item.user_id[0]._id || this.uniIDHasRole…