
单项练习之状态机图.doc
2页单项练习单项练习————状态机图状态机图实验目的:实验目的:1.掌握状态机图的涵义和内容 2.掌握状态机图的绘制方法 3.掌握状态机图的使用范围实验内容:实验内容:画出 ATM 取款过程的完整的 ATM 机的状态机图实验指导:实验指导:1.状态机图的简介状态机图的简介一个状态机图是对一个单一对象进行建模,指定一个对象在它的生命周期中响应事件 的顺序图 1 是一个门的状态机图门具有三个状态:open、closed 和 locked,响应不同 的事件得到不同的状态/ create/ close/ open/ lock/ unlockopenclosedlocked图 1 门的状态机图 状态用圆角矩形加状态名表示初始状态用一个黑原点表示,终点用一个圆和他内部 的一个黑实点表示初始状态和终点分别为状态的进入点和退出点一个状态还可以经过 转换到自己的状态 从一个状态向另一个状态转换使用带箭头的线表示 状态动作用来定义这个状态的进入动作,见图 2.同样也可以定义事件发生的动作或者 经常发生的动作Receiving/ OnEntry / OnExit图 2 带有状态动作的状态示例 连接伪状态被用来把多个连接到一起。
一个单一的连接点可以有一个或多个输入和一个或多个输出、转换连接点可以把一个输入转换成多个输出转换来实现一个静态的状态 分支,如果选择一个伪状态就实现了一个动态的状态分支见图 3 所示[Reply=voice][Reply=SMS][Reply=fax]ReceivingVoiceMessageReceivingSMSMessageReceivingFaxMessageCreatingVoiceMessagecreateSMSMessageCreatingFaxMessage图 3 状态连接伪状态示例2 状态机图示例状态机图示例下面是一个 Seminar 的完整生命周期的状态机图:一个完整的 Seminar 包括以下状态:注 册,教学和期末考试注册又包括以下部分:申请、制定计划、开始注册、人满、关闭申 请对应的状态机图见图 4.[seminar>3]/ Student dropped/ classes end[seminar size<=3]/ Student dropped/ closedProposedScheduledStart EnrollmentFullClose enrollmentBegin taughtFinal exams图 4 Seminar 的状态机图。
