一、概要
1.定义:说明对象在它的生命期中响应事件所经历的状态序列,以及他们对那些事件的响应。
2.应用:揭示Actor、类、子系统和组件的复杂特性;为实时系统建模。
二、组成
1.状态
1)对象的状态是指在这个对象的生命期中的一个条件或状况,在此期间对象将满足某些条件、执行某 些活动或等待某些事件。
2)状态的组成:
a)名称name
b)进入协作和退出协作entry action/exit action
c)内部转换internal transition
d)子状态substate
e)延迟事件deferred event
2.转移
1)转移是由一种状态到另一种状态的迁移,这种迁移由被建模实体内部或外部事件触发;对一个类来 说,转移通常是调用了一个可以引起状态发生重要变化的操作的结果。
2)组成
a)源状态source state
b)事件触发event trigger
c)监护条件guard condition
d)动作action
e)目标状态target state
3.开始、结束
三、状态机
1.它描述了一个对象或一个交互在生命期内响应事件所经历的状态序列。
2.单个类或一组类之间协作的行为可以用状态机来描述
3.一个状态机涉及到状态、转换(从一个状态到另一个状态的流)、事件(触发转换的)
四、状态图与活动图的区别
1.状态图侧重从行为的结果来描述,活动图则从行为的动作来描述。
2.在实际项目中,活动图并不是必须的。一般在描述一个并行的过程或者行为、描述一个算法、描述一个跨越多个用例的活动时,使用活动图;状态图则描述了一个具体对象的可能状态以及他们之间的转换。
五、实践
学生查看余额
学生注册
用户工作
对状态图的画法,一直不是太理解。上边所画的状态图,其中可能有不妥之处,还望各位大神斧正。