uml实验四

news/2025/1/10 16:46:25/文章来源:https://www.cnblogs.com/-Xuxu/p/18664235

实现视图模型建模
班级: 信2305-3 学号: 20234316 姓名: 20234316
一 实验目的
 理解顺序图、协作图、活动图、状态机图的概念及其在系统分析设计中的作用;
 了解和掌握软件工程中用例逻辑时序的分析方法;
 掌握两种交互图(顺序图和协作图)的差别;
 掌握描述一个操作执行过程中所完成工作(动作)的方法;
 掌握描述对象内部工作的具体步骤;
 掌握使用Rational Rose 依据用例绘制创建顺序图、协作图、活动图、状态图的方法;
二 实验环境及实验准备
 所需硬件环境为微机;
 所需软件环境为Rational Rose、Miscrosoft Word等;
 熟悉Rational Rose下交互模型和状态模型建模的方法和步骤;
 完成系统用例模型建模;
三 实验内容
(一)、分析系统用例流程中对象间的交互

  1. 对象的识别与分类
    实体类(代表系统中的核心数据和业务对象)
  2. 客户:包括个人客户、团体客户等,参与预定管理、入住管理、退房管理等。
  3. 员工:包括酒店工作人员、酒店员工,涉及员工管理、考勤、薪酬等。
  4. 经理:管理财务报表、员工档案、运营分析等。
  5. 房间:包括各种类型的房间及其状态,涉及房态管理、房间分配、房间调度等。
  6. 账单:包括客户住宿账单、餐饮账单等,涉及结算、账单打印等。
  7. 菜单:餐饮管理中的菜品、库存等对象。
  8. 餐饮订单:客户在餐厅点餐时生成的订单。
    边界类(代表系统的界面和外部交互)
  9. 酒店管理系统:整个系统,接收用户输入,处理请求并反馈。
  10. 前台系统:与客户交互的系统,管理预定、入住、退房等。
  11. 餐饮系统:处理餐饮管理相关的请求,如菜单管理、点餐、结算等。
  12. 财务系统:处理财务相关的报表、收入、支出等。
  13. 员工系统:管理员工信息、排班、考勤等。
  14. 用例流程中的对象间的交互分析
    交互描述表格格式:
    交互编号 交互名称 功能描述 涉及的对象 消息的类型 传递的消息 返回的消息 销毁的对象
    1 客户预定房间 客户通过前台系统进行房间预定 客户、房间、前台系统、账单 请求消息 客户信息、预定房间类型、日期等 预定成功或失败信息 无
    2 客户入住登记 客户入住时进行登记,系统分配房间 客户、前台系统、房间、账单 请求消息 客户身份信息、房间需求等 房间分配信息、入住确认信息 无
    3 客房清洁与维修 员工安排清洁与维修房间 酒店员工、房间、清洁与维修管理系统 请求消息 房间号、清洁需求、维修需求等 清洁或维修状态更新信息 无
    4 餐饮点餐 客户在餐厅点餐,厨房收到订单 客户、餐饮系统、厨房、菜单、订单 请求消息 菜品、数量、客户需求等 点餐确认信息、订单编号 无
    5 餐饮账单结算 餐饮消费结算与住宿账单合并 客户、餐饮账单、住宿账单、财务系统 请求消息 餐饮消费记录、住宿账单等 合并后的账单信息、结算信息 无
    6 员工薪酬管理 根据考勤和业绩发放薪酬 酒店员工、员工管理系统、财务系统 请求消息 员工出勤、业绩信息、薪酬标准等 薪酬发放信息、工资条 无
    7 财务报表生成 经理查看财务报表 经理、财务管理子系统 查询消息 财务数据、报表类型等 财务报表、利润分析等 无
  15. 各个交互过程的详细说明
    交互编号 1: 客户预定房间
    • 功能描述:客户通过前台系统进行房间预定。系统记录客户信息和预定需求,更新房间状态并生成相应的账单信息。
    • 涉及的对象:客户、房间、前台系统、账单
    • 消息类型:请求消息
    • 传递的消息:客户的预定信息(如房间类型、入住时间、退房时间等)。
    • 返回的消息:预定成功或失败的通知,房间状态更新信息。
    • 销毁的对象:无(对象生命周期持续直到实际入住时才结束)。
    交互编号 2: 客户入住登记
    • 功能描述:客户到达酒店并完成入住登记,系统根据客户需求分配房间。
    • 涉及的对象:客户、前台系统、房间、账单
    • 消息类型:请求消息
    • 传递的消息:客户身份、入住信息、预定信息。
    • 返回的消息:房间分配确认、入住确认信息。
    • 销毁的对象:无。
    交互编号 3: 客房清洁与维修
    • 功能描述:员工执行房间清洁或维修任务,确保房间符合入住标准。
    • 涉及的对象:酒店员工、房间、清洁与维修管理系统
    • 消息类型:请求消息
    • 传递的消息:房间号、清洁或维修需求。
    • 返回的消息:清洁或维修状态更新。
    • 销毁的对象:无。
    交互编号 4: 餐饮点餐
    • 功能描述:客户在餐厅点餐,点餐信息传递至厨房,订单处理并准备。
    • 涉及的对象:客户、餐饮系统、厨房、菜单、订单
    • 消息类型:请求消息
    • 传递的消息:点餐信息(菜品、数量等)。
    • 返回的消息:订单确认、订单编号。
    • 销毁的对象:无。
    交互编号 5: 餐饮账单结算
    • 功能描述:客户餐饮消费与住宿账单合并,进行最终结算。
    • 涉及的对象:客户、餐饮账单、住宿账单、财务系统
    • 消息类型:请求消息
    • 传递的消息:餐饮消费记录、住宿账单。
    • 返回的消息:合并后的账单、结算信息。
    • 销毁的对象:无。
    交互编号 6: 员工薪酬管理
    • 功能描述:根据员工的考勤和业绩,系统发放薪酬。
    • 涉及的对象:酒店员工、员工管理系统、财务系统
    • 消息类型:请求消息
    • 传递的消息:员工考勤信息、业绩数据、薪酬标准。
    • 返回的消息:薪酬发放信息、工资条。
    • 销毁的对象:无。
    交互编号 7: 财务报表生成
    • 功能描述:经理查询财务报表,生成相关报表以供分析。
    • 涉及的对象:经理、财务管理子系统
    • 消息类型:查询消息
    • 传递的消息:报表类型、时间范围。
    • 返回的消息:财务报表、利润分析。
    • 销毁的对象:无。
    (二)、绘制顺序图

