uml中协作图的作用(UML学习-时间图Timing)
时间图(也有翻译成定时图)也是一种交互图,用来描述对象或实体随时间变化的状态或值,及其相应的时间或期限约束。时间图应用较广,并不局限于软件工程领域。时间图侧重与时间线相关的值或状态的改变,这些改变可能来自于收到消息、发生事件、系统内部变化或者由时间流逝带来的改变。。
时间图主要元素
时间图中的主要元素包括生命线(Lifeline)、时间线(Timeline)、状态(State)、消息(Message)、事件(Stimuli)、时间约束(Time Constrains)和期限约束(Duration Constrains)。
生命线一般是抽象化的对象或实体,生命线本身有不同的状态或值,这些状态和值随时间发生变化,这里的时间用X轴上固定单位的时间间隔表示,称为时间线。定时图中可能有一个或多个生命线,消息或事件可以从一个生命线传递到另一个生命线带来状态或值的变化。
时间约束表示消息或事件何时发生,期限约束表示状态或值多长时间内有效。不管是时间约束或期限约束,一旦超出了约束范围就表明系统是有问题的。
- 生命线(Lifeline):交互中的单个参与者,与对象或实体相对应。
- 状态(State):对象或实体的离散或连续状态,对象或实体的状态随时间变化。X轴表示时间,Y轴表示状态
- 时间线(Timeline):有效状态和时间的集合。使用时间线来显示对象或实体在某个状态上保持了多长时间
- 消息(Time Message):对象或实体之间传递信息的载体
- 事件(Stimuli):引起生命线状态改变的事情
- 期限约束(Duration Constraints):确定是否满足指定期限间隔的约束,若不满足则说明系统有问题
- 时间约束(Time Constraints):确定是否满足指定时间要求的约束,若不满足则说明系统有问题
以秒杀为例,秒杀的整个流程涉及到前端活动页面、WEB端Controller、秒杀核心后端服务、秒杀依赖的库存服务和秒杀记录服务,而设计秒杀系统的时候关键的设计就是要对这个流程相关的时间限制以及状态变化进行定义,时间图可以说是进行这位方面设计最合适的工具了。
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com