UML作业第五次:分析系统,绘制状态图
一、状态图 语法小结
简单状态
使用([*])开始和结束状态图。使用-->添加箭头。


更改呈现状态
可以使用隐藏空描述将状态呈现为简单框


合成状态
一个状态也可能是合成的,必须使用关键字state和花括号来定义合成状态


长名字
可以使用关键字state定义长名字状态


并发状态
用-- or ||作为分隔符来合成并发状态


箭头方向
使用->定义水平箭头,也可以使用下列格式强制设置箭头方向:


注释
可以用 note left of, note right of, note top of, note bottom of 关键字来定义注释,还可以定义多行注释


更多注释
可以在合成状态中放置注释


显示参数
用skinparam改变字体和颜色:
还可以为状态的构造类型指定特殊的字体和颜色


二、《电梯控制》系统、《银行账户》系统
(1)电梯控制
- 电梯存在待载、上升、下降、和楼间停4钟基本状态。
- 电梯无人承载时停在某一楼层,处在待载状态。
- 当有人进入电梯,并且当前楼层比目标楼层低,电梯上升。
- 当前楼层比目标楼层高,电梯下降。
- 所有人都在本层下电梯,电梯回到待载状态。
- 电梯中还有人,判断目标楼层是否比当前楼层高,高则上升,低则下降。
(2)银行账户
- 银行账户存在空额、有余额、负债三种状态。
- 初建立的账户没有存款,处于空额状态。
- 空额状态,向其中存款,进入有余额状态;从账户取款,进入负债状态。
- 在有余额状态时,向账户存款,余额增加,但还是处于有余额状态。
- 账户取款,取款额小于余额,处于有余额状态;等于余额,回到空额状态;大于余额,进入负债状态。
- 负债时,取款,余额减少,还是负债状态;存款,存款额小于负债额,还是负债;存款额等于负债额,回到空额状态;存款额大于负债额,进入有余额状态。 电梯系统:
![]()
![]()
- 银行系统:
![]()
![]()




浙公网安备 33010602011771号