当前位置: 首页 > news >正文

UML内容

用例图

概念

用例图显示谁是相关的用户,用户希望系统提供什么功能(用例),以及用例之间的关系图。用例图主要的作用是获取需求、指导测试。

使用场景

建立需求模型,明确业务目标,对系统功有清晰概览

用例图主要回答了三个问题:1、是谁用的系统;2、系统提供的功能;3、功能之间的关系

在需求分析初期,帮助开发人员明确项目目标,以及达到目标要具有哪些功能,使技术人员对整个系统功能有个清晰明确的概览。

核心元素

核心元素介绍

元素

定义

图形

系统

划分当前分析的系统边界,系统内部为用例,外部为参与者;

系统边界的划分会对用例以及参与者定义有所影响。

参与者

在系统外与系统交互的某人或者某物。

用例

一个用例是参与者希望目标系统具有的一个功能。

用例与参与者的关系

哪些用例是哪些参与者的目标就将它们用实线连接起来。

用例与用例的关系

包含

(<<include>>)

基用例的应用场景:

① 抽取出多个基用例之间的共有模块,供多个基用例复用。

② 基用例包含的功能过多时,通过子用例将功能模块拆分为多个部分。

每次执行基本用例时,包含用例都会执行。

扩展

(<<extend>>)

将基用例中一段相对独立且可选的动作,用扩展用例加以封装,从而使基用例的行为功能更加集中。

基用例没有子用例的参与也可以完成一个完整的功能。

泛化

(<<Generalization>>)

每个子项共享父项的共同行为,但每个子项都添加了自身的独特行为。

示例

参与者:

假设该系统的参与者有两个:1、读者 2、图书管理员。

用例:

对于读者来说,希望用户提供的功能是可以登录、借书以及还书;

对于图书管理员来说,希望可以维护图书信息。

用例与用例之间的关系:

  1. 包含

    针对包含关系的两种应用场景,在图中的使用情况如下:

    ① 抽取出多个基用例之间的共有模块,供多个基用例复用。

    借书和还书功能都需要验证读者身份,每次执行基用例的时候,子用例必然会执行;

    ② 基用例包含的功能过多时,通过子用例将功能模块拆分为多个部分

    维护图书信息功能,包含增加图书、删除图书和修改图书三个功能模块。当执行维护图书信息用例时,三个子

    用例必然有一个会被执行。

  2. 扩展

    超期罚款属于从还书模块中抽取出来的一个相对独立且可选的功能,满足超期这个条件,就执行罚款功能,没有满足则不执行。没有超期罚款功能的参与,还书模块也可以作为一个完整的功能使用,所以它们是扩展关系。

  3. 泛化

当使用登录功能的时候,可以选择微信登录,也可以选择手机号登录。在这个场景中登录是一个基用例,而

微信登录和手机号登录作为子用例都继承基用例的登录行为,且有添加了自身特殊的行为(不同的登录方式),所以它们是泛化关系。

绘图注意点

  1. 核心元素使用是否正确,关系表达是否正确

    比如,包含关系的两个用例,是使用一条带箭头的虚线由基本用例指向包含用例。

  2. 用例的执行结果对参与者来说是可观测和有意义的

    比如,有一个后台进程监控参与者在系统里的操作,并在参与者删除数据的之前备份操作,虽然它是系统的一个必要组成部分,但对于参与者来说是不可观测的,所以后台进程监控不算是一个用例。

  3. 几种关系的侧重点

    关系

    子用例和基用例之间的行为特征关系

    子用例和子用例之间的行为特征关系

    基用例执行是否子用例也执行

    包含

    基用例的行为特征包含子用例的行为特征

    没有相似的行为特征

    扩展

    基用例的行为特征包含子用例的行为特征

    没有相似的行为特征

    泛化

    基用例和子用例有相同的行为特征

http://www.dtcms.com/a/536064.html

相关文章:

  • 【强化学习核心解析】特点、分类与DQN算法及嵌入式低功耗应用
  • OpenCV轻松入门_面向python(第八章 形态学操作)
  • 网站建设维护面试英雄联盟网站模板
  • 网络安全:金盾 RASP 应用防护
  • Cursor MCP Java程序员从零开始实战教程 第一章-第四节-MCP服务器安装与配置
  • __金仓数据库替代MongoDB护航医疗隐私:医院患者随访记录安全存储实践__
  • 有没有教做衣服的网站济南建设工程交易中心网站
  • MongoDB使用命令行导出导入索引
  • __金仓数据库平替MongoDB全栈安全实战:从文档存储到多模一体化的演进之路__
  • Python爬虫实战:新闻数据抓取与MongoDB存储全流程
  • 一站式搭建WordPress网站与Nginx RTMP流媒体服务
  • 使用 EasyExcel 进行 多 Sheet 导出
  • 做游戏网站赚钱么云服务器怎么用详细步骤
  • 建设网站的技术回龙观手机网站开发服务
  • 边缘计算与物联网中的 MDM和OTA
  • Linux物联网常用7天循环视频录制软件架构解决方案
  • Arguments: ls-remote --tags --heads git://github.com/adobe-webplatform/eve.git
  • Glide 图片缓存:异步更新 + 动画支持 + 自定义目录+自定义刷新时效
  • SWAT模型应用
  • 界面控件DevExpress WPF v25.1 - 官宣支持Avalonia XPF
  • HarmonyOS应用日志HiLog:从基础使用到高级调试技术
  • 系统架构设计师备考第55天——数据库设计融合物联网层次架构案例分析
  • 加查网站建设乌海seo
  • 北京金港建设股份有限公司网站wordpress缓存清理
  • Deepseek大模型结合Chrome搜索爬取2025AI投资趋势数据
  • 基于 ComfyUI 的 Stable Diffusion 本地部署与使用教程(Windows + CUDA12.0)
  • HTTPS 端口,443 之外的那些坑与排查实战
  • Stable Diffusion 短视频制作算力需求与优化策略研究
  • ComfyUI本地部署Stable Diffusion:核心组件(Python、PyTorch、CUDA)版本与显卡配置全指南
  • Adobe Pro DC裁剪PDF流程介绍