Diagramas de colaboracion

32,042 views
31,323 views

Published on

2 Comments
7 Likes
Statistics
Notes
No Downloads
Views
Total views
32,042
On SlideShare
0
From Embeds
0
Number of Embeds
123
Actions
Shares
0
Downloads
1,007
Comments
2
Likes
7
Embeds 0
No embeds

No notes for slide

Diagramas de colaboracion

  1. 1. DIAGRAMA DE COLABORACIÓN <ul><ul><li>ANALISIS Y DISEÑO DE SISTEMAS II </li></ul></ul>
  2. 2. Qué es un diagrama de colaboración? Un diagrama de colaboración es una forma de representar interacción entre objetos .
  3. 3. En que consiste un diagrama de colaboración ? <ul><li>Muestra cómo las instancias específicas de las clases trabajan juntas para conseguir un objetivo común. </li></ul><ul><li>Consiste especificar un contrato entre objetos </li></ul><ul><li>Implementa las asociaciones del diagrama de clases mediante el paso de mensajes de un objeto a otro. Dicha implementación es llamada &quot;enlace&quot;. </li></ul>
  4. 4. ¿Que representa el algoritmo de colabora ración? <ul><li>Representa la parte esencial para la descripción de un patrón de diseño. </li></ul>
  5. 5. DIAGRAMA DE COLABORACION <ul><li>Un Diagrama de Colaboración muestra una interacción organizada basándose en los objetos que toman parte en la interacción y los enlaces entre los mismos (en cuanto a la interacción se refiere). </li></ul><ul><li>UML –Interacciones </li></ul><ul><li>Los objetos interactúan entre sí pasándose mensajes. </li></ul><ul><li>Los objetos se conectan a través de enlaces . </li></ul><ul><li>Mensaje: especifica transmisión de información entre objetos. </li></ul><ul><li>Enlace: especifica un camino a lo largo del cual un objeto puede enviar un mensaje a otro objeto. </li></ul><ul><li>Es una conexión semántica entre objetos. </li></ul><ul><li>Es una instancia de una relación. </li></ul><ul><li>Puede contener los adornos de la relación. </li></ul>
  6. 6. Las Interacciones modelan aspectos dinámicos del sistema <ul><li>Llamada.- Invoca una operación sobre un objeto. Puede ser a sí mismo. </li></ul><ul><li>Retorno.- El receptor de una llamada devuelve un valor al emisor, si es necesario. </li></ul><ul><li>Envío.- Envía una señal a un objeto. </li></ul>
  7. 7. Creación .- Para crear un objeto. <ul><li>Destrucción .- Para destruir un objeto. Puede destruirse a sí mismo. </li></ul><ul><li>Secuenciación </li></ul><ul><li>El flujo de mensajes forma una secuencia. </li></ul><ul><li>La secuencia es indicada por un número antes del mensaje y una flecha dirigida. </li></ul><ul><li>Para modelar caminos alternativos, se coloca el mismo número de secuencia seguido de un número de subsecuencia. </li></ul>
  8. 8. Secuenciación <ul><li>Parámetros . Reales Se pueden modelar los parámetros reales enviados y también los retornos. Ej: 1.2.1: x:=operación(‘m’) </li></ul>
  9. 9. Elementos de un Diagrama de Colaboración <ul><li>Objetos o Roles: nodos del grafo. </li></ul><ul><li>Enlaces o comunicaciones: arcos del grafo. </li></ul><ul><li>Mensajes: llevan número de secuencia y flecha dirigida. </li></ul><ul><li>Anidamiento: se utiliza la numeración decimal Ej: 1, 1.1, 1.1.1 ........ </li></ul><ul><li>Iteración: colocar un * antes del número de secuencia y una cláusula de condición, si es necesario. ej. *[x>0]. </li></ul><ul><li>Bifurcación: 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. </li></ul>
  10. 10. Ejemplo: Un lector solicita un libro al bibliotecario, y le brinda su título. El bibliotecario busca el libro en un índice y solicita al asistente que le alcance el libro. Diagrama de secuencia <ul><li>Solicita un libro </li></ul><ul><li>brindándole el titulo </li></ul><ul><li>busca el libro </li></ul><ul><li>devuelve información </li></ul><ul><li>solicita que le alcance el libro </li></ul><ul><li>el libro es entregado </li></ul><ul><li>entrega el libro </li></ul>LECTOR BIBLIOTECARIO ASISTENTE INDICE
  11. 11. Diagrama de colaboración <ul><li>5:El libro es entregado() </li></ul><ul><li>4:Solicita que le alcance el libro () </li></ul><ul><li>2:Busca el libro () </li></ul><ul><li>3:devuelve información () </li></ul><ul><li>6:Entrega libro () </li></ul><ul><li>1:Solicita libro () </li></ul><ul><li>dándole el titulo () </li></ul>LECTOR BIBLIOTECARIO ASISTENTE INDICE
  12. 12. DEPENDENCIAS <ul><li>¿De qué artefactos depende su construcción? </li></ul><ul><li>R.- Su construcción depende de: </li></ul><ul><ul><li>Los casos de uso (expandidos). </li></ul></ul><ul><ul><li>Diagrama de secuencias. </li></ul></ul><ul><ul><li>Diagrama de Clases. </li></ul></ul>
  13. 13. ¿Qué otros artefactos se generan a través de él? <ul><li>R.- Los artefactos que se generan son: </li></ul><ul><ul><li>Diagramas de Estado. </li></ul></ul><ul><ul><li>Diagrama de Componentes. </li></ul></ul><ul><ul><li>Diagrama de Despliegue </li></ul></ul>
  14. 14. ¿En qué etapa se realiza su construcción? <ul><li>Este tipo de diagramas se utilizan más frecuentemente en la fase de diseño , es decir, cuando estamos diseñando la implementación de las relaciones. </li></ul>
  15. 15. EJEMPLO DE APLICACIÓN <ul><li>CONTROL DE SEGURIDAD DEL HOTEL PLAZA </li></ul>
  16. 16. <ul><li>En cuanto a la representación, un Diagrama de Colaboración muestra a una serie de objetos con los enlaces entre los mismos, y con los mensajes que se intercambian dichos objetos. </li></ul><ul><li>Los mensajes son flechas que van junto al enlace por el que “circulan”, y con el nombre del mensaje y los parámetros (si los tiene) entre paréntesis. Cada mensaje lleva un número de secuencia que denota cuál es el mensaje que le precede , excepto el mensaje que inicia el diagrama, que no lleva número de secuencia. </li></ul>
  17. 17. <ul><li>Se pueden indicar alternativas con condiciones entre corchetes ( por ejemplo : [condición_de_test] : nombre_de_método() ), tal y como aparece en el ejemplo . </li></ul><ul><li>También se puede mostrar el anidamiento de mensajes con números de secuencia como 2.1 , que significa que el mensaje con número de secuencia 2 no acaba de ejecutarse hasta que no se han ejecutado todos los 2. x . </li></ul>
  18. 18. Elementos básicos para el diagrama de Colaboración <ul><li>Objeto </li></ul><ul><li>Un objeto se representa con un rectángulo, que contiene el nombre y la clase del objeto en un formato nombreObjeto: nombreClase . </li></ul><ul><li>Enlaces </li></ul><ul><li>Un enlace es una instancia de una asociación en un diagrama de clases. Se representa como una linea contínua que une a dos objetos. Esta acompañada por un número que indica el orden dentro de la interacción y por un estereotipo que indica que tipo de objeto recibe el mensaje.   </li></ul>
  19. 19. <ul><li>Flujo de mensajes </li></ul><ul><li>Expresa el envío de un mensaje. Se representa mediante una flecha dirigida cercana a un enlace. </li></ul><ul><li>Marcadores de creación y destrucción de objetos </li></ul><ul><li>Puede mostrarse en la gráfica cuáles objetos son creados y destruidos, agregando una restricción con la palabra new o delete , respectivamente, cercana al rectángulo del objeto </li></ul>
  20. 20. <ul><li>Objeto compuesto </li></ul><ul><li>Es una representación alternativa de un objeto y sus atributos. En esta representación se muestran los objetos contenidos dentro del rectángulo que representa al objeto que los contiene. Un ejemplo es el siguiente objeto vehículo. </li></ul>Vehículo_hotel1:Vehículo MT-1234 : Motor FR-00145 : Frenos TR-4583 : Transmisión
  21. 21. Ejemplo: <ul><ul><li>Caso de Uso: Pago por servicios. </li></ul></ul><ul><ul><li>Actores: Administrador, Agente, Huésped (inicia). </li></ul></ul><ul><ul><li>Propósito: Controlar que el huésped cancele su estadía y los servicios solicitados. </li></ul></ul><ul><ul><li>Tipo: Primario y esencial. </li></ul></ul><ul><ul><li>Descripción: El agente designado en administración controla que el huésped cancele su estadía en el hotel y los servicios solicitados. </li></ul></ul><ul><li>  </li></ul>CURSO NORMAL DE LOS EVENTOS ACCIÓN DEL ACTOR RESPUESTA DEL SISTEMA 1.- Se inicia cuando el huésped desea retirarse del hotel. 2.- El agente revisa que no exista daños ni perdidas durante la estadía del huésped. 3.- El administrador calcula el saldo que debe cancelar, y pide la cancelación total al huésped 4.- El huésped cancela al administrador y este le proporciona una factura.   6.- El administrador recibe las llaves de la habitación. 7.- El huésped se retira.             5.- El sistema actualiza el pago del huésped.        
  22. 22. EJEMPLO: HOTEL PLAZA
  23. 23. CONCLUSIÓN
  24. 24. Un diagrama de colaboración es un tipo de diagrama que muestra las interacciones entre objetos organizadas y enlazados entre ellos.
  25. 25. A continuación tenemos los titulos fundamentales de un diagrama de colaboración: <ul><li>1.- Objeto </li></ul><ul><li>2.- Enlaces </li></ul><ul><li>3.- Objeto compuesto </li></ul><ul><li>4.- Patrón de diseño </li></ul><ul><li>5.- Contexto </li></ul><ul><li>6.- Objeto activo : </li></ul>
  26. 26. Un uso de un diagrama de colaboración es mostrar la implementación de una operación. La colaboración muestra los parámetros y las variables locales de la operación, así como asociaciones más permanentes. Cuando se implementa el comportamiento, la secuencia de los mensajes corresponde a la estructura de llamadas anidadas y el paso de señales del programa.  
  27. 27. Un diagrama de colaboración muestra relaciones entre roles geométricamente y relaciona los mensajes con las relaciones, pero las secuencias temporales están menos claras Prefieren el diagrama de colaboración, porque pueden usar la distribución para indicar cómo se conectan estáticamente los objetos
  28. 28. GRACIAS

×