📜  UML-状态图

📅  最后修改于: 2020-12-13 15:08:51             🧑  作者: Mango


图本身的名称阐明了图的用途和其他细节。它描述了系统中组件的不同状态。状态特定于系统的组件/对象。

状态图描述了状态机。状态机可以定义为定义对象不同状态的机器,这些状态由外部或内部事件控制。

下一章将说明的活动图是一种特殊的Statechart图。正如Statechart图定义状态一样,它用于对对象的生存期进行建模。

状态图的目的

状态图图是用于对系统的动态特性建模的五个UML图之一。它们在对象的生存期内定义了不同的状态,并且这些状态会因事件而改变。状态图可用于对电抗系统进行建模。反应系统可以定义为对外部或内部事件做出响应的系统。

状态图描述了从一种状态到另一种状态的控制流程。状态被定义为一个对象存在的条件,并且该对象在触发某些事件时会发生变化。状态图最重要的目的是对对象从创建到终止的生命周期建模。

状态图还用于系统的正向和反向工程。但是,主要目的是对反应系统进行建模。

以下是使用Statechart图的主要目的-

  • 为系统的动态方面建模。

  • 模拟反应系统的寿命。

  • 描述对象在其生存期内的不同状态。

  • 定义状态机以对对象的状态建模。

如何绘制状态图?

状态图用于描述其生命周期中不同对象的状态。重点放在一些内部或外部事件的状态变化上。对象的这些状态对于准确分析和实现它们很重要。

状态图对于描述状态非常重要。可以将状态标识为发生特定事件时对象的状态。

在绘制状态图之前,我们应澄清以下几点-

  • 确定要分析的重要对象。

  • 确定状态。

  • 识别事件。

以下是Statechart图的示例,其中分析了Order对象的状态

第一状态是过程从其开始的空闲状态。到达下一个状态的事件包括发送请求,确认请求和调度顺序。这些事件负责订单对象的状态更改。

在对象(此处为订购对象)的生命周期内,它会经历以下状态,并且可能会出现一些异常出口。由于系统中的某些问题,可能会发生这种异常退出。整个生命周期完成后,将其视为一个完整的事务,如下图所示。下图还显示了对象的初始状态和最终状态。

UML状态图

在哪里使用状态图?

通过以上讨论,我们可以定义Statechart图的实际应用。状态图用于对系统的动态方面进行建模,就像本教程中讨论的其他四个图一样。但是,它具有用于建模动态特性的一些区别特征。

状态图定义了组件的状态,并且这些状态变化本质上是动态的。其特定目的是定义事件触发的状态更改。事件是影响系统的内部或外部因素。

状态图用于对状态以及系统上运行的事件进行建模。实施系统时,弄清对象在其生命周期中的不同状态非常重要,为此使用状态图图。识别出这些状态和事件后,将使用它们进行建模,并在系统实施期间使用这些模型。

如果研究Statechart图的实际实现,那么它主要用于分析受事件影响的对象状态。该分析有助于理解系统在执行过程中的行为。

主要用法可以描述为-

  • 为系统的对象状态建模。

  • 为反应系统建模。反应系统由反应对象组成。

  • 识别负责状态更改的事件。

  • 正向和反向工程。