UML 建模实验

news2024/12/21 8:52:53

文章目录

  • 实验一 用例图
    • 一、安装并熟悉软件EnterpriseArchitect16
    • 二、用例图建模
  • 实验二 类图、包图、对象图
    • 类图
      • 第一题
      • 第二题
    • 包图
    • 对象图
      • 第一题
      • 第二题
  • 实验三 顺序图、通信图
    • 顺序图
      • 银行系统
      • 学生指纹考勤系统
      • 饮料自动销售系统
        • “买到饮料”
        • “饮料已售完”
        • “无法找零”
        • 完整版
    • 通信图
  • 实验四 状态机图、活动图
    • 状态机图
    • 活动图


实验一 用例图

一、安装并熟悉软件EnterpriseArchitect16

安装软件可参考本文:《Enterprise Architect 16 下载、安装与无限30天操作》。

二、用例图建模

1.某个学生成绩管理系统的部分参与者和用例总结如下。

教务管理人员:

  1. 登录系统。
  2. 教师、学生名单管理
  3. 学期教学计划管理
  4. 成绩管理
  5. 课程分配,每次课程分配时都必须打印任课通知书

学生:

  1. 登录系统
  2. 选课。

教师:

  1. 登录系统
  2. 成绩管理,并且可以选择是否生成成绩单

请根据以上信息画出该系统的用例图。

在这里插入图片描述

2.某银行储蓄系统需求说明如下:

  1. 开户。客户可填写开立账户申请表,然后交由工作人员验证并输入系统。系统会建立账户记录,并会提示客户设置密码(若客户没做设置,则会有一个默认密码) 。如果开户成功,系统会打印一本存折给客户。
  2. 密码设置。在开户时客户即可设置密码。此后,客户在经过身份验证后,还可修改密码。
  3. 存款。客户可填写存款单,然后交由工作人员验证并输入系统。系统将建立存款记录,并在存折上打印该笔存款记录。
  4. 取款,客户可按存款记录深笔取款,由客户填写取款单,然后交由工作人员验证并输入系统。系统首先会验证客户身份,根据客户的账户,密码,对客户身份进行验证,如果客户身份验证通过,则系统将根据存款记录累计利息,然后注销该笔存款,并在存折上打印该笔存款的注销与利息累计。

请根据以上信息绘制出系统的用例图.

在这里插入图片描述

实验二 类图、包图、对象图

类图

第一题

图书管理系统功能性需求说明如下:
1.图书管理系统能够为一定数量的借阅者提供服务。每个借阅者能够拥有唯一标识其存在的编号。图书馆向每一个借阅者发放图书证,其中包含每一个借阅者的编号和个人信息。提供的服务包括:提供查询图书信息、查询个人信息服务和预定图书服务等。

2.当借阅者需要借说图书、归还书籍时需要通过图书管理员进行,即借阅者不直接与系统交互,而是通过图书管理员充当借阅者的代理和系统交互。

3.系统管理员主要负责系统的管理维护工作,包括对图书、书目、借阅者的添加、删除和修改。并且能够查询借阅者、图书和图书管理员的信息。

4.可以通过图书的名称或图书的ISBN/ISSN号对图书进行查找。
确定该系统中的类,找出类之间的关系并画出类图。
在这里插入图片描述

第二题

根据下面的用例图设计相关类图。
在这里插入图片描述

在这里插入图片描述

包图

在某系统中存在三个逻辑部分,分别是Business包、DataAccess包和Common包,其中Business包需要导入DataAccess包和Common包,DataAccess包需要导入Common包。在类图中试着创建这些包,并绘制其关系。
在这里插入图片描述

对象图

第一题

对于Vehicle (车) 类和Wheel (轮子) 类,存在一个 对多的关联关系。试创建一个Vehicle类的一轮车对象,与一个轮子对象存在链,有一个前轮和两个后轮。用对象图表示一轮车对象与轮了对象之间的关系。
在这里插入图片描述

第二题

在某出版系统中,存在出版社、图书、作者三个实体类。试对一图书对象创建对象图并在图中表示出其与出版社对象及作者对象之间的关系。
在这里插入图片描述

实验三 顺序图、通信图

顺序图

银行系统

