terminal

codeando_simple

terminal

menu

terminal

search_module

guest@codeandosimple: ~/system/search $ grep -r "" .

Press [ENTER] to execute search

Status

Engine: Ready

Database: Online

Index: V2.1.0_LATEST

bash — cat uml-estados.md
guest@codeandosimple: ~/blog/uml $ cat diagrama-estados.md

Diagrama de Estados_

// "Siempre estoy haciendo lo que no puedo hacer, para poder aprender cómo hacerlo." - Pablo Picasso

El Diagrama de Estados, también conocido como Diagrama de Máquina de Estados, es una técnica usada para describir comportamiento, muestra los estados posibles de un objeto durante su ciclo de vida y los eventos que causan los cambios de estado.

# Componentes

  • Estados: Situaciones o condiciones durante la vida del objeto (rectángulos redondeados).

  • Transiciones: Flechas que conectan los estados.

  • Eventos: Activadores de cambios.

  • Acciones: Procesos rápidos asociados a la transición (Ej: "obtiene primer artículo").

  • Guardias: Condiciones lógicas entre corchetes (Ej: "[Todos los artículos comprobados]").

Sintaxis: Evento [Guardia] / Acción

Sintaxis de transición

Estados Concurrentes

Podemos modelar estados concurrentes mediante la división del superestado.

Estados concurrentes

# Ejemplo: Ciclo de vida de un pedido

Ejemplo estados de un pedido
01.

Comprobación

Estado inicial tras la creación. El sistema realiza comprobaciones del artículo. Si faltan artículos, pasa a 'Espera'; si todo está listo, a 'Despachando'.

02.

Espera

El sistema aguarda a que lleguen artículos sin stock. Se mantiene hasta que la guardia se cumple.

03.

Despachando

Inicia la entrega física del pedido una vez confirmada la disponibilidad global.

04.

Entregado

Estado final que indica la recepción exitosa por parte del cliente.

# Propósito

  • Modelar comportamiento dinámico de una entidad.

  • Especificar reacciones a eventos temporales.

  • Valiosos en sistemas complejos y embebidos.

# Ventajas

  • done_all

    Visión clara de todos los estados posibles.

  • done_all

    Análisis profundo del comportamiento para detectar fallos.

  • done_all

    Diseño detallado de la lógica de control.

# Conclusiones

El diagrama de estados es útil para modelar el comportamiento de los objetos a lo largo del tiempo. Da una comprensión detallada de los estados por los que puede pasar un objeto y cómo responde a eventos específicos.

A pesar de su tendencia a la complejidad en aplicaciones a gran escala, sigue siendo esencial para el análisis y diseño de sistemas que requieren una gestión detallada del estado del objeto.