实验6状态图上机实践.doc
文本预览下载声明
实验六 状态图上机实践
一、实验目的
掌握状态图的涵义和内容
熟悉状态图的基本功能和使用方法
掌握如何使用建模工具绘制状态图的方法
二、实验学时:2学时
三、实验类型:设计型
四、实验平台及实验准备
计算机一台;面向对象可视化建模工具Rational Rose 2003或者IBM Rational Rose都可以
五、实验内容及步骤
实验内容
选取简易教务管理系统中任一对象(可以绘制出状态图的对象),分析其可能存在的状态,并确定引起状态转移的事件等,根据需求陈述绘制出状态图。
实验步骤
创建Statechart框图
Statechart框图显示一个对象从创建到删除的生命周期。这些框图可以建模类的动态行为。在一般项目中,不对每个类创建Statechart框图。事实上,许多项目根本不用Statechart框图。图9.1是Flight类的Statechart框图。
创建Statechart框图
Rose中可以对每个类创建一个或多个Statechart框图。类的所有状态和过渡都体现在这个框图中。在浏览器中,Statechart框图放在类下面。Statechart图的Roe图标如下:
要创建Statechart图:
1.右单击浏览器中相应类。
2.从弹出菜单选择NewStatechart Diagram。
Rose在浏览器中这个类下面创建State/Activity Model项目。这个项目下面是新的Statechart框图NewDiagram。可以对这个类创建其他Statechart框图或活动框图,只要右单击浏览器中的State/Activity Model并选择NewStatechart Diagram NewActivity Diagram
增加状态
状态是对象存在的可能条件。可以从两个地方确定对象状态:属性值和与其他对象的关系。
在UML中,状态用圆角矩形表示:
要增加状态:
1.从工具栏中选择State。
2.单击Statechart框图中状态要出现的位置。
或
1.选择Tools>Create >State。
2.单击Statechart框图中状态要出现的位置。
要将文档加进状态中:
l.双击所要状态打开状态规范窗口。
2.选择General标签。
3.在Documentation字段中输人文档。
或
1.选择所要状态。
2.选择BrowseSpecification。
3.选择General标签。
4.在Documentation字段中输人文档。
增加状态细节
对象处于特定状态时,可能要进行一些活动,例如生成报表、进行计算或向另一对象发送事件。
一个状态可以加进五种信息:活动、进人操作、退出操作、事件和状态历史。下面举例说明这五种信息。
活动
活动是对象在特定状态时进行的行为。
活动在状态内显示,前面加上do和冒号。
进入操作
进入操作是对象进入某个状态时发生的行为。
进入操作在状态内显示,前面加上entry和斜杠。
退出操作
退出操作与进入操作相似,但它在退出某个状态时发生。
退出操作在状态内显示,前面加上exit和斜杠。
活动、进入操作和退出操作中的行为可以包括向另一对象发送事件。这时活动、进入操作和退出操作前面加上^。框图变成:
Do/^Target.Event(Arguments)
其中Target是接收事件的对象,Event是要发的消息。Arguments是所发消息的参数。在Rose中,可以向发出的事件增加这些细节。
活动还可能在收到某个事件后发生。
所有这些项目都可以通过活动规范窗口加进Rose模型,如图9.3。
要加进活动:
1.打开所要状态的规范窗口。
2.选择Action标签。
3.右单击Action框。
4.从弹出菜单选择Insert。。
5.双击新操作。
6.在Actions字段中输入操作。
7.在When框中选择Do,使其成为活动.
要增加进入操作:
1.打开所要状态的规范窗口。
2.选择Action标签。
3.右单击Action框。
4.从弹出菜单选择Insert。
5.双击新操作。
6.在Actions字段中输入操作。
7.在When框中选择On Entry。
要增加退出操作:
1.打开所要状态的规范窗口。
2.选择Action标签.
3.右单击Action框.
4.从弹出菜单选择Insert。
5
显示全部