某银行系统的取款用例执行顺序如下:工作人员输人取款单,输人后,银行系统请求银行数据库匹配用户,进行身份验证,验证通过后,数据库注销相应存款,返回注销完成信息,银行系统在存折上打印取款记录。
请根据以上信息绘制顺序图。
在这里插入图片描述

学生指纹考勤系统

在某一学生指纹考勤系统中,有一个用例名为“上课登记”。此用例允许学生在上课前使用系统识别自己的指纹信息进而识别自己的身份,同时系统可以将登录信息存储在数据库中。
“上课登记”用例的主要事件流如下:
● 学生从系统菜单中选择“上课登记”;
● 系统显示指纹识别界面;
● 学生将手指放置于界面上;
● 系统捕获并识别学生的指纹,向学生返回识别的身份信息;
● 学生选择“确认”按钮;
● 系统生成一个关于该登记学生及当前日期、时间的新记录,并将该记录保存到数据库中。
请根据以上描述绘制“上课登记”用例的顺序图。

在这里插入图片描述

饮料自动销售系统

在饮料自动销售系统中,顾客选择想要的饮料。系统提示需要投入的金额,顾客从机器的前端钱币口投入钱币,钱币到达钱币记录仪,记录仪更新自己的选择。正常时记录仪通知分配器分发饮料到机器前端,但可能饮料已售完,也可能用完了找给顾客的零钱而无法销售饮料。先写出“买到饮料”的场景、“饮料已售完”的场景以及“机器没有合适的零钱”的场景,然后根据场景,用UML分别表示出“买到饮料”“饮料已售完”以及“无法找零”的顺序图。

“买到饮料”

在这里插入图片描述

“饮料已售完”

在这里插入图片描述

“无法找零”

在这里插入图片描述

完整版

在这里插入图片描述

通信图

(1)某银行系统存款处理过程如下:
① 系统将存款单上的存款金额分别记录在存折和账目文件中。
②将现金存人现金库。
③ 最后将打印后的存折还给储户。
请分析此交互过程所涉及的系统对象,并结合存款处理流程绘制通信图。
在这里插入图片描述

(2)对于某在线购物系统,主要有以下三个交互过程。
① 登录:用户申请登录系统,系统验证用户身份的有效性。
② 购物:用户浏览系统的搜索页面,搜索到目标商品,并将之添加到购物车。
③ 结算:用户结算购物车内的所有商品,更新库存并创建订单。
绘制通信图来表示这三个交互过程。
在这里插入图片描述

(3)在饮料自动销售系统中,顾客选择想要的饮料。系统提示需要投入的金额,顾客从机器的前端钱币口投入钱币,钱币到达钱币记录仪,记录仪更新自己的选择。记录仪通知分配器分发饮料到机器前端。根据场景,用UML分别表示出“买到饮料”这一操作的通信图。

在这里插入图片描述

实验四 状态机图、活动图

状态机图

(1)医院拟引入一款患者监护系统。基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况,以形成患者日志。当某个病人的生理信号超出医生规定的安全范围时,向值班护士发出警告信息。此外,护士在需要时还可以要求系统打印出某个指定病人的病情报告。
请根据以上描述,绘制患者监护系统的状态机图。
在这里插入图片描述

(2)当手机开机时,它处于空闲状态,当用户使用电话呼叫某人时,手机进入拨号状态。如果呼叫成功,即电话接通,手机就处于通话状态;如果呼叫不成功,例如对方线路有问题或关机,则拒绝接听。这时手机停止呼叫,重新进入空闲状态,手机在空闲状态下被呼叫,手机进入响铃状态(ringing);如果用户接听电话(pick),手机处于通话状态;如果用户未做出任何反应,可能他没有听见铃声,手机一直处于响铃状态;如果用户拒绝来电,手机回到空
闲状态。请按以上描述绘制出使用手机的状态机图。
在这里插入图片描述

(3)简单的数字手表表面上有一个显示屏和两个设置按钮A和B,有两种操作模式:
显示时间和设定时间。在显示时间模式下,手表会显示小时数和分钟数,小时数和分钟数由闪烁的冒号分隔。设定时间模式有两种子模式:设定小时和设定分钟。按钮A选择模式,每次按下此按钮时,模式会连续前进:设定小时、设定分钟等。在子模式内,每次只要按下按钮B,就会拨快小时或分钟。绘制一个数字手表的状态机图。
在这里插入图片描述

