Diagrama de máquina de estados y diagrama de diagrama de estados en UML
¿Qué es un diagrama de máquina de estados?
Diagrama de estado Se utilizan para capturar el comportamiento de un sistema de software. Los diagramas de máquina de estados UML se pueden utilizar para modelar el comportamiento de una clase, un subsistema, un paquete o incluso un sistema completo. También se le llama diagrama de estado o diagrama de transición de estado.
¿Qué es un diagrama de estado?
Los diagramas de estado nos brindan una forma eficiente de modelar las interacciones o comunicaciones que ocurren dentro de las entidades externas y un sistema. Estos diagramas se utilizan para modelar el sistema basado en eventos. El estado de un objeto se controla con la ayuda de un evento. Los diagramas de estados se utilizan para describir varios estados de una entidad dentro del sistema de aplicación.
Hay un total de dos tipos de diagramas de máquina de estados en UML:
1. Diagrama de la máquina de estados conductuales
- Capta el comportamiento de una entidad presente en el sistema.
- Se utiliza para representar la implementación específica de un elemento.
- El comportamiento de un sistema se puede modelar utilizando el diagrama de máquina de estados de comportamiento en OOAD.
2. Diagrama de máquina de estados de protocolo
- Estos diagramas se utilizan para capturar el comportamiento de un protocolo.
- Representa cómo cambia el estado del protocolo con respecto al evento. También representa los cambios correspondientes en el sistema.
- No representan la implementación específica de un elemento.
¿Por qué el diagrama de máquina de estados?
El diagrama de estado se utiliza para capturar el aspecto dinámico de un sistema. Los diagramas de máquina de estados se utilizan para representar el comportamiento de una aplicación. Un objeto pasa por varios estados durante su vida. La vida útil de un objeto permanece hasta que finaliza el programa. El objeto pasa de múltiples estados dependiendo del evento que ocurre dentro del objeto. Cada estado representa información única sobre el objeto.
Los diagramas de estado se utilizan para diseñar sistemas interactivos que respondan a eventos internos o externos. El diagrama de estado en UML visualiza el flujo de ejecución de un estado a otro de un objeto.
Representa el estado de un objeto desde la creación de un objeto hasta que el objeto es destruido o terminado.
El propósito principal de un diagrama de estado es modelar sistemas interactivos y definir todos y cada uno de los estados de un objeto. Los diagramas de gráficos de estados están diseñados para capturar el comportamiento dinámico de un sistema de aplicación. Estos diagramas se utilizan para representar varios estados de un sistema y entidades dentro del sistema.
Notación y símbolo para el diagrama de máquina de estados (Diagrama de diagrama de estados)
A continuación se presentan las distintas notaciones que se utilizan en el diagrama de estado. Todas estas notaciones, cuando se combinan, forman un solo diagrama.
Estado inicial
El símbolo de estado inicial se utiliza para indicar el comienzo de un diagrama de máquina de estados.
Estado final
Este símbolo se utiliza para indicar el final de un diagrama de máquina de estados.
Cuadro de decisión
Contiene una condición. Dependiendo del resultado de una condición de protección evaluada, se toma una nueva ruta para la ejecución del programa.
Transición
Una transición es un cambio de un estado a otro que se produce debido a algún evento. Una transición provoca un cambio en el estado de un objeto.
Caja de estado
Es un momento específico en la vida útil de un objeto. Se define mediante alguna condición o declaración dentro del cuerpo del clasificador. Se utiliza para representar situaciones estáticas y dinámicas.
Se denota mediante un rectángulo con esquinas redondeadas. El nombre de un estado está escrito dentro del rectángulo redondeado.
El nombre de un estado también se puede colocar fuera del rectángulo. Esto se puede hacer en el caso de estados compuestos o de submáquina. Se puede colocar el nombre de un estado dentro del rectángulo o fuera del rectángulo en un cuadro tabular. No se pueden realizar ambas cosas al mismo tiempo.
Un estado puede ser activo o inactivo. Cuando un estado está en modo de trabajo, está activo, tan pronto como deja de ejecutarse y pasa a otro estado, el estado anterior se vuelve inactivo y el estado actual se vuelve activo.
Tipos de Estado
El lenguaje de modelado unificado define tres tipos de estados:
- estado simple
- No tienen ningún subestado.
- estado compuesto
- Este tipo de estados pueden tener uno o más de un subestado.
- Un estado compuesto con dos o más subestados se llama estado ortogonal.
- Estado de la submáquina
- Estos estados son semánticamente iguales a los estados compuestos.
- A diferencia del estado compuesto, podemos reutilizar los estados de la submáquina.
¿Cómo dibujar un diagrama de estado?
Los diagramas de estado se utilizan para describir los distintos estados por los que pasa un objeto. Una transición de un estado a otro se produce debido a algún evento desencadenante. Para dibujar un diagrama de estado en UML, uno debe identificar todos los estados posibles de cualquier entidad en particular.
El propósito de estos Diagramas UML es representar estados de un sistema. Los estados juegan un papel vital en los diagramas de transición de estados. Todos los objetos, estados y eventos esenciales que causan cambios dentro de los estados deben analizarse primero antes de implementar el diagrama.
Al dibujar un diagrama de carta de estado se deben tener en cuenta las siguientes reglas:
- El nombre de una transición de estado debe ser único.
- El nombre de un estado debe ser fácilmente comprensible y describir el comportamiento de un estado.
- Si hay varios objetos, sólo se deben implementar los objetos esenciales.
- Se deben dar nombres propios para cada transición y un evento.
¿Cuándo utilizar un diagrama de máquina de estados?
Los diagramas de estado se utilizan para implementar en profundidad modelos de trabajo de la vida real y sistemas orientados a objetos. Estos diagramas se utilizan para comparar la naturaleza dinámica y estática de un sistema capturando el comportamiento dinámico de un sistema.
Los diagramas de estado se utilizan para capturar los cambios en varias entidades del sistema de principio a fin. Se utilizan para analizar cómo un evento puede desencadenar cambios dentro de múltiples estados de un sistema.
Se utilizan diagramas de caracteres de estado:
- Modelar objetos de un sistema.
- Modelar e implementar sistemas interactivos.
- Para mostrar eventos que desencadenan cambios dentro de los estados.
Ejemplo de máquina de estados
El siguiente diagrama de estados de ejemplo representa el proceso de autenticación del usuario.
Hay un total de dos estados, y el primer estado indica que primero se debe ingresar la OTP. Después de eso, se marca la OTP en el cuadro de decisión, si es correcta, entonces solo se producirá la transición de estado y se validará al usuario. Si la OTP es incorrecta, entonces no se producirá la transición y volverá nuevamente al estado inicial hasta que el usuario ingrese la OTP correcta como se muestra en el ejemplo del diagrama de máquina de estados anterior.
Diagrama de máquina de estados versus diagrama de flujo
A continuación se presentan las diferencias clave entre el diagrama de estado y el diagrama de flujo.
Diagrama de máquina de estado | diagrama de flujo |
---|---|
Representa varios estados de un sistema. | El diagrama de flujo ilustra el flujo de ejecución del programa. |
La máquina de estados tiene un concepto de ESPERA, es decir, esperar una acción o un evento. | El diagrama de flujo no trata de esperar por un concepto. |
Las máquinas de estados se utilizan para un sistema en funcionamiento en vivo. | El diagrama de flujo visualiza secuencias de ramificación de un sistema. |
La máquina de estados es un diagrama de modelado. | Un diagrama de flujo es un flujo de secuencia o un diagrama DFD. |
La máquina de estados puede explorar varios estados de un sistema. | El diagrama de flujo se ocupa de las rutas y controla el flujo. |
Resum
- Los diagramas de diagramas de estado también se denominan diagramas de máquina de estados.
- Estos diagramas se utilizan para modelar el sistema basado en eventos.
- El estado de una entidad se controla con la ayuda de un evento.
- Hay un total de dos tipos de diagramas de máquina de estados: 1) Diagrama de máquina de estados de comportamiento 2) Diagrama de máquina de estados de protocolo
- El diagrama de estado se utiliza para capturar el aspecto dinámico de un sistema.
- Un estado es un momento específico en la vida útil de un objeto.