[完全免费] 在线UML Sequence Diagram 时序图工具 - 教程第3部分

时序图教程

序列图描述了一组对象之间的相互作用参与协作(或情况),布置成按时间顺序; 它通过它们的“生命线”和它们发送给对方的消息来显示参与交互的对象。

序列图例如:ATM

什么是UML中的序列图?

UML序列图是详细说明如何执行操作的交互图。由于序列图可用于捕获协作环境中对象之间的交互,因此序列图的主要用途之一就是从用例所表达的需求过渡到下一个更正式的精化级别。用例通常被细化为一个或多个序列图。

序列图是时间焦点,它们通过使用图的垂直轴来可视化地显示交互的顺序,以表示什么消息被发送以及何时发送。

序列图捕获不同粒度级别的交互:

  1. 系统用户与系统之间,系统与其他系统之间或子系统之间的高级别交互(有时称为系统顺序图)
  2. 在实现用例或操作的协作中发生的交互(实例图或通用图)
  3. 表示对象在(Model,View / Controller)MVC模式中交互的软件框架

尝试一下!

查找在线序列图工具?只需点击下面的绘图按钮即可在线创建序列图。Visual Paradigm Online是免费*且直观的。在开始之前,您也可以通过此序列图教程了解序列图。

现在画

序列图符号

生命线

生命线代表互动中的个人参与者。

UML序列图

演员

演员一种与主体交互的实体所扮演的角色类型(例如,通过交换信号和数据)。演员也可以是主体的外部(即,演员的实例不是其相应主体的实例的一部分)。它们通常代表人类用户,外部硬件或其他主题扮演的角色。

UML序列图:Actor示例

注意:

  1. 演员并不一定代表一个特定的物理实体,而只是某个实体的特殊角色
  2. 一个人可以扮演几个不同的角色,相反,一个给定的演员可以由多个不同的人扮演。

激活

激活由生命线上的薄矩形表示)表示元素正在执行操作的时段。矩形的顶部和底部分别与开始时间和完成时间对齐

UML序列图:激活示例

消息

通话信息

呼叫消息定义了交互的生命线之间的特定通信,其表示调用目标生命线的操作。

UML序列图:呼叫消息示例
返回消息

返回消息定义了交互的生命线之间的特定通信,该通信表示将信息传递给对应的先前消息的调用者。

UML序列图:返回消息示例
自我信息

自我消息定义了交互的生命线之间的特定通信,其表示对同一生命线的消息的调用。

UML序列图:自我信息示例
递归消息

递归消息定义了交互的生命线之间的特定通信,它表示对同一生命线的消息的调用。它是激活消息被调用的激活之上的目标点。

UML序列图:递归消息示例
创建消息

创建消息定义了交互的生命线之间的特定通信,其表示(目标)生命线的实例化。

UML序列图:创建消息示例
销毁消息

摧毁消息定义了交互的生命线之间的特定通信,这代表了摧毁目标生命线生命周期的请求。

UML序列图:销毁消息示例
时间消息

持续时间消息定义了交互的生命线之间的特定通信,其显示消息调用的两个时刻之间的距离。

UML序列图:持续时间消息示例

注意

注释(注释)赋予将各种注释附加到元素的能力。评论不带有语义力,但可能包含对建模者有用的信息。

UML序列图:注意示例

何时绘制序列图?

  1. 模拟系统中活动对象之间的高级交互
  2. 在实现用例的协作中对对象实例之间的交互进行建模
  3. 对实现操作的协作中的对象之间的交互进行建模
  4. 无论是对泛型交互进行建模(显示通过交互的所有可能路径)或交互的特定实例(仅显示通过交互的一条路径)

如何绘制序列图?

  1. 确定将参与一般协作(或用例场景)的一组对象
    1. 如果您根据用例的场景推导序列图,请首先选择正常场景
    2. 您应该知道激活用例的主要角色
  2. 考虑场景的第一点(或者如果从用例事件流的第一个点开始)
  3. 考虑当系统将消息发送给系统时,系统需要做些什么才能响应该角色
    1. 系统返回消息响应之前需要处理哪些系统?
    2. 例如,一位顾客将ATM卡插入机器,系统将在正常情况下显示“输入PIN码”,对吗?
    3. 猜猜,ADM内部由系统“后面”的一组对象处理什么?类似的,读取并验证ATM卡(读卡器),读取持卡人(银行)的卡信息并询问密码,或者返回“无效卡类型,插入另一张卡”等。
    4. 通过这种方式,您将识别该特定场景的目标应用程序的候选对象和操作,并且还可以使用这些信息作为基础来逐步推导类图。
  4. 重复场景中的每一点(或事件流),直到完成场景中的所有点。