(三)、绘制协作图

(四)、绘制活动图

(五)、分析系统主要对象的生命周期中状态及状态迁移
在酒店综合信息管理系统中,主要的对象类通常与酒店运营的核心流程相关。可能需要进行状态分析的主要对象类包括:
• 客房(Room):作为系统中的重要对象,客房会经历不同的状态,比如“空闲”,“已预定”,“已入住”,“已退房”等。
• 客户(Customer):客户的状态可能包括“未注册”,“已注册”,“已入住”,“已退房”等。
• 预定(Reservation):预定的状态包括“未确认”,“已确认”,“已取消”等。
客房生命周期状态及迁移
在酒店管理系统中,客房的生命周期涉及的主要状态包括:
• 空闲(Available):客房尚未被预定,处于空闲状态。
• 已预定(Reserved):客房已被客户预定,但尚未入住。
• 已入住(Occupied):客房已被客户入住。
• 已退房(Checked-out):客房的客户已退房,等待清洁。
• 清洁中(Being Cleaned):客房退房后,正在进行清洁工作。
• 不可用(Unavailable):因维修或其他原因,客房暂时不可用。
迁移编号 迁移名称 迁移描述 事件 动作 监护条件
1 预定房间 客房从“空闲”状态迁移到“已预定”状态。 客户提交预定请求 将客房标记为“已预定”,更新数据库 客房未被其他客户预定,且日期匹配
2 入住 客房从“已预定”状态迁移到“已入住”状态。 客户办理入住手续 更新客房状态为“已入住” 客户已到达并完成入住手续
3 退房 客房从“已入住”状态迁移到“已退房”状态。 客户办理退房手续 将客房状态更新为“已退房” 客户完成退房手续并结清账单
4 清洁 客房从“已退房”状态迁移到“清洁中”状态。 客房退房后等待清洁 发送清洁指令,标记客房为“清洁中” 客房已退房且未重新预定
5 恢复空闲状态 客房从“清洁中”状态迁移到“空闲”状态。 清洁完成 更新客房状态为“空闲”,可供再次预定 客房已清洁完毕且没有新的预定
6 暂时不可用 客房从“空闲”或“已预定”状态迁移到“不可用”状态。 客房出现故障或维修 标记客房为“不可用” 客房需要维修或其他特殊原因
7 恢复正常 客房从“不可用”状态迁移到“空闲”状态。 故障维修完成或不可用原因消失 更新客房状态为“空闲” 修复完成,且客房可重新投入使用
(六)、绘制状态机图

四 实验分析及问题思考
画图时需注意各用例之间的关系和与系统之间的关系

实现视图模型建模
班级: 信2305-3 学号: 20234316 姓名:徐戌
实验自评
实验内容 自评结果(在对应格内打)
不熟练 一般 比较熟练 熟练
绘制顺序图 √
绘制协作图 √
绘制活动图 √
绘制状态机图 √
实验体会
在实现视图模型建模的实验过程中,我深入理解了系统不同视角之间的关系以及如何通过视图来表示系统的不同层次和模块。通过构建视图模型,我学会了如何将复杂的业务需求和功能通过直观的图形和抽象结构进行表达。这不仅有助于团队成员之间的沟通,也便于后期开发和维护。
在建模过程中,我特别体会到视图的设计要考虑到不同用户的需求,如管理视图、用户视图等,每个视图的设计应该具备清晰、简洁、易用的特点。通过实验,我认识到视图模型的高层次抽象可以帮助我们快速理解系统的整体结构,而细节部分则可以通过具体的实现来补充。总体而言,视图模型建模不仅提升了我的抽象思维能力,也让我更好地理解了软件架构设计中的分层思想和模块化原则。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过本地私有的镜像仓库harbor解决网络原因导致的jdk无法加载而造成的docker打包错误.v2.250110

