jueves, 8 de diciembre de 2016

Diagrama de Estado

Un diagrama de estados muestra el flujo de control entre estados (en qué estados posibles puede estar “cierto algo” y como se producen los cambios entre dichos estados.

Componentes 

Estado
Un estado es una condición o situación en la vida de un objeto durante la cual satisface una condición, realiza alguna actividad o espera algún evento.
Evento
Un evento es la especificación de un acontecimiento significativo que ocupa un lugar en el tiempo y en el espacio. Es la aparición de un estímulo que puede (o no) activar una transición de estado.
Envío de mensajes
Aparte de mostrar la transición de estados por medio de eventos, puede representarse el momento en el cual se envían mensajes a otros objetos. Esto se ejecuta a través de una línea punteada dirigida al diagrama de estados del objeto receptor del mensaje.
Transición simple
Una transición simple es un vínculo entre dos estados que señala que un objeto en el primer estado puede entrar al segundo estado y ejecutar ciertas operaciones, cuando un evento ocurre y si ciertas condiciones son satisfechas.
Transición interna
Es una transición que sigue en el mismo estado, en vez de implicar dos estados distintos. Representa un evento que no causa cambio de estado. Se denota como una cadena adicional en el compartimiento de acciones del estado.
Acciones:
Podemos especificar la solicitud de un servicio a otro objeto como consecuencia de la transición. Se puede especificar al realizar una acción como consecuencia de entrar, salir, estar en un estado, o por la ocurrencia de un evento.
Generalización de Estados:
  • Podemos reducir la complejidad de estos diagramas usando la generalización de estados.
  • Distinguimos así entre superestado y subestados.
  • Un estado puede obtener varios subestados disjuntos.
  • Los subestados heredan las variables de estado y las transiciones externas.
  • La agregación de estados es la composición de un estado a partir de varios estados independientes.

La composición es concurrente por lo que el objeto estará en alguno de los estados de cada uno de los subestados concurrentes. La destrucción de un objeto es efectiva cuando el flujo del control del autómata alcanza un estado final no anidado. La llegada a un estado final guardado implica la subida al superestado asociado, no el fin del objeto.
Subestados
Un estado puede separarse en varios subestados, con transiciones entre ellos y conexiones al nivel superior. Las conexiones se ven al nivel inferior como estados de inicio o fin, los cuales se suponen conectados a las entradas y salidas del nivel inmediatamente superior.
Transacción Compleja
Una transición compleja relaciona tres o más estados en una transición de múltiples fuentes y/o múltiples destinos. Representa la subdivisión en discuciones del control del objeto o una sincronización. Se representa como una línea vertical de la cual salen o entran varias líneas de transición de estado.
Transición a estados anidados
Una transición de hacia un estado complejo (descrito mediante estados guardados) significa la entrada al estado inicial del subdiagrama. Las transiciones que salen del estado complejo se definen como transiciones desde cada uno de los subestados hacia afuera (a cualquier nivel de profundidad).
Transiciones temporizadas
  • Las esperas son actividades que tienen asociada cierta duración.
  • La actividad de espera se interrumpe cuando el evento esperado tiene lugar.
  • Este evento desencadena una transición que permite salir del estado que alberga la actividad de espera.
  • El flujo de control se transmite entonces 
Resultado de imagen para Componentes del diagrama de Estado
Referencia:

Diagrama de Caso de Uso y Secuencia

Referencia:



Diagrama de Colaboración

  •  Los diagramas de colaboración también llamados diagramas de comunicación, son otra representación basada en UML, con la finalidad de mostrar las interacciones organizadas entre los objetos, basándose específicamente en la comunicación, mensajes y enlaces que entre los objetos comparten mostrando explícitamente las relaciones de los roles, se dice que son una abstracción del diagrama de secuencia, con la diferencia de que el tiempo (la línea de vida) se considera una dimensión aparte, por ello encontraremos en estos diagramas numeraciones secuenciales de los mensajes.

Resultado de imagen para Diagrama de Colaboracion

¿Que componen los Diagramas de Colaboración?

Objetos o Roles
Son los objetos que se encargan de la interacción, gráficamente son los nodos del grafo.
Enlaces o comunicaciones
Especifica un camino a lo largo del cual un objeto puede enviar un mensaje a otro objeto, gráficamente son los arcos del grafo.
Mensajes
Especifican la  transmisión de información entre objetos, llevan número de secuencia y flecha dirigida.
Anidamientos
Utilizan la numeración decimal   Ej: 1, 1.1, 1.1.1 ……..
Iteraciones
Sirve para colocar un * antes del número de secuencia y una cláusula de condición, si es necesario. ej. *[x>0].
Bifurcaciones
Para los caminos alternativos tendrán el mismo número de secuencia, seguido del número de subsecuencia y se deben distinguir por una condición.


Referencias: