MBSE建模学习之六:状态机和状态机图
状态机(StateMachine)
状态机(StateMachine)用于表示事件驱动的行为。在状态机图中,用系统的不同状态之间事件驱动的转移机制来说明一系列的行为发生过程。它一般作为一个模块(Block)的类目行为(ClassifierBehavior)。类目行为是一个类(如模块)从开始工作,一直到结束的整个过程的行为。一个模块只有一个类目行为。它也可以作为模块的一个普通的拥有行为(OwnedBehavior),表示模块的一种功能。
和活动(Activity)一样,状态机同时也是一种模块(Block)元素。一个复杂的状态机行为可以进行分解。在上层的状态机行为中,通过一个“子机状态”(SubmachineState)元素表示对下层或其它状态机的调用。
作为行为,状态机的发生一样需要规定发生的语境(Context)。如果状态机是某个模块的类目行为或拥有行为,则这个模块是状态机的语境;否则它自己是它的语境。状态机中的状态的内部行为(entry、do及exit)如果没有明确的语境,则它们的语境是这个状态机的语境。
状态机是通过状态机中的状态(State)以及状态是如何转换的来说明系统的行为过程。状态机中的状态(State)和转移(Transition)不像活动图中的动作(Action),它们本身并不说明究竟这个行为是如何把一个输入的信息(或其它物质)转为输出的信息(或其它物质)。(动作—Action中,可以通过语句或专用的动作类型来说明对象的生成、变换或删除等)但是,在状态和转移中可以包含其它行为(如一个活动),它可以用它包含的行为来说明具体是转换的细节。状态机更像是把系统的行为串联起来的一种作用,它着重展现的是系统在这个行为之间所处的状态,以及状态是在什么时机,或通过什么机制来转换的(这个时机被定义为触发器,这个机制是触发器的事件)。所以它适合作为系统的整个工作过程的总体说明,例如用来说明系统工作的任务阶段说明。
状态(State)
状态(State)是系统处于某种工作状态一种表示方法。状