ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

时序图

2019-12-07 10:51:43  阅读:979  来源: 互联网

标签:对象 时序 发送 消息 生命线 图中


1

 

 2

 

 

时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,其中的每条消息对应一个类操作或状态机中引起转换的触发事件。

 

简介

编辑

组成元素

时序图中包括如下元素:角色,对象,生命线,控制焦点和消息。 1、角色(Actor) 系统角色,可以是人或者其他系统,子系统。 2、对象(Object) 对象代表时序图中的对象在交互中所扮演的角色,位于时序图顶部和对象代表 对象实例对象实例 类角色。 对象一般包含以下三种命名方式: 第一种方式包含对象名和类名。 第二种方式只显示类名不显示对象名,即为一个匿名对象。 第三种方式只显示对象名不显示类名。 3、生命线(Lifeline) 生命线实例生命线实例 生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线,对象间 的消息存在于两条虚线间。 4、控制焦点(Activation) 控制焦点代表时序图中的对象执行一项操作的时期,在时序图中每条生命线上的窄的矩形代表活动期。它可以被理解成C语言语义中一对花括号“{}”中的内容。 激活期实例激活期实例 5、消息(Message) 消息是定义交互和协作中交换信息的类,用于对实体间的通信内容建模,信息用于在实体间传递信息。允许实体请求其他的服务,类角色通过发送和接受信息进行通信。 消息实例消息实例

结构

时序图描述对象是如何交互的,并且将重点放在消息序列上。也就是说,描述消息是如何在对象间发送和接收的。时序图有两个坐标轴:纵坐标轴显示时间,横坐标轴显示对象。每一个对象的表示方法是:矩形框中写有对象和 / 或类名,且名字下面有下划线;同时有一条纵向的虚线表示对象在序列中的执行情况(即发送和接收的消息对象的活动) , 这条虚线称为对象的生命线。对象间的通信用对象的生命线之间的水平的消息线来表示,消息线的箭头说明消息的类型,如同步,异步或简单。 浏览时序图的方法是,从上到下查看对象间交换的消息,分析那些随着时间的流逝而发生的消息交换。 时序图中的消息可以是信号、操作调用或类似于C++ 中的RPC( Remote Procedure Call,远程过程调用)或Java中的RMI( Remote Method Invocation ,远程方法调用)。当对象接收到一个消息时,该对象中的一项活动就会启动,我们把这一过程称做激活 ( Activation )。 激活会显示控制焦点,表明对象在某一个时间点开始执行。一个被激活的对象或者是执行它自身的代码,或者是等待另一个对象的返回(该被激活的对象已经向另一个对象发送了消息)。在图形上,激活被绘制为对象生命线上的一个瘦高矩形。 消息可以用消息名及参数来标识。消息还可带有条件表达式,表示分支或决定是否发送消息。如果用于表示分支,则每个分支是相互排斥的,即在某一时刻仅可发送分支中的一个消息。消息也可以有顺序号,但是在时序图中,消息的顺序号很少使用,因为时序图已经将消息的顺序显式地表示出来了。 一个对象可以通过发送消息来创建另一个对象,当一个对象被删除或自我删除时,该对象用 "X"标识。

创建步骤

1、确定交互过程的上下文; 2、识别参与过程的交互对象; 3、为每个对象设置生命线; 4、从初始消息开始,依次画出随后消息; 5、考虑消息的嵌套,标示消息发生时的时间点,则采用FOC(focus of control); 6、说明时间约束的地点。

标签:对象,时序,发送,消息,生命线,图中
来源: https://www.cnblogs.com/Tpf386/p/12000887.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有