活动图

(1)某学生选课系统的查询课程用例如下:学生首先进入选课系统,然后输入要查询的课程名,系统验证输入的课程名是否存在,若存在,则跳转到对应的显示课程信息的页面;若不存在,则给出提示信息,返回选课页面。
请根据以上描述绘制活动图。
在这里插入图片描述

(2)在机票预订系统中,使用系统的用户必须先注册一个自己的账号,其过程为输人注册信息、验证信息完整、提交信息、系统进行验证(是否重名,等等),如果验证均通过,则注册成功,否则失败。
请根据以上描述,对用户注册用例画出活动图。
在这里插入图片描述

(3)在某在线购物系统中,用户首先搜索商品,进入商品详情页,可以将商品加入购物车。用户可以多次重复这一步骤直至购物结束。购物结束后进入购物车页面,用户付款后,生成购物订单。对于订单中的每个商品,购物系统应当通知对应的商家进行发货。
请根据以上描述绘制用户购物的活动图。
在这里插入图片描述

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

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

相关文章

高质量翻译如何影响软件用户体验 (UX)

在软件开发领域,用户体验 (UX) 是决定产品成败的关键因素之一。一个流畅、吸引人且直观的用户体验可以决定一款软件的成功与否。在影响优秀用户体验的众多因素中,高质量翻译尤为重要,尤其是在当今全球化的市场环境中。确保软件为不同语言和文…

ArcGIS Pro 3.4新功能2:Spatial Analyst新特性,密度、距离、水文、太阳能、表面、区域分析

Spatial Analyst 扩展模块在 ArcGIS Pro 3.4 中引入了新功能和增强功能。此版本为您提供了用于表面和区域分析的新工具以及改进的密度和距离分析功能,多种用于水文分析的工具性能的提高,一些新的太阳能分析功能。 目录 1.密度分析 2.距离分析 3.水文…

Linux C 程序 【05】异步写文件

1.开发背景 Linux 系统提供了各种外设的控制方式,其中包括文件的读写,存储文件的介质可以是 SSD 固态硬盘或者是 EMMC 等。 其中常用的写文件方式是同步写操作,但是如果是写大文件会对 CPU 造成比较大的负荷,采用异步写的方式比较…

凯酷全科技抖音电商服务的卓越践行者

在数字经济蓬勃发展的今天,电子商务已成为企业增长的新引擎。随着短视频平台的崛起,抖音作为全球领先的短视频社交平台,不仅改变了人们的娱乐方式,也为品牌和商家提供了全新的营销渠道。厦门凯酷全科技有限公司(以下简…

精准提升:从94.5%到99.4%——目标检测调优全纪录

🚀 目标检测模型调优过程记录 在进行目标检测模型的训练过程中,我们面对了许多挑战与迭代。从初始模型的训练结果到最终的调优优化,每一步的实验和调整都有其独特的思路和收获。本文记录了我在优化目标检测模型的过程中进行的几次尝试&#…

STM8单片机学习笔记·GPIO的片上外设寄存器

目录 前言 IC基本定义 三极管基础知识 单片机引脚电路作用 STM8GPIO工作模式 GPIO外设寄存器 寄存器含义用法 CR1:Control Register 1 CR2:Control Register 2 ODR:Output Data Register IDR:Input Data Register 赋值…

国标GB28181平台EasyGBS在安防视频监控中的信号传输(电源/视频/音频)特性及差异

在现代安防视频监控系统中,国标GB28181协议作为公共安全视频监控联网系统的国家标准,该协议不仅规范了视频监控系统的信息传输、交换和控制技术要求,还为不同厂商设备之间的互联互通提供了统一的框架。EasyGBS平台基于GB28181协议&#xff0c…

如何使用checkBox组件实现复选框

文章目录 概念介绍使用方法示例代码我们在上一章回中介绍了DatePickerDialog Widget相关的内容,本章回中将介绍Checkbox Widget.闲话休提,让我们一起Talk Flutter吧。 概念介绍 我们在这里说的Checkbox也是叫复选框,没有选中时是一个正方形边框,边框内容是空白的,选中时会…

基于“2+1 链动模式商城小程序”的微商服务营销策略探究

摘要:本文探讨在竞争激烈的市场经济与移动互联网时代背景下,微商面临的机遇与挑战。着重分析“21 链动模式商城小程序”如何助力微商改变思路,通过重视服务、提升服务质量,以服务营销放大利润,实现从传统微商模式向更具…

1-1 STM32-0.96寸OLED显示与控制

1.0 模块原理图 2.0 0.96OLED简介 资料下载:https://jiangxiekeji.com/download.html 程序介绍:https://jiangxiekeji.com/tutorial/oled.html SSD1306是一款OLED/PLED点阵显示屏的控制器,可以嵌入在屏幕中,用于执行接收数据、显…

在Visual Studio 2022中配置C++计算机视觉库Opencv

本文主要介绍下载OpenCV库以及在Visual Studio 2022中配置、编译C计算机视觉库OpenCv的方法 1.Opencv库安装 ​ 首先,我们需要安装OpenCV库,作为一个开源库,我们可以直接在其官网下载Releases - OpenCV,如果官网下载过慢&#x…

QT:QDEBUG输出重定向和命令行参数QCommandLineParser

qInstallMessageHandler函数简介 QtMessageHandler qInstallMessageHandler(QtMessageHandler handler) qInstallMessageHandler 是 Qt 框架中的一个函数,用于安装一个全局的消息处理函数,以替代默认的消息输出机制。这个函数允许开发者自定义 Qt 应用…

网站灰度发布?Tomcat的8005、8009、8080三个端口的作用什么是CDNLVS、Nginx和Haproxy的优缺点服务器无法开机时

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默, 忍不住分享一下给大家。点击跳转到网站 学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把…

OpenGL ES 03 加载3张图片并做混合处理

OpenGL ES 02 加载3张图片并做混合处理 什么是纹理单元纹理单元的作用使用纹理单元的步骤详细解释加载图片并绑定到到GPU纹理单元采样器的设置1.设置采样器变量的纹理单元编号,目的是为了告诉纹理采样器,从哪个纹理单元采集数据2.如果你没有显式地设置采…

临床外显子组测序分析中的那些坑(上)

大规模并行测序技术或下一代测序已成为基因诊断和研究的标准技术,尤其是外显子组和基因组测序现在已经在世界范围内广泛应用于患者的分子诊断。在过去几年中,许多实验室都在努力应对基于全新技术建立基因检测工作流程的挑战。测序技术中持续引入新的仪器…

【Tomcat】第六站(最后一站啦!):数据的返回

1. 引言 前端资源比如html页面,进行返回。截止到目前我们写的项目架构不支持前端页面(静态资源 )。 2. 数据的返回 2.1 准备 为了能够写前端页面,新建一个项目。选择Maven项目,下一步,下一步。 加载完…

ai论文生成器:分享8款AI一键生成论文的写作软件

在撰写毕业论文的过程中,高效利用各类软件工具可以极大地提升写作效率与质量。以下是八个免费的神器软件工具,它们各自在论文撰写、文献管理、语法校对、数据可视化等方面发挥着重要作用。希望这些推荐能帮助你顺利完成毕业论文的写作。 千笔AI论文&…

【Ubuntu 20.04】notepad++的安装与汉化

一,简介 本文介绍如何在Ubuntu虚拟机中安装notepad,供参考。 二,操作步骤 2.1 notepad的安装 sudo snap install notepad-plus-plus

Cherno C++学习笔记 P45 拷贝与拷贝构造函数

在这一篇文章当中,我们会学习一下C当中的复制以及复制构造函数,当然,还会用一个相对比较完整的代码类作为例子。这也是我们第一次写一个相对比较长的和完整的代码。 对于C来说,理解复制是非常重要的,因为整个C变成可以…

uniapp入门 01创建项目模版

0安装 hbuilder x 标准版 1.创建模版工程 2.创建官方 案例工程 index.uvuewen 文件解析 <!-- 模版 标签 --> <template><view></view></template><!-- 脚本 --> <script>export default {data() {return {}},onLoad() {},methods:…