Bloques de construcción de uml



Descargar 150.01 Kb.
Página6/7
Fecha de conversión28.10.2018
Tamaño150.01 Kb.
1   2   3   4   5   6   7

Diagramas de interacción

Los diagramas de interacción muestran comportamientos parciales del sistema, describiendo la secuencia de mensajes que intercambian los objetos para llevar a cabo una tarea.


Algunos autores llaman a este tipo de diagramas escenarios, quizás porque representan escenas del comportamiento del software. Cada diagrama sólo refleja un aspecto concreto de un comportamiento particular del sistema y no el comportamiento global. Por tanto, los diagramas de interacción muestran una visión fragmentada de la dinámica del sistema.
En UML existen dos tipos de diagramas de interacción: los diagramas de secuencia y los diagramas de colaboración. Ambos son equivalentes, la diferencia entre ellos está en los aspectos que resaltan. Los diagramas de secuencia destacan el orden temporal de los mensajes, mientras que los diagramas de colaboración destacan la organización estructural de los objetos.

Diagrama de secuencias

Los diagramas de secuencias se han convertido en una de las representaciones más populares de UML debido a su simplicidad y capacidad de expresión. Su éxito radica en que es muy sencillo dibujarlos y, aún más importante, es muy fácil interpretarlos correctamente.





Los objetos que participan en la interacción se dibujan en la parte superior del diagrama horizontalmente. Los objetos se representan igual que las clases pero con el nombre subrayado.
Debajo de cada objeto se dibuja una línea vertical discontinua llamada línea de vida. Esta línea indica el tiempo de existencia del objeto.
Los mensajes se representan con una flecha desde la línea de vida del objeto que envía el mensaje hacía la línea de vida del objeto que lo recibe. La etiqueta de la flecha indica la operación del objeto receptor que se invoca, incluyendo los parámetros. Si la operación devuelve algún valor se dibuja una flecha discontinua apuntando hacia el objeto emisor, etiquetada con el nombre del valor de retorno.
Generalmente, los objetos que participan en una interacción existen durante todo el tiempo que dura dicha interacción. Siendo así, los objetos se sitúan en la parte superior y sus líneas de vida se prolongan a lo largo de todo del diagrama. Sin embargo, también pueden crearse y destruirse objetos durante la interacción. La creación y la destrucción de un objeto se indican mediante mensajes estereotipados con <> y <> respectivamente. Cuando un objeto es creado durante la interacción, se sitúa en el diagrama alineado con el mensaje de creación y no en la parte superior. La destrucción de un objeto se muestra dibujando una x grande al final de su línea vida.
Los rectángulos que aparecen sobre las líneas de vida de los objetos se llaman focos de control. El foco de control representa el período de tiempo durante el cual el objeto está ejecutando una acción y tiene el control del sistema.
En los diagramas de secuencias, los caminos alternativos de una bifurcación se pueden representar con mensajes separados que parten del mismo punto. Pero, esta forma de representar las bifurcaciones hace menos comprensibles los diagramas. En general, los diagramas de secuencia no reflejan alternativas o bifurcaciones. Si existe un camino alternativo se representa en otro diagrama de secuencia. El inconveniente de esta decisión es que requiere un número mayor de diagramas, pero resultan más comprensibles. Además, tiene la virtud de independizar un camino de otro. Así se puede diseñar un camino y después el otro, sin modificar lo que ya está hecho. Para el software evolutivo, es una cualidad importante.
Los diagramas de secuencias se utilizan principalmente para modelar la vista de diseño dinámica, o de comportamiento, del sistema. Aunque, debido a su éxito, también es frecuente utilizarlos para describir los flujos de eventos de los casos de uso.

Diagrama de colaboración

Un diagrama de colaboración es un diagrama de interacción que resalta la organización estructural de los objetos que envían y reciben los mensajes. Este tipo de diagrama muestra un conjunto de objetos, enlaces entre ellos y los mensajes que intercambian.


Un diagrama de colaboración es un grafo, donde los nodos del grafo son los objetos y los arcos son los enlaces. Un enlace es una instancia de una asociación o una dependencia entre clases. Se representa con una línea continua que une los dos objetos.



Los mensajes se escriben junto a los enlaces, indicando el sentido con una flecha que apunta hacia al objeto receptor y numerándolos para expresar el orden temporal. Se pueden representar mensajes anidados utilizando la numeración decimal de Dewey (1 es el primer mensaje, 1.1 es el primer mensaje dentro del mensaje 1, 1.2 es el segundo mensaje dentro del mensaje 1,...)
Las iteraciones se representan anteponiendo al número del mensaje el símbolo *. Opcionalmente, se puede añadir una expresión que indique hasta cuando se repite la iteración.
Para modelar una bifurcación, el número de secuencia del mensaje se precede de una cláusula de condición. Los caminos alternativos de una bifurcación tendrán el mismo número de secuencia. Pero, cada camino debe ser distinguible de forma única por una condición que no se solape con las otras.

Diagrama de estados

En UML los diagramas de estados se utilizan para modelar el comportamiento de un objeto dirigido por eventos. Aunque también pueden utilizarse para mostrar el comportamiento del sistema global o de subsistemas.


Un diagrama de estados modela la vida de un objeto mediante una máquina de estados. Cada estado representa una situación durante la cual el objeto satisface alguna condición, realiza alguna actividad o espera algún evento. Los estados se dibujan con una caja con las esquinas redondeadas.
Se pueden definir dos estados especiales:


  • Estado inicial: indica el punto de comienzo de la ejecución de la máquina de estados. Se representa con un círculo negro.




  • Estado final: indica la terminación de la ejecución de la máquina de estados. Se representa con un círculo negro dentro de un círculo blanco.

Las transiciones entre estados se dibujan con una flecha continua desde el estado origen al estado destino. En cada transición se puede especificar:




  • Evento de disparo: es el evento cuya recepción por el objeto cuando se encuentra en el estado origen provoca la transición el estado destino. Por ejemplo, en la Figura 1, el evento rechazado dispara la transición del estado Confirmar crédito a Cancelar Pedido.




  • Condición de guarda: es una expresión booleana que se evalúa cuando se recibe el evento disparador. La transición solamente se dispara si la expresión toma el valor verdadero. Las condiciones de guarda se escriben entre corchetes a continuación del evento de disparo. Por ejemplo: en la transición “pedido recibido [precio>límite]”, de la Figura 1, pedido recibido indica el evento de disparo y [precio>límite ] la condición de guarda.




  • Acción: es una computación atómica que se ejecuta cuando se dispara la transición. Las acciones son atómicas, es decir, no pueden ser interrumpidas por ningún evento y, por lo tanto se ejecutan hasta su terminación. Una acción puede ser una llamada a una operación, el envío de una señal, la creación de un objeto,... Las acciones se escriben, precedidas del símbolo “/”, a continuación del evento de disparo y de la guarda. Por ejemplo: en la transición aprobado/cargarCuenta( ) de la figura, aprobado indica el evento de disparo y cargarCuenta() la acción que se ejecuta cuando se realiza la transición.

A
**Fig


las transiciones en las cuales el estado origen y el destino son el mismo se les llama autotransiciones.





Compartir con tus amigos:
1   2   3   4   5   6   7


La base de datos está protegida por derechos de autor ©composi.info 2017
enviar mensaje

    Página principal