时序图怎么画 时序图的作用是什么

2025-01-2101:45:33生活经验0

在UML 2.0的更新中,我们不再使用传统的协作图表述,而是将其明确地定义为“通信图”,即Communication Diagram。此变化将“协作”作为表达静态结构和动态行为的概念组合的一个结构事物,用以描述不同事物如何协同完成复杂功能。在UML 2.0以后,通信图替代了传统的协作图,它不再有专门的“协作图”标识,而是统称为“协作”。

通信图可以被视为对象图的延伸。除了展示对象间的关联,它还能清晰地描绘出对象间的消息传递过程。这种图表能够贯穿业务建模、概念建模以及设计建模的各个阶段。

在通信图中,对象代表了在协作图交互中扮演特定角色的实体。虽然时序图中也有对象的概念,但通信图并不直接表示对象的创建和撤销。这意味着在通信图中,对象的位置并不受特定限制。

链的符号在通信图和对象图中是相同的,它们都是通过实线连接两个类角色。这种链允许在交互执行过程中进行消息的传递和交互。UML甚至支持对象自身与自身之间建立链的关系。链可以通过命名来区分和解释,也可以简单地作为连接存在而不进行命名。

消息是通信图中的核心元素,它代表对象间通过链发送的信息。对象间的箭头标明了在它们之间交换的消息流。每条消息都由一个对象发出,并被消息指定的另一个对象接收。链则用于传输或实现消息的传递。在通信图中,消息的类型与时序图中相同,但为了明确交互过程中消息的时间顺序,我们会给消息添加顺序号。

协作图描述了对象间交互的模式。它通过对象间的连接和相互发送的消息来展示参与交互的对象。图中可以包含对象和主角实例,以及描述它们之间关系和交互的连接与消息。通过说明对象间如何通过发送消息来实现通信,协作图详细描述了参与对象中的活动情况。

尽管协作图与时序图在某种程度上具有相似性,它们的作用却是有所区别的。协作图更侧重于展示对象间的结构关系,有助于我们理解系统的对象结构。而时序图则更擅长表现交互中消息顺序的设计,如消息的循环、并发、异步信号等。在选择使用哪种图时,如果更关注对象间的结构关系,应选择协作图;如果更在意交互的执行顺序,则应选择时序图。

通信图在设计和用例实现中也扮演着重要角色。例如,在设计阶段,我们可以通过通信图来描述某个用例如“下单购买”的实现流程。这种图能够清晰地展示用例是如何通过对象交互来实现的。同样地,我们也可以针对不同层次——概念层、说明层和实现层——为业务实体对象、分析类对象和设计类对象绘制相应的协作图。