UML中的状态图
状态图目录:
一、状态图简介(Brief introduction)
二、状态图元素(State Diagram Elements)及其图符表示
1、状态(States)
2、转移(Transitions)
3、动作(State Actions)
4、自身转移(Self-Transitions)
5、组合状态(Compound States)
6、进入节点(Entry Point)
7、退出节点(Exit Point)
8、历史状态(History States)
9、并发区域(Concurrent Regions)
三、状态图画图步骤
四、(机房收费系统)状态图案例分析(State Diagram Example Analysis)
五、总结(Summary)
一、状态图
状态图用来描述一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态之间的转移。
二、状态图的基本元素及其图符:
1、状态(States)
2、转移(Transitions)
3、动作(State Actions)
4、自身转移(Self-Transitions)
5、组合状态(Compound States)
6、进入节点(Entry Point)
7、退出节点(Exit Point)
8、历史状态(History States)
9、并发区域(Concurrent Regions)
具体内容参考见下文的链接:
http://www.cnblogs.com/ywqu/archive/2009/12/17/1626043.html
三、画状态图的步骤:
1.阅读需求规格说明书
2.读懂系统的用例图
3.阅读用例描述文档
4.根据用例描述文档画出状态转换图。
四、机房收费系统的状态图案例分析:
(1)机房收费系统的“登录用例”描述,如下:
用例名称:登录
用例描述:本系统需要参与者输入用户ID和密码进行系统登录,该用例页面是系统起始页面。
参与者:机房工作人员。
前置条件:工作人员已经在该系统中注册用户。
基本路径:
-
输入用户ID和密码。
-
点击“登录”按钮,进入系统。
-
验证用户权限,进入主页面。
-
备选流程:
-
用户名或密码错误,重新输入。
-
重新登录。
-
进入基本路径。
-
根据“登录”用例描述,画出状态图,如下:
(2)机房收费系统的“充值用例”描述,如下:
用例名称:充值
用例描述:机房工作人员输入学生的卡号进行充值。
参与者:机房工作人员(权限:管理员或操作员)
前置条件:
● 学生的卡号已经注册;
● 充值人员(参与者)的是管理员或操作员,一般用户无权充值。
基本路径:
● 输入学生信息(卡号和充值金额)。
● 点击“充值”按钮。
● 显示充值信息(充值卡号、上次卡余额、现在卡余额、充值时间、充值教师(亦是参与者))。
备选流程:
●如果卡号“未注册”,不可以 充值,需要先对卡号进行注册。
● 注册卡号注册成功,再进行充值。
● “充值金额”必须不小于系统基本数据中的:最少充值金额“(假定基本数据中设置得最少金额为¥5.0)。
●进入基本路径。
在已有的状态图上加入新的状态和转换。
参考资料如下:
http://www.doc88.com/p-676127503722.html
四、总结(Summary)
状态图重点在于描述对象的状态及其状态之间的转移,状态图的基本元素主要有:状态、转移、动作、自身转移、组合状态、进入节点、退出节点、历史状态、并发区域等,状态中的事件分为调用事件(Call)、变化事件(Change)、时间事件(Time)和信号事件(Singal)。最后以实例对状态对进行了分析。