《计算机学院UML综合实验报告.doc》由会员分享,可在线阅读,更多相关《计算机学院UML综合实验报告.doc(7页珍藏版)》请在课桌文档上搜索。
1、.wd苏州大学实验报告实验名称UML综合实验实验目的学习掌握UML的9种视图。实验内容对电梯的运行过程和状态进展分析,使用UML面向对象建模语言实现对电梯控制系统的描述。 系统描述:1. 电梯实例以理工楼为例,具有上升、下降、开关门、载客等功能。2. 每一层都有:A 指示灯:2个指示灯表示上行、下行,1个楼层指示灯表示楼层B 电梯锁:用于将本层的电梯锁锁住。并使本楼层的外部按钮失效。C 门外按钮:除一层和六层顶层,其余楼层都有上行和下行按钮。一层只有上行按钮,顶层只有下行按钮。3. 电梯内:A. 楼层按钮:一道六层按钮B. 开关门按钮:负责在电梯停靠某层时开关门。C. 警报按钮:用于特殊情况发
2、出警报。D. 按钮指示灯:表示按钮所处状态。开关门按钮只有停靠某层,且按下时指示灯亮;楼层按钮按下即刻亮起,在到达楼层按钮所指示的楼层时熄灭E. 超重测试:防止超重,假设超重,电梯门无法关闭。 系统运行:1. 用户在门外按下门外按钮,电梯运行至用户所在层,开门,用户按楼层按钮,假设用户没有按关门按钮,在一定时间后进展超重测试,假设按动关门按钮,立即进展超重测试。假设超重,发出警报,继续进展超重测试。假设不超重,关门,运行电梯至用户所按楼层,开门,楼层指示灯关闭。用户到达所需楼层。2. 为了保证电梯系统安全,在任何不安全的情况下,电梯会被强制停顿。实验步骤和方法所有图片由pdf导入,可放大查看1
3、. 用例图:确定参与者和用例,描述电梯系统提供的功能。用例描述:1用例名称:锁住楼层锁用例描述:当电梯出现故障,为保证安全,翻开楼层锁,防止电梯停于本层。参与者:电梯管理员前置条件:电梯出现故障后置条件:无 根本操作流:1.找到故障电梯所在位置2.在故障电梯的向下一层和向上一层锁住楼层锁2用例名称:按动上下按钮用例描述:当乘客需要上行或者下行时,按动上行或下行按钮。参与者:乘客前置条件:电梯正常运行后置条件:无 根本操作流:1.按动上行按钮可选操作流:按动下行按钮3用例名称:按动楼层按钮用例描述:当乘客需要到达某层按钮时,按动某层的按钮参与者:乘客前置条件:电梯正常运行后置条件:无 根本操作流
4、:按动某层按钮4用例名称:翻开楼层锁用例描述:当电梯排出故障后,翻开楼层锁,使电梯正常运行。参与者:电梯管理员前置条件:电梯故障排出后置条件:无 根本操作流:1.确认故障排出2.找到锁住的楼层锁,并翻开5用例名称:按动控门按钮用例描述:当乘客需要开关门时,按动开门或关门按钮。参与者:乘客前置条件:电梯正常运行后置条件:无 根本操作流:1.按动开门按钮可选操作流:按动关门按钮6用例名称:按动报警按钮用例描述:当电梯排出故障后,按动报警按钮,发出警报。参与者:乘客前置条件:电梯出现故障后置条件:无 根本操作流:发生故障后按动报警按钮7用例名称:超重警告用例描述:当电梯出现超重时,发出警报。参与者:
5、体重和前置条件:超重后置条件:无 根本操作流:1. 重量超出范围后,发出警报2. 类图:静态描述电梯系统中的类及其相互关系。3. 对象图:对类图的实例化,是系统详细状态在某一时刻的快照。此对象图在如下特定状态:Lock: state=0: 未上锁; floor=1: 1层UpDownLight: state=0: 指示灯关闭GroundFloorLight: floor=1:显示 1层ButtonLight: state=0: 指示灯未亮; floor=1:1层Owtest: isOverweight=false: 电梯未超重QueryList: state=1: 有请求状态FloorButt
6、on: state=0: 未有按钮按下; floor=1: 1层的按钮Door: state=1: 门开CloseDoorTimer: autoclosetime=5000: 自动关门的延时为5sBackGroundTimer: autoreturntime=60*1000: 自动到达1层的延时为1minLglifter: state=1: 处于运行中; position=1: 在1层; isOverweight=false: 未超重4. 时序图:描述电梯为了完成确定事务,对象之间按照时间消息交互的顺序关系。省去了楼层与一次按多个楼层的时序图,因为复杂的时序图可以由此简单时序图经过组合。5. 协作图:描述电梯系统的行为是如何由系统成分协作实现的图。6. 状态图:描述电梯各种状态和状态之间的转移关系。7. 活动图:描述电梯所需活动以及执行这些活动的顺序。8. 构件图:显示电梯的一组构件以及它们之间的相互关系。9. 部署图:显示系统中计算结点的拓扑构造和通信路径与结点上运行的软构件等。实验总结问题解决和心得体会深刻理解了UML各种视图的作用,在理解的根基上作图显得轻松很多。对构件图和部署图理解不够,作图较难。使用visio作图,现成的模块使作图变得更加简易,但假设没有模块支持,显得比拟麻烦,但还是抑制了。注:压缩包内有visio原文件,及由pdf导出的各个视图。