软件工程状态转换图

  • Post author:
  • Post category:其他



状态转换图的概念


状态转换图(State Transform Diagram,STD)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。

此外,状态图还指明了作为特定事件的结果系统将做哪些动作(例如,处理数据)。

  • 状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式。系统对事件的响应,既可以是做一个(或一系列)动作,也可以是仅仅改变系统本身的状态,还可以是既改变状态又做动作。状态转换图的状态有三种包括初态(即初始状态) 、终态(即最终状态)和中间状态,在一张状态转换图中只能有一个初态,而终态则可以有0至多个。

  • 事件是在某个特定时刻发生的事情,它是对引起系统做动作或(和)从一个状态转换到另一个状态的外界事件的抽象。简而言之,事件就是引起系统做动作或(和)转换状态的控制信息。


状态转换图的符号表示

  • 初态用实心圆表示,终态用一对同心圆(内圆为实心圆)表示。

  • 中间状态用圆角矩形表示,可以用两条水平横线把它分成上、中、下3个部分。上面部分为状态的名称,这部分是必须有的;中间部分为状态变量的名字和值,这部分是可选的;下面部分是活动表,这部分也是可选的。

  • 状态图中两个状态之间带箭头的连线称为状态转换,箭头指明了转换方向。状态变迁通常是由事件触发的,在这种情况下应在表示状态转换的箭头线上标出触发转换的事件表达式;如果在箭头线上未标明事件,则表示在源状态的内部活动执行完之后自动触发转换。

例如:机票预定系统中涉及的状态是机票的状态。当新的航空公司入驻之后,系统管理员会向数据库中

添加机票

相关信息,该机票进入

审核

状态,当该机票

审核通过

后,则处于

待售

状态;在销售过程中,如果该机票全部

销售完毕

,则进入

售罄

状态;销售过程中,如果

航班取消

,机票会进入

下架

状态,机票售罄或下架后,管理员

清空机票

信息,机票会进入

退出流通

状态,最后管理员

删除机票

。请根据上述描述画出相应的状态转换图。



版权声明:本文为weixin_43894879原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。