uml体系结构第7章

uml体系结构第7章

ID:39988921

大小:222.50 KB

页数:34页

时间:2019-07-16

uml体系结构第7章_第1页
uml体系结构第7章_第2页
uml体系结构第7章_第3页
uml体系结构第7章_第4页
uml体系结构第7章_第5页
资源描述:

《uml体系结构第7章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章状态图现在要开始学习的是如何随时间变化的UML动态元素。本章的主要内容是:●什么是状态图。●事件、动作和监视条件。●子状态:顺序的和并发的。●历史状态。●为什么状态图很重要。在前—章的最后曾提到,这一章要开始学习你在前面没有遇到过的另一类UML元素。这个新类被称为行为元素,它们能够展示UML模型部件如何随时间变化。事物的一个普遍的现象是随着时间的流逝,都要经历变化。任何计算机系统也是如此。当系统与用户(也可能是其他系统)交互的时候,组成系统的对象为了适应交互要经历必要的变化。如果要对系统建立模型,那么模型中必须要反映出这种

2、变化。本章将学习这类元素中的一种:状态图。7.1什么是状态图一种表征系统变化的方法可以说成是对象改变了自己的状态(state)以响应事件和时间的流逝。下面是几个简单的例子:当你拉下电灯的开关时,电灯改变了它的状态,由关变为开。当你按下远程遥控器的调频按钮时,电视机的状态由显示一个频道的节目变为显示另一个频道的节目。经过一个适宜的时间后,洗衣机可以由洗涤变为漂洗状态。UML状态图能够展示这种变化。它描述了一个对象所处的可能状态以及状态之间的转移,并给出了状态变化序列的起点和终点。状态图也被引用为状态机(statemachine)。

3、状态图与类图、对象图和用例图有着本质的不同。前面章节介绍过的这3种图能够对一个系统或者至少是一组类、对象或用例建立模型。而状态图只是对单个对象建立模型。通常状态名的首字母要大写,并且最好给状态一个以“ing”为结尾的名字。(例如“Dialing”、“Faxing”)。当然有时也无法起这样的名字(例如“Idle”)。7.1.1符号集下图显示了圆角矩形代表一个状态,状态间带箭头的实线代表状态的迁移(转移)。箭头指向目标状态。图中的实心圆代表状态转移的起点,公牛眼形圆圈代表终点。7.1.2在状态图标中增加细节UML提供了在状态图标中增

4、加细节的选项。类似于类的图标可以被分成3个区域(名字,属性和操作区域),你可以把状态图标也分成3个区域。最上面的区域保存状态名(不管分不分区都得有状态名),中间区域保存状态变量,下面区域保存的是活动。下图说明了状态图标中的细节。状态变量,像计时器或者计数器—样,有时很有用途。活动是由事件和动作组成:3个常用的事件和动作是入口动作(entry),即系统进入该状态时要发生的动作;出口动作(exit),即系统离开该状态时要发生的动作;动作(do)是系统处于该状态时要发生的动作。还可以增加其他的动作或事件。传真机例子可以用来说明状态变量

5、和活动。当它发传真时,换句话说就是当它处于Faxing(发传真)状态时,传真机记录下发送传真的日期和时间(用状态变量“Date”和“Time”来表示),并且记录接收者的电话号码和名字(用状态变量“PhoneNumber”和“Owner”来表示。在这个状态下,传真机参加给传真“增加日期戳(addingadatestamp)”和“时间戳(timestamp)”的活动,以及增加电话号码和接收者姓名到传真机中。这个状态下的其他活动是机器拉进传真页,逐页传真,完成传输任务。在Idle状态下,传真机要显示出当前的时间和日期。下图显示了传真机

6、的状态图。7.1.3增加转移的细节:事件和动作可以对状态转移线添加一些细节。可以指明引起转移发生的事件(触发器事件)和引起状态变化所需执行的计算(动作)。添加的事件和动作写在转移线上,触发器事件和动作名之间用反斜杠隔开。有时一个事件会引起没有相关动作的状态转移,或者有时一个转移是由于某个状态完成了它的活动所引起(而不是由于事件引起)。这种类型的状态转移被称为无触发器转移。图形用户界面(GUI)是一个可以说明状态转移细节的例子。在这里,假设GUI可以处于以下3种状态之一:Initializing(初始化)。Working(工作)。

7、ShutDown(关闭)。当打开PC电源的时候,自启动发生。因此TurningthePCon(打开PC)是一个触发器事件,它导致了GUI的状态转移到Initializing状态,而Bootup(自启动)是一个在转移过程中执行的动作。由于Initializing状态中活动的完成,GUI将转移进入Working状态。当你对PC选择ShutDown(关闭机器)时,就生成了一个引起转移到ShutingDown状态的触发器事件,最后PC自己切断电源,整个过程结束。下面的状态图捕获了GUI的这些状态和转移。7.1.4增加转移的细节:监视条件

8、上面对GUI的状态变迁还有考虑不全之处。首先,如果你离开,你的计算机将无人照管或者你漫无目的坐在一旁,不打字或不碰鼠标,那么过一段时间屏幕保护程序就会运行。用状态转移的术语来说,就是如果GUI在足够的时间内没有接收到用户的输入,那么它将从Working状态转移到

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。