​各种网络原因,或是docker.io无法访问,或是阿里的镜像源故障,导致java打包发布的时候报错,很影响代码发布的质量。解决思路:墙出去把jdk下载下来,代码使用本地的harbor库进行引用,一劳永逸。此解决方法也适用于国外优质不频繁变动的镜像源的本地化使用。解决方法 1. 自…

[题目记录]AGC005E Sugigma: The Showdown

一道通过自己生成思路做出的思维题 . 通过分析博弈过程发现问题其实没有那么复杂 , 然后层层分析转化问题即可 .AGC005E Sugigma: The Showdown 题意 给出两棵树 , 点的编号相同 , 连边方式不同 . 初始 A 在树 \(a\) 上的点 \(x\) , B 在树 \(b\) 上的点 \(y\) , 两人轮流走 , …

代码随想论算法训练营第3天 | 链表理论基础,203.移除链表元素,707.设计链表,206.反转链表

一、刷题部分 1.1 链表理论基础原文链接:代码随想录 题目链接:🈚️链表是由一个个节点串联而成的,节点包含数据域和指针域,数据域用来存放数据,而指针域实现了节点之间的串联。 链表中有单链表、双链表、循环链表:链表的物理空间是不连续的,通过指针存储下一节点的物理…

ABAP配置:OY01 定义国家/地区

配置:OY01 定义国家/地区 事务代码:OY01 配置路径 SPRO-ABAP平台-常规设置-设置国家-定义国家/地区 配置路径截图配置描述 国家是SAP里面一个非常重要的概念,SAP国家概念涉及公司代码、工厂、主数据、跨国银行交易,系统默认自带ISO相关的国家编码,在S/4中,一些配置转移到…

关于GTM,这些评价指标你都知道吗?

目标跟踪指标是企业实现持续增长和盈利的重要工具。通过定期监控和分析这些指标,企业可以及时发现潜在问题并采取相应的改进措施,以保持其竞争力并实现业务目标。因此,企业应该重视这些指标的应用,并不断优化其监控和分析流程,以确保其业务运营的顺利进行。Goal Tracking …

ODX诊断数据库转换工具 - DDC

INTEWORK-DDC (Diagnostic Database Convertor) 是将诊断调查问卷转换为标准ODX(2.2.0)数据库的工具。ODX是格式标准化的诊断数据库文件,我们在诊断不同的车或者不同的ECU时,只需要加载适配这个车型或ECU的ODX文件即可,而无需对诊断仪做任何改变。ODX统一了诊断文件的格式,…

异地多活架构进阶:如何解决写后立即读场景问题?【转】

在《醍醐灌顶!异地多活架构设计看这篇就够了》一文中,基于容灾需要,讨论了数据写入的架构模型。数据读取方面,重点在于解决读取请求的负载分担、路由选择的问题,对于容灾架构的选择影响不大。不过,其中的“写后立即读”场景,是个一致性范畴的问题,即写入的数据和写入后…

JAVA之面向对象

1、设计对象并使用类和对象 类(设计图):是对象共同特征的描述; 对象:是真实存在的具体实例; 在java中,必须先设计类,才能获得对象。 如何得到类的对象:类名 对象名 = new 类名(); 如何使用对象: 访问属性:对象名.成员变量 访问行为:对象名.方法…

免费手动打Windows Server补丁

免费手动打Windows Server 2008 R2补丁https://catalog.update.microsoft.com/search.aspx?q=kb4474419然后到windows上双击运行即可本文来自博客园,作者:六月OvO,转载请注明原文链接:https://www.cnblogs.com/chenlifan/p/18664077

pwn1_sctf_2016 1

打开ida反汇编看一下,是c++,无所谓,复制问一下ai先让我们输入s的数据,读取长度限制在32字节。然后replace函数会将s里面的 I 替换成 you 。最后输出s。 分析一下,s距离ebp为0x3C(60字节),且我们最多只能输入32字节的,但经过replace函数,一个字节的‘I’会被替换成三个…

UDS-ECU程序刷写

UDS(unified diagnostic services)统一诊断服务主要是针对汽车上对ECU进行诊断服务规范,下图是UDS在OSI分层中的具体规范,基于UDS的刷写应用逻辑体现在应用层的ISO14229规范。一、功能介绍 UDS(unified diagnostic services)统一诊断服务主要是针对汽车上对ECU进行诊断服…

主体分割技术,提升图像信息提取能力

在智能设备普及和AI技术进步的推动下,用户对线上互动的质量、个性化以及沉浸式体验的追求日益增强。例如,对于热衷于图片编辑或视频制作的用户来说,他们需要一种快速而简便的方法来将特定主体从背景中分离出来。 HarmonyOS SDK 基础视觉服务(Core Vision Kit)提供主体分割…