第1关:状态转换图-画出初态终态
状态转换图的概念
状态转换图(State Transform Diagram,STD)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。此外,状态图还指明了作为特定事件的结果系统将做哪些动作(例如,处理数据)。
-
状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式。系统对事件的响应,既可以是做一个(或一系列)动作,也可以是仅仅改变系统本身的状态,还可以是既改变状态又做动作。状态转换图的状态有三种包括初态(即初始状态) 、终态(即最终状态)和中间状态,在一张状态转换图中只能有一个初态,而终态则可以有0至多个。
-
事件是在某个特定时刻发生的事情,它是对引起系统做动作或(和)从一个状态转换到另一个状态的外界事件的抽象。简而言之,事件就是引起系统做动作或(和)转换状态的控制信息。
状态转换图的符 表示
-
初态用实心圆表示,终态用一对同心圆(内圆为实心圆)表示。
-
中间状态用圆角矩形表示,可以用两条水平横线把它分成上、中、下3个部分。上面部分为状态的名称,这部分是必须有的;中间部分为状态变量的名字和值,这部分是可选的;下面部分是活动表,这部分也是可选的。
-
状态图中两个状态之间带箭头的连线称为状态转换,箭头指明了转换方向。状态变迁通常是由事件触发的,在这种情况下应在表示状态转换的箭头线上标出触发转换的事件表达式;如果在箭头线上未标明事件,则表示在源状态的内部活动执行完之后自动触发转换。
图 1 状态转换图
闯关要求
测试说明
请按照描述画出机票预定系统状态转换图的初态和终态。请将文件保存至“/home/headless/Desktop/workspace/myshixun/状态转换图/submit/step_detail_1/”目录下,文件命名为“step1.mdj”。
注意事项
- 案例描述中的加粗部分即是状态转换图中的各种元素,请注意甄别。
- 使用桌面上的StarUML工具来进行作图。画状态转换图的具体流程:打开软件->点击File->点击New->在界面右侧的Model Explorer中右键点击Model->点击Add Diagram->点击Statechart Diagram->在界面左侧的Statechart中即可看到绘图所需的元素。
答案:
第2关:状态转换图-画出中间状态
测试说明
答案:同第一关相同。
第3关:状态转换图-画出状态转换
测试说明
答案:同上
第4关:状态转换图-画出机票状态转换图
测试说明
请按照描述画出机票预定系统的状态转换图。请将文件保存至“/home/headless/Desktop/workspace/myshixun/状态转换图/submit/step_detail_4/”目录下,文件命名为“step4.mdj”。
答案同上
如果答案个别一直 错的话可能是educoder后台的bug
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!