UML作业第五次:分析系统,绘制状态图
2019-05-15 22:21 王亚娟 阅读(280) 评论(0) 编辑 收藏 举报语法小结
简单状态
使用([*]
)开始和结束状态图。使用-->
添加箭头。
合成状态
一个状态也可能是合成的,必须使用关键字state
和花括号来定义合成状态。
长名字
也可以使用关键字state
定义长名字状态。
并发状态
用--
or ||
作为分隔符来合成并发状态。
箭头方向
使用->
定义水平箭头,也可以使用下列格式强制设置箭头方向:
-down->
(default arrow)
-right->
or ->
-left->
-up->
可以用首字母缩写或者开始的两个字母定义方向(如,
-d-
,-down-
和-do-
是完全等价的)
注释
可以用 note left of
, note right of
, note top of
, note bottom of
关键字来定义注释。还可以定义多行注释。以及浮动注释。
更多注释
可以在合成状态中放置注释。
显示参数
用skinparam
改变字体和颜色。
可以在如下场景中使用:
- 在图示的定义中,
- 在引入的文件中,
- 在命令行或者ANT任务提供的配置文件中。
还可以为状态的构造类型指定特殊的字体和颜色。
语言描述
@startuml
[*] --> 待载
待载 --> 上升:进入[目标楼层>当前楼层]/关门上行
待载 --> 下降:进入[目标楼层<当前楼层]/关门下行
上升 -> 楼间停:[进人/出人]/停机开门
下降 -> 楼间停:[进人/出人]/停机开门
楼间停 -> 上升:[目标楼层>当前楼层]/关门上行
楼间停 -> 下降:[目标楼层<当前楼层]/关门下行
楼间停 -left-> 待载:[无人]/关门
@enduml
@startuml
[*] -> 空额
空额 -> [*]
空额 --> 有余额:存款/余额=余额+存款额
空额 --> 负债:取款[取款额<最大限额]/余额=余额-存款额
有余额 -> 有余额:存款/余额=余额+存款额
有余额 -> 有余额:取款[取款额<余额]/余额=余额-取款额
有余额 --> 负债:取款[取款额>余额]/余额=余额-取款额
有余额 --> 空额:取款[取款额=余额]/余额=余额-取款额
负债 -> 负债
负债 --> 有余额
负债 --> 空额
@enduml