Diagramas de estado

Diagramas de estado.

Un diagrama de estado, también conocido como diagrama de máquina de estados o diagrama de transición de estados, es una herramienta gráfica que se utiliza para modelar el comportamiento de un sistema en respuesta a eventos. 

En esencia, estos diagramas muestran los diferentes estados por los que puede pasar un objeto o sistema, así como las transiciones entre ellos. Las transiciones son activadas por eventos específicos y pueden llevar consigo acciones o cambios en las propiedades del objeto. 

Ejemplo.


La imagen muestra una maquina de transición de estados de un objeto que bien pudiera ser un pedido, una vez elaborado se guarda o bien se manda.

Durante el envío puede tomar los estados de enviado, en tránsito, entregado o leído que es un estado final. Otros estados finales son archivado, purgado o cancelado.

Elementos.

State.

Un Estado representa una situación en la que se cumple alguna condición invariante; esta condición puede ser estática (esperando un evento) o dinámica (realizando un conjunto de actividades).

StateMachine.

Un elemento StateMachine es un contenedor para grupos de elementos State relacionados.

Initial 

El elemento inicial representa un pseudoestado utilizado para indicar el estado predeterminado de un estado compuesto; puede haber un vértice Inicial en cada Región del Estado Compuesto.


Final

El elemento Actividad final indica la finalización de una Actividad; al llegar a la Final, toda ejecución en el diagrama de Actividad se cancela.


History.

Hay dos tipos de pseudoestado de Historia definidos en UML: historia superficial y profunda.


Synch 

Un estado de sincronización es útil para indicar que las rutas simultáneas de StateMachine están sincronizadas. Se utilizan para dividir y volver a unir períodos de procesamiento paralelo.


Objeto.

Un objeto es una instancia particular de una clase en tiempo de ejecución.


Entry.

Los pseudoestados de punto de entrada se utilizan para definir el comienzo de una StateMachine. Existe un punto de entrada para cada región, que dirige la configuración inicial del estado concurrente.

Junction.

Los pseudoestados de unión se utilizan para diseñar rutas de transición complejas en diagramas de StateMachine. Se puede utilizar un cruce para combinar o fusionar múltiples rutas en una ruta de transición compartida.


Exit.

Los puntos de salida se utilizan en elementos de máquina de estados y diagramas de máquina de estados para indicar el punto donde se sale de la máquina y la transición que genera este punto de salida.

Terminate.

El pseudoestado Terminate indica que al entrar en su pseudoestado, finaliza la ejecución de StateMachine.


Conectores.

Object Flow.

Un flujo de objetos conecta dos elementos, con datos específicos que pasan a través de él, modelando una transición activa.

Transition.

Un conector de transición representa el movimiento lógico de un estado a otro en un diagrama de StateMachine.

Los diagramas de estado son útiles para:

  1. Visualizar el comportamiento de sistemas complejos: Permiten descomponer un sistema en sus estados y transiciones, facilitando su comprensión y análisis.
  2. Comunicar el diseño de software: Son una herramienta efectiva para comunicar el comportamiento de un sistema a otros desarrolladores, usuarios o partes interesadas.
  3. Documentar sistemas existentes: Se pueden usar para documentar el comportamiento de sistemas ya existentes, facilitando su mantenimiento y modificación.
  4. Encontrar y corregir errores: Al modelar el flujo de estados, pueden ayudar a identificar posibles errores o comportamientos no deseados en el sistema.


Comentarios

Entradas más populares de este blog

Diagramas de casos de uso

UML

Diagramas de clases