你也可以:

  1. 为例外或替代方案绘制一组相应的序列图。

序列图示例

下面的序列图示例显示了预订座位时用户和订票系统之间的交互。它主要由四部分组成:角色,用户,边界对象'接口',控制器对象'mainController'和两个实体对象的路由和路由。

时序图示例 - 预订座位

下面的序列图示例显示了患者入院过程。它显示了使用时间和持续时间的限制。

序列图示例 - 医院病床分配

序列图示例显示如何在交互建模中使用递归消息。

序列图示例:对象创建和删除

许多图表 (了解更多)

UML

DFD

AWSAzureITIL



### 回答1: 创建模型时序图sequence diagram)的步骤包括: 1. 确定模型中的对象和活动:首先需要确定模型中需要出现的各个对象,以及这些对象在模型中扮演的角色,进而确定模型中需要描述的各个活动。 2. 确定对象之间的关系:在模型中,各个对象之间存在着各种不同的关系,例如,调用、引用、继承等,需要根据实际情况确定各个对象之间的关系,并用适当的箭头表示。 3. 绘制时序图:在确定了模型中的对象和它们之间的关系之后,可以开始绘制时序图时序图一般由多个水平方向排列的 lifeline(生命线)构成,每个 lifeline 代表一个对象,在它上面可以画出对象的各个操作,用垂直的带箭头的线表示。 4. 补充详细信息:最后,需要根据实际情况添加时序图的详细信息,例如各个操作的参数和返回值等,进一步完善模型的表达能力。 ### 回答2: 时序图也是UML建模中非常重要的一种图形,它主要用来描述对象之间的交互关系和消息通信。它能够清晰地展示对象之间的动态关系,对于分析和设计系统非常有帮助。 时序图的主要元素包括对象、生命线、消息、激活条和控制流。在时序图中,每个对象都表示一个状态或实体,生命线表示对象在一定时间段内的存在。消息则表示对象间的交互,包括同步消息、异步消息、返回消息等。激活条则表示在消息发送或者接收时,接收方的响应时间。控制流则表示消息之间的流向和顺序。 时序图的绘制可以根据具体的需求进行制定,一般分为三个步骤。第一步是确定参与交互的对象,包括系统、人员、组件等。第二步是建立生命线和激活条,确定对象的存活期和响应时间。第三步是建立消息和控制流,清晰地展示对象之间的消息交互关系。 时序图的优点在于能够以非常直观的方式展示对象间的交互行为,可以帮助开发人员更好地理解系统的交互方式,从而更好地设计出系统的结构和功能。同时,它还能够帮助进行调试和测试,方便开发人员对交互流程进行分析和优化。 总之,时序图UML建模中非常重要的一种图形,可以用来描述对象之间的交互关系和消息通信。在系统分析和设计中具有广泛的应用,是开发人员必须掌握的技能之一。 ### 回答3: 时序图UML建模中用于表示系统中对象之间交互行为的一种图示方法。时序图通常是用来表示系统中对象之间的交互行为,也可用于描述系统中对象的一般行为。 时序图展示了一系列对象在一段时间内的相互关系、相互交互。时序图就像一个类的活动图,这里就是一个方法的调用过程。时序图由对象、生命线、消息和控制流组成。 在时序图中,对象被表示为矩形,矩形上方是对象的名称,下方是对象类型。生命线通常是垂直线,表示对象在某段时间内的存在。消息是表示对象之间的通信,有同步消息和异步消息。同步消息是表示调用一个方法并在返回之前等待结果,而异步消息表示调用一个方法并立即返回。 时序图还包括控制流和逆食流,在控制流中,消息从一个生命线流向另一个生命线。逆流控制是一条带箭头的曲线,表示消息的回传。 时序图的优点在于它是一种高度形式化的语言,理解时序图需要一定的技能和专业知识。但是它的优点是,它能够在开发过程的任何阶段使用,并且能够提供完整的交互细节,帮助开发人员精确定义系统的行为,并且帮助测试人员准确地测试和验证系统的行为。在实现新系统、更改或调整现有系统或维护现有系统的过程中,时序图都可以提供实用的帮助。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值