实验四 创建状态图
一、实验目的
1.理解状态图的基本概念;
2. 掌握状态图的组成要素及含义;
3. 掌握在Rational Rose中绘制状态图的操作方法。
二、 预备知识
建立状态图
状态图显示了对象的动作行为,显示对象可能存在的各种状态,对象创建时的状态,对象删除时的状态,对象如何从一种状态转移到另一种状态,对象在不同状态中干什么。
创建状态图(图4-1)
(1) 在浏览器中右击类。
(2) 选择new→statechart diagram,对该类创建一个状态图,并命名该图。
图4-1:创建状态图
在图中增加状态,初始和终止状态(图4-2)
(1) 选择工具栏的state按钮,单击框图增加一个状态,双击状态命名。
(2) 选择工具栏的start state 和end state ,单击框图增加初始状态和终止状态。初始状态是对象首次实例化时的状态,状态图中只有一个初始状态。终止状态表示对象在内存中被删除之前的状态,状态图中有0个、1个或多个终止状态。
图4-2:增加状态
状态之间增加交接
(1) 选择state transition工具栏按钮。
(2) 从一种状态拖到另一种状态。
(3) 双击交接弹出对话框,可以在“General”中增加事件(Event) (图4-3),在“Detail”中增加保证条件(Guard Condition) (图4-4)等交接的细节。事件用来在交接中从一个对象发送给另一个对象,保证条件放在中括号里,控制是否发生交接。
(4) 图4-4,Action中,输入活动/操作名称,为事件添加活动/操作。
图4-3:增加事件
图4-4:增加保证条件
在状态中增加内部转移活动(图4-5)
(1)右击状态并选择open specification。
(2)选择Action标签,右击空白处并选择Insert。
(3)双击新活动(清单中有“Entry/”)打开活动规范,“When”下拉中可以修改事件
名,如DO,Exit,在“name”中输入活动名称。
图4-5:在状态中增加活动
三、实验内容
题目一:
要求:Windows的图形用户界面(GUI)有多种状态,请为其画出状态图。
需求分析:
(1) 状态类型:开机状态(start)、睡眠状态(sleep)、工作状态(run)、关机状态(close)
(2) 状态转换
1) 从开机状态开始,在电脑启动后,Windows GUI 进入工作状态
2) 在工作状态下,如果用户选择Sleep选项或者电脑长期没有得到请求,Windows
GUI进入睡眠状态
3) 睡眠之后如果得到启动电脑的请求,则进入工作状态
4) 在睡眠状态下如果电脑电力不足,将直接进入关机状态
5) 在工作状态下选择关机选项或者电脑电力不足,电脑进入关机状态
题目二:
要求:为电梯建立状态图
需求分析:
(1) 电梯的第一层有向上按钮,最高层有向下按钮,中间各层都有向上或向下的按
钮。
(2) 平时电梯处于第一层,当有人按了向上按钮时,执行动作【电梯上移】,电梯向上移动到指定的楼层,到达后电梯处于闲置状态,此时可以接收向上移动或向下移动请求,分别执行【电梯上移】或【电梯下移】。若闲置时间超过3分钟,则执行动作【电梯下移】电梯自动移动到第一层。
本文发布于:2024-09-22 17:39:59,感谢您对本站的认可!
本文链接:https://www.17tex.com/fanyi/16322.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |