时间图

时间图(也有翻译成定时图)也是一种交互图,用来描述对象或实体随时间变化的状态或值,及其相应的时间或期限约束。时间图应用较广,并不局限于软件工程领域。时间图侧重与时间线相关的值或状态的改变,这些改变可能来自于收到消息、发生事件、系统内部变化或者由时间流逝带来的改变。。

时间图主要元素

时间图中的主要元素包括生命线(Lifeline)、时间线(Timeline)、状态(State)、消息(Message)、事件(Stimuli)、时间约束(Time Constrains)和期限约束(Duration Constrains)。

生命线一般是抽象化的对象或实体,生命线本身有不同的状态或值,这些状态和值随时间发生变化,这里的时间用X轴上固定单位的时间间隔表示,称为时间线。定时图中可能有一个或多个生命线,消息或事件可以从一个生命线传递到另一个生命线带来状态或值的变化。

时间约束表示消息或事件何时发生,期限约束表示状态或值多长时间内有效。不管是时间约束或期限约束,一旦超出了约束范围就表明系统是有问题的。

时间图使用示例

以秒杀为例,秒杀的整个流程涉及到前端活动页面、WEB端Controller、秒杀核心后端服务、秒杀依赖的库存服务和秒杀记录服务,而设计秒杀系统的时候关键的设计就是要对这个流程相关的时间限制以及状态变化进行定义,时间图可以说是进行这位方面设计最合适的工具了。

uml中协作图的作用(UML学习-时间图Timing)(1)

,