【角色用例图讲解】

news2024/11/27 8:28:26

角色用例图讲解

    • 一、 用例图的定义及组成要素
    • 二、参与者与用例的4种关系
    • 三、 常用的用例图软件
  • 我是将军我一直都在,。!

一、 用例图的定义及组成要素

用例图是编写需求说明时经常用到的需求表达方式,用于向开发、测试同事说明需求中用户与系统功能单元之间的关系。

它主要由三部分组成:参与者、用例、参与者与用例之间的关系。

参与者: 不是特指人,是指系统以外的,在使用系统或与系统交互中所扮演的角色。因此参与者可以是人,可以是事物,也可以是时间或其他系统等等。

用例: 是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果。

关系: 参与者与用例之间的关系主要包括关联、归纳(泛化)、包含、拓展和依赖。

二、参与者与用例的4种关系

1、关联关系

关系说明:表示参与者与用例之间的关系

表示方法:带箭头的实线,箭头指向用例。

举例说明:用户登录系统
在这里插入图片描述

2、归纳(泛化)关系

关系说明:表示参与者与参与者之间、用例与用例之间的关系。一个用例可以被特别列举为一个或多个子用例,这被称为用例泛化。

表示方法:带空心箭头的实线,箭头指向被泛化(被继承)的用例,即基础用例/父用例。(注意:泛化关系的箭头不是指向被泛化,而是指向被继承。泛化和继承是不同的方向。泛化是从下到上的抽象过程,继承是从上到下,从一般到特殊的过程。)

举例说明:VIP会员和普通用户,归纳为用户;账号登录与微信登录,也可归纳为登录系统。
在这里插入图片描述

3、包含关系

关系说明:表示用例与用例之间的关系,其中一个用例(基础用例)的行为包含了另一个用例(包含用例)的行为。

表示方法:虚线箭头+<>字样,箭头指向被包含的用例

举例说明:用户在账号登录过程中,包括输入账号、输入密码、确认登录等操作
在这里插入图片描述

4、拓展关系

关系说明:表示用例与用例之间的关系;用于拓展用例对基础用例的增强;拓展用例是在特定条件出现时,才会被执行的用例。

表示方法:虚线箭头+<>字样,箭头指向被扩展的用例(即基础用例)

举例说明:用户在登录过程中忘记了密码
在这里插入图片描述

三、 常用的用例图软件

可以绘制用例图的工具很多,传统的如Word、PPT,专业的如Visio、亿图图示。

可以用visio画图或者网络在线画图

1、确认用例图的要素。具体有哪些参与者、用例,参与者和用例之间的关系是怎样的;

2、选择恰当的显示符号。

3、按照确定的关系连接参与者和用例。

4、对关键要素进行信息标注。

简单四步,一幅用例图就完成了。

我是将军我一直都在,。!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/460441.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【机智云物联网低功耗转接板】+模拟无线远程控制仪表启停

GE211 是机智云自研的定制化的物联网转接板&#xff0c;使用 ESP32-C3-WROOM-02 通讯模块&#xff0c;适用于白色智能家电等设备应用。硬件设计上采用支持 WiFi 和 BLE 的双模无线通信模块&#xff0c;具备TTL电平转换串口&#xff0c;免开发快速接入&#xff0c;提高开发效率。…

SpringBoot 使用 Sa-Token 完成权限认证

一、设计思路 所谓权限认证&#xff0c;核心逻辑就是判断一个账号是否拥有指定权限&#xff1a; 有&#xff0c;就让你通过。没有&#xff1f;那么禁止访问&#xff01; 深入到底层数据中&#xff0c;就是每个账号都会拥有一个权限码集合&#xff0c;框架来校验这个集合中是…

Linux 常用命令2

文件内容查看 Linux系统中使用以下命令来查看文件的内容&#xff1a; cat 由第一行开始显示文件内容tac 从最后一行开始显示nl 显示的时候&#xff0c;顺道输出行号more 一页一页的显示文件内容less与more 类似&#xff0c;但可以往前翻页head 只看头几行tail 只看尾巴几行 j…

【ZooKeeper to KRaft Migration】kafka 3.4版本zookeeper数据迁移到kraft

引言 kafka在3.X版本后内置了kraft用来替代zookeeper管理集群&#xff0c;但是在升级的过程中发现&#xff0c;许多升级的文档都是只有新部署安装kraft版本&#xff0c;而没有涉及到数据迁移相关的资料&#xff0c;这样如果直接变更的话&#xff0c;会导致kakfa中的数据全部丢…

升级gpt4-GPT最新版本怎么下载使用

怎么 让gpt-3的模型升级gpt4 GPT-4是OpenAI的未来版本&#xff0c;目前还未发布。因此&#xff0c;我们无法准确指导如何将GPT-3升级到GPT-4。要升级GPT-3&#xff0c;需要进行大量的研究和开发工作。如果OpenAI发行了GPT-4的预览版&#xff0c;那么可能需要花费大量的时间和资…

Redission实现分布式锁lock()和tryLock()方法的区别

lock.lock(30, TimeUnit.SECONDS); // 尝试获取锁30秒&#xff0c;如果获取不到则放弃 //尝试获取锁&#xff0c;等待5秒&#xff0c;持有锁10秒钟 boolean success lock.tryLock(0, 10, TimeUnit.SECONDS); Redisson 是一种基于 Redis 的分布式锁框架&#xff0c;提供了 lo…

国产蓝牙芯片OM6621P/HS6621系列门锁方案

在5G、物联网以及互联网家装市场的快速发展等多重因素的作用下&#xff0c;中国智能家居市场展现蓬勃发展态势。作为智能家居“入口”产品以及家庭智能安防产品的核心单品&#xff0c;智能门锁以其区别于传统机械锁更具安全性、便利性、可扩展性的优势&#xff0c;逐渐成为智能…

Java+GeoTools(开源的Java GIS工具包)快速入门-实现读取shp文件并显示

场景 GeoTools GeoTools 是一个开源的 Java GIS 工具包&#xff0c;可利用它来开发符合标准的地理信息系统。 GeoTools 提供了 OGC (Open Geospatial Consortium) 规范的一个实现来作为他们的开发。 官网地址: GeoTools The Open Source Java GIS Toolkit — GeoTools 参考…

Linux账号密码安全策略设置

前言 随着云计算厂商的兴起&#xff0c;云资源如ECS不再只有企业或者公司才会使用&#xff0c;普通人也可以自己买一台ECS来搭建自己的应用或者网站。虽然云计算厂商帮我们做了很多安全相关的工作&#xff0c;但并不代表我们的机器资源就绝对是安全的。 要知道有很多事情是云…

群策群力:组织效率,管理?沟通?协作?

你好&#xff0c;我是苏杰。今天让我们一起聊聊组织效率的话题。 团队大了&#xff0c;也能够自我造血以后&#xff0c;如何可持续发展就会成为我们关注的焦点。产品会衰退、行业有生命周期&#xff0c;但人的成长&#xff0c;以及人构成的组织&#xff0c;可以帮我们不断成功…

【大厂直通车】飞猪旅行日常实习_测开面经

📑哈喽,大家好,我是小浪;📱本专栏致力于持续更新最新各大厂面经,实习消息,招聘要求; 那么目前价格也仅仅是定到了29.9💰;非常的实惠,一杯奶茶钱🍵; 🧃对于订阅本专栏的同学们,博主在努力更新,那么最近忙于学校的考试,没来得及正常更新,非常抱歉,这几…

论文综述——DORE: Document Ordered Relation Extraction based on Generative Framework

DORE: Document Ordered Relation Extraction based on Generative Framework 文章的主要目标是对文档级的关系抽取。以往的研究主要是基于分类的研究&#xff0c;生成式关系抽取研究较少而且性能不佳。 文档级相比于句子级的关系抽取存在序列长度过长&#xff0c;以及实体定位…

消息队列选型

消息队列选型 大家好&#xff0c;我是易安&#xff01;今天我们聊下消息队列常见选型。 消息队列作用 谈选型之前我们先讲下我们为什么需要消息队列。 消息队列是一种很流行的技术&#xff0c;自从系统间开始通信时&#xff0c;消息队列就出现了。然而&#xff0c;对消息队列给…

java--时间类实例2--毫秒/秒运算(instant、ZoneDateTime)

有些时候给出毫秒值来让我们计算时间该怎么办。 文章目录 介绍[蓝桥杯 2021 省 B] 时间显示题目描述代码 蓝桥杯–航班时间 介绍 将毫秒值直接转成日期的有 new Date(毫秒)Instant.ofEpochMilli(毫秒)Instant.ofEpochSecond&#xff08;秒&#xff09;Instant.ofEpochSecond&…

k8s知识整理(继续整理中)

文章目录 k8s组件master节点kube-apiserverkube-schedulerkube-controller-manageretcd work节点kube-proxykubeletcontainer runtime add onsCoreDNSingress controller Pod常用控制器k8s pod创建调度过程k8s pod删除过程k8s 灰度发布&#xff08;金丝雀部署&#xff09;k8s 蓝…

日撸 Java 三百行day37

文章目录 说明day37 十字链表1.思路整理1.1十字链表的数据结构&#xff1a;1.2 手动模拟十字链表 2.代码分析2.1 十字链表的构造2.2 单元测试 说明 闵老师的文章链接&#xff1a; 日撸 Java 三百行&#xff08;总述&#xff09;_minfanphd的博客-CSDN博客 自己也把手敲的代码放…

ambari的kafka服务开启sasl

添加 sasl 配置⽂件 集群部署 Kafka2.2下载地址 http://archive.apache.org/dist/kafka/2.2.1/kafka_2.11-2.2.1.tgz 解压安装包 tar -zxvf kafka_2.11-2.2.1.tgz 部署略 ambari 数据kafka服务 在kafka的conf目录下创建sasl_conf目录,将kafka_client_jaas.conf/kafka_se…

深入浅出MySQL——CRUD

文章目录 表的增删改查Create单行数据全列插入多行数据指定列插入插入否则更新替换——REPLACE RetrieveSELECT 列WHERE 条件结果排序筛选分页结果 UpdateDelete删除数据截断表 插入查询结果聚合函数group bywhere和having SQL查询中各个关键字的执行先后顺序函数日期函数字符串…

SQL优化(3):order by优化

MySQL的排序&#xff0c;有两种方式&#xff1a; Using filesort : 通过表的索引或全表扫描&#xff0c;读取满足条件的数据行&#xff0c;然后在排序缓冲区sort buffer中完成排序操作&#xff0c;所有不是通过索引直接返回排序结果的排序都叫 FileSort 排序。 Using index :…

IDEA 使用系列之 Alibaba Cloud Toolkit 一件部署

一、前文 做开发&#xff0c;免不了要往服务器部署前端后端&#xff0c;首先要用xftp把前后端所在文件夹打开&#xff0c;把jar、dist备份再上传&#xff0c;然后再打开xshell把前后端kill掉&#xff0c;然后再敲命令重新启动前后端&#xff0c;少则2、3分钟&#xff0c;多则10…