¿Qué es una máquina de estados?
Un diagrama de máquina de estados muestra los estados posibles de un objeto y los eventos que lo hacen pasar de uno a otro. Su forma moderna viene de los statecharts de David Harel (1987), que UML adoptó como diagrama de estados.
Un círculo negro marca el inicio y un círculo con borde, el final. Cada caja redondeada es un estado y cada flecha, una transición etiquetada con el evento que la dispara y, opcionalmente, una condición entre corchetes.
Cuándo usar una máquina de estados
- Para definir el ciclo de vida de un contenido, de borrador a revisión, aprobado y publicado, con sus rechazos.
- Para especificar los estados de un pedido o una suscripción antes de programarlos y evitar transiciones imposibles.
- Si lo importante es el orden de los mensajes entre sistemas y no el estado de un objeto, usa un diagrama de secuencia.
Cómo hacer una buena máquina de estados
- Nombra los estados con adjetivos o participios («Aprobado», «En revisión») y las transiciones con eventos («aprobar», «rechazar»).
- Comprueba que todo estado tiene salida, salvo los finales, y que se puede llegar a todos desde el inicio.
- Añade condiciones de guarda cuando un mismo evento puede llevar a estados distintos.
- Describe los estados y eventos al copiloto de IA de MakeCharts y revisa que no falte ninguna transición de error.