Curso Uml 2.3 Diagramas De InteraccióN

41,629 views

Published on

Capitulo 2.3 Diagramas de iteracción (Secuencia y Comunicación/Colaboración) del workshop de 20 horas de UML y Proceso Unificado

Published in: Technology
12 Comments
45 Likes
Statistics
Notes
  • Esta muy completo y con varios ejemplos en cada tipo de diagrama eso me ayudo
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • gracias, seria bueno tenerlo, pero no se puede.. pero GRACIAS
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • si la idea es compartir, estaria bueno habilitar descarga...
    q idea tenias cuando lo subiste????
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Excelente Tutorial, pero seria genial la descarga
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • muy bueno
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
41,629
On SlideShare
0
From Embeds
0
Number of Embeds
1,255
Actions
Shares
0
Downloads
0
Comments
12
Likes
45
Embeds 0
No embeds

No notes for slide

Curso Uml 2.3 Diagramas De InteraccióN

  1. 1. Curso UML Emilio Avilés Ávila http://www.techmi.es
  2. 2. Workshop (20 horas) Workshop UML y Proceso Unificad para empresas y profesionales
  3. 3. Temario <ul><li>Introducción </li></ul><ul><li>Diagramas </li></ul><ul><ul><li>Casos de Uso </li></ul></ul><ul><ul><li>Diagramas de Clases </li></ul></ul><ul><ul><li>Diagramas de Interacción </li></ul></ul><ul><ul><li>Diagramas de Comportamiento </li></ul></ul><ul><ul><li>Diagramas de implementación </li></ul></ul><ul><ul><li>Otros diagramas </li></ul></ul><ul><li>Proceso Unificado </li></ul>
  4. 4. Tema 2 Diagramas
  5. 5. Objetivos <ul><li>Introducción </li></ul><ul><li>Diagramas </li></ul><ul><ul><li>Casos de Uso </li></ul></ul><ul><ul><li>Diagramas de Clases </li></ul></ul><ul><ul><li>Diagramas de Interacción </li></ul></ul><ul><ul><li>Diagramas de Comportamiento </li></ul></ul><ul><ul><li>Diagramas de implementación </li></ul></ul><ul><ul><li>Otros diagramas </li></ul></ul><ul><li>Proceso Unificado </li></ul><ul><li>Identificar usos de los Diagramas de iteración. </li></ul><ul><li>Elementos UML de los diagramas de secuencia. </li></ul><ul><li>Elementos UML de los diagramas de Comunicación. </li></ul><ul><li>Prácticas y Ejercicios </li></ul>
  6. 6. Tema 2.3 Diagrama de interacción
  7. 7. 2.3 – Diagrama de Interacción <ul><li>Introducción </li></ul><ul><ul><li>Los diagramas de interacción se utilizan para modelar los aspectos dinámicos de un sistema. </li></ul></ul><ul><ul><li>Hay dos tipos de diagrama de interacción, ambos basados en la misma información, pero cada uno enfatizando un aspecto particular </li></ul></ul><ul><ul><ul><li>Diagramas de Secuencia: </li></ul></ul></ul><ul><ul><ul><ul><li>Ordenación temporal de los mensajes </li></ul></ul></ul></ul><ul><ul><ul><li>Diagramas de Colaboración. </li></ul></ul></ul><ul><ul><ul><ul><li>Organización estructural de los objetos </li></ul></ul></ul></ul>
  8. 8. 2.3 – Diagrama de Interacción <ul><li>Diagramas de interacción: Origen </li></ul><ul><ul><li>Clases describen la forma en el grupo de objetos colaboran para dar comportamiento . </li></ul></ul><ul><ul><li>CU representan visión externa del sistema </li></ul></ul><ul><ul><li>Cada caso de uso es una telaraña de escenarios primarios y secundarios </li></ul></ul><ul><ul><li>La funcionalidad de los CU recoge un flujo de eventos utilizando para ellos interacciones entre la sociedad de sus objetos. </li></ul></ul>
  9. 9. 2.3 – Diagrama de Interacción <ul><li>Diagramas de interacción: Ámbito </li></ul><ul><ul><li>Cuando se quiere analizar el comportamiento de varios objetos dentro del mismo caso de uso </li></ul></ul><ul><ul><li>Comportamiento de un único objeto a lo largo de diferentes casos de uso </li></ul></ul><ul><ul><li>comportamiento de una sociedad de objetos en diferentes casos de uso </li></ul></ul><ul><ul><li>O en diferentes hilos de ejecución </li></ul></ul>Diagrama Actividad Diagrama Estados
  10. 10. Tema 2.3.a Diagrama de interacción Diagramas de Secuencia
  11. 11. 2.3 – Diagrama de Interacción <ul><li>Diagrama de secuencia </li></ul><ul><ul><li>Diagrama que representa una interacción centrándose en: </li></ul></ul><ul><ul><ul><li>La secuencia de mensajes que se intercambian. </li></ul></ul></ul><ul><ul><ul><li>Sus correspondientes ocurrencias de eventos sobre las líneas de vida . </li></ul></ul></ul><ul><ul><li>Muestra las interacciones entre objetos ordenadas en secuencia temporal. </li></ul></ul><ul><ul><li>A diferencia de los diagramas de comunicación, incluye secuencias temporales pero no incluye relaciones entre objetos. </li></ul></ul>
  12. 12. 2.3 – Diagrama de Interacción <ul><li>Diagrama de secuencia (II) </li></ul><ul><ul><li>En aplicaciones grandes además de los objetos se muestran : </li></ul></ul><ul><ul><ul><li>Los componentes : Objetos reutilizamos </li></ul></ul></ul><ul><ul><ul><li>Los CU : Objetos cuyo rol es implementar el CU </li></ul></ul></ul><ul><ul><li>Documentan el diseño desde el punto de vista del CU y sirve también para validarlos . </li></ul></ul><ul><ul><li>Útiles para evitar cuellos de botellas futuros. </li></ul></ul><ul><ul><li>Sus mensajes se han de enlazar con las operaciones de las clases de los objetos. </li></ul></ul>
  13. 13. 2.3 – Diagrama de Interacción <ul><li>Notación </li></ul><ul><ul><li>Es recomendable partir de un diagrama de clases: </li></ul></ul>
  14. 14. 2.3 – Diagrama de Interacción <ul><li>Notación </li></ul><ul><ul><li>Lifeline : Línea vertical punteada con un rectángulo con el objeto que representa la vida de un objeto durante la iteración. </li></ul></ul><ul><ul><li>Barra Activación: Periodo donde el cual el objeto se encuentra realizando operación </li></ul></ul><ul><ul><li>Mensaje: Línea sólida dirigida a otro objeto. </li></ul></ul><ul><ul><li>Retorno: Línea punteada de mensaje de retorno del objeto llamado (No se usa) </li></ul></ul><ul><ul><li>Métodos recursivos: Mensaje a si mismo. </li></ul></ul><ul><ul><li>Destrucción del Objeto: Se representa X </li></ul></ul>
  15. 15. 2.3 – Diagrama de Interacción <ul><li>Notación </li></ul>PARTICIPANTES
  16. 16. 2.3 – Diagrama de Interacción <ul><li>Ciclo de vida de un Elemento </li></ul><ul><ul><li>Podemos capturar la creación y destrucción de un objeto en un diagrama de secuencia: </li></ul></ul><ul><ul><li>Creación: </li></ul></ul><ul><ul><ul><li>Mensaje new </li></ul></ul></ul><ul><ul><li>Destrucción : </li></ul></ul><ul><ul><ul><li>Se representa X </li></ul></ul></ul>
  17. 17. 2.3 – Diagrama de Interacción
  18. 18. 2.3 – Diagrama de Interacción <ul><li>Notación: Mensajes </li></ul>
  19. 19. 2.3 – Diagrama de Interacción <ul><li>Operadores de Interacción </li></ul>
  20. 20. 2.3 – Diagrama de Interacción
  21. 21. 2.3 – Diagrama de Interacción <ul><li>Consideraciones adicionales </li></ul><ul><ul><li>Diagramas de comunicación de Análisis/diseño </li></ul></ul><ul><ul><ul><li>Diferente granularidad y nivel de detalle </li></ul></ul></ul><ul><ul><ul><li>Estereotipos específicos para el análisis </li></ul></ul></ul>Modelo de tres capas
  22. 22. 2.3 – Diagrama de Interacción <ul><li>Consideraciones adicionales </li></ul><ul><ul><li>EndPoint : Mensajes que no llegan a destino. </li></ul></ul><ul><ul><li>Diagram Gate: Punto externo donde los mensajes pueden ser transmitidos. </li></ul></ul>
  23. 23. 2.3 – Diagrama de Interacción <ul><li>Resumen de Notación: D. Secuencia </li></ul><ul><ul><li>Actor – Instancia de un actor en Runtime. </li></ul></ul><ul><ul><li>Use Case – Instancia de un CU en Runtime. </li></ul></ul><ul><ul><li>Object – Un objeto de nuestra clase. </li></ul></ul><ul><ul><li>Boundary - user interface o dispositivo de I/O. </li></ul></ul><ul><ul><li>Controller – Elemento activo que controla que trabajo se hace, cuando y como. </li></ul></ul><ul><ul><li>Entity – Un elemento persistente (BDD, tabla, etc). </li></ul></ul>
  24. 24. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico </li></ul><ul><ul><li>Modelar el diagrama de secuencia de la operación Pedir Producto </li></ul></ul><ul><ul><ul><li>…. Suerte!!! </li></ul></ul></ul>
  25. 25. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico: Ayuda </li></ul><ul><ul><li>Diagrama de Clases </li></ul></ul><ul><ul><ul><li>…. Suerte!!! </li></ul></ul></ul>
  26. 26. 2.3 – Diagrama de Interacción <ul><li>Posible Solución: Pedir Producto </li></ul>
  27. 27. 2.3 – Diagrama de Interacción <ul><li>Posible Solución: Pedir Producto </li></ul><ul><ul><li>Línea de vida de un objeto ( lifeline) </li></ul></ul><ul><ul><ul><li>objeto m , instancia de la clase MaquinaCafe envía dos mensajes seguidos para dar respuesta a la operación: </li></ul></ul></ul><ul><ul><ul><ul><li>PedirProducto : Servir al objeto p de la clase Producto </li></ul></ul></ul></ul><ul><ul><ul><ul><li>DarVueltas a sí mismo ( selfdelegation ). </li></ul></ul></ul></ul><ul><ul><li>Activación </li></ul></ul><ul><ul><ul><li>el objeto ingredientes se encuentra activo mientras ejecuta el método correspondiente al mensaje Servir </li></ul></ul></ul><ul><ul><ul><li>el objeto p se encuentra activo mientras se ejecuta su método Servir , que ejecuta _ingredientes.Servir </li></ul></ul></ul><ul><ul><ul><li>el objeto m se encuentra activo mientras se ejecuta p.Servir y DarVueltas </li></ul></ul></ul>
  28. 28. 2.3 – Diagrama de Interacción <ul><li>Posible Solución: Pedir Producto </li></ul><ul><ul><li>Mensaje </li></ul></ul><ul><ul><ul><li>m envía el mensaje Servir al objeto p </li></ul></ul></ul><ul><ul><ul><li>m se envía a sí mismo el mensaje DarVueltas </li></ul></ul></ul><ul><ul><li>Tiempos de transición </li></ul></ul><ul><ul><ul><li>No hay elementos concurrentes </li></ul></ul></ul><ul><ul><li>Caminos alternativos </li></ul></ul><ul><ul><ul><li>No tiene </li></ul></ul></ul>
  29. 29. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico </li></ul><ul><ul><li>Especificar el diagrama de secuencia de la operación crearLaberinto </li></ul></ul><ul><ul><ul><li>… . Suerte!!! </li></ul></ul></ul>
  30. 30. 2.3 – Diagrama de Interacción <ul><li>Solución: crearLaberinto </li></ul>
  31. 31. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico: </li></ul><ul><ul><li>crearLaberinto – Versión II </li></ul></ul><ul><ul><ul><li>… . Suerte!!! </li></ul></ul></ul>
  32. 32. 2.3 – Diagrama de Interacción <ul><li>Solución: crearLaberinto </li></ul>
  33. 33. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico: Parchis </li></ul><ul><ul><li>Especificar el Diagrama de Secuencia de la operación realizarJugada </li></ul></ul><ul><ul><ul><li>… . Suerte!!! </li></ul></ul></ul>
  34. 34. 2.3 – Diagrama de Interacción <ul><li>Solución: Parchis </li></ul>
  35. 35. Tema 2.3.b Diagrama de interacción Diagramas de Comunicación
  36. 36. 2.3 – Diagrama de Interacción <ul><li>Diagramas de Comunicación </li></ul><ul><ul><li>Diagrama centrado en la interacción entre líneas de vida dónde lo principal es la arquitectura de la estructura interna y su correspondencia con el paso de mensajes. </li></ul></ul><ul><ul><li>A diferencia de los diagramas de secuencia, incluye relaciones entre objetos , pero no incluye secuencias temporales. </li></ul></ul><ul><ul><li>Antiguamente se conocía como diagramas de colaboración. </li></ul></ul>
  37. 37. 2.3 – Diagrama de Interacción <ul><li>Diagramas de Comunicación Vs … </li></ul><ul><ul><li>Los diagramas de secuencia proporcionan una forma de ver el escenario de manera temporal (que pasa primero y después) </li></ul></ul><ul><ul><li>Los diagramas de comunicación proporcionan la representación principal del escenario, ya que las colaboraciones se organizan entorno a los enlaces entre objetos. </li></ul></ul><ul><ul><li>Más frecuentes en la fase de diseño. </li></ul></ul>
  38. 38. 2.3 – Diagrama de Interacción <ul><li>Notación </li></ul><ul><ul><li>Objeto : Rectángulo que contiene el nombre del objeto y la clase perteneciente (:) . </li></ul></ul><ul><ul><li>Enlaces: Línea continua que une a dos objetos. Instancia de una Rel. asociación. </li></ul></ul><ul><ul><li>Flujo Mensaje: Expresa el envío de un mensaje. Se representa mediante una flecha dirigida cerca de un enlace. </li></ul></ul><ul><ul><li>Marcadores: De creación (<<create>>) y destrucción (<<destroy>>). </li></ul></ul>
  39. 39. 2.3 – Diagrama de Interacción
  40. 40. 2.3 – Diagrama de Interacción <ul><li>Notación Flujo Mensaje: </li></ul><ul><ul><li>Se pueden utilizar estereotipos para indicar si el objeto que recibe el mensaje es un atributo, un parámetro de un mensaje anterior, si es un objeto local o global </li></ul></ul><ul><ul><ul><li><<associación>> <<local>> … </li></ul></ul></ul><ul><ul><li>Puede haber varios niveles de subíndices para indicar anidamiento de operaciones. </li></ul></ul>
  41. 41. 2.3 – Diagrama de Interacción <ul><li>Ejemplo </li></ul>
  42. 42. 2.3 – Diagrama de Interacción <ul><li>Notación Objeto Compuesto: </li></ul><ul><ul><li>Es una representación alternativa de un objeto y sus atributos. </li></ul></ul><ul><ul><li>En esta representación se muestran los objetos contenidos dentro del rectángulo que representa al objeto que los contiene. </li></ul></ul>
  43. 43. 2.3 – Diagrama de Interacción <ul><li>Notación: Patrón Diseño: </li></ul><ul><ul><li>Un diagrama de comunicación puede especificar un contrato entre objetos, parte esencial para la descripción de un patrón de diseño. </li></ul></ul><ul><ul><li>Una ``instanciación'' del patrón se representa como una elipse unida mediante flechas punteadas a los </li></ul></ul><ul><ul><li>objetos o clases que participan realmente en el patrón. </li></ul></ul><ul><ul><li>Estas flechas pueden tener roles, indicando cuál es el papel de cada elemento dentro del patrón. </li></ul></ul><ul><ul><li>Por ejemplo, una instanciación del patrón Proxy . </li></ul></ul>
  44. 44. 2.3 – Diagrama de Interacción
  45. 45. 2.3 – Diagrama de Interacción
  46. 46. 2.3 – Diagrama de Interacción <ul><li>Notación: Contexto: </li></ul><ul><ul><li>Vista de uno o más elementos dentro del Modelo que colaboran en el desarrollo de una acción. </li></ul></ul><ul><ul><li>Se usa para separar los demás elementos en el modelo y dar énfasis </li></ul></ul>
  47. 47. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico </li></ul><ul><ul><li>Modelar el diagrama de Colaboración de la operación Pedir Producto dado el diagrama de secuencia </li></ul></ul><ul><ul><ul><li>…. Suerte!!! </li></ul></ul></ul>
  48. 48. 2.3 – Diagrama de Interacción <ul><li>Solución: </li></ul><ul><li>Pedir producto </li></ul><ul><li>Diagrama </li></ul><ul><li>de </li></ul><ul><li>Colaboración </li></ul>
  49. 49. 2.3 – Diagrama de Interacción <ul><li>Consideraciones adicionales </li></ul><ul><ul><li>Diagramas de comunicación de Análisis/diseño </li></ul></ul><ul><ul><ul><li>Diferente granularidad y nivel de detalle </li></ul></ul></ul><ul><ul><ul><li>Estereotipos específicos para el análisis </li></ul></ul></ul>Modelo de tres capas
  50. 50. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico </li></ul><ul><ul><li>Modelar el diagrama de comunicación un alumno que se loga dentro de un sistema documental </li></ul></ul><ul><ul><ul><li>Capa cliente: UI de Login </li></ul></ul></ul><ul><ul><ul><li>Capa negocio: Gestor Acceso </li></ul></ul></ul><ul><ul><ul><li>Capa persistente: Usuario </li></ul></ul></ul><ul><ul><ul><li>… . Suerte!!! </li></ul></ul></ul>
  51. 51. 2.3 – Diagrama de Interacción <ul><li>Posible Solución </li></ul>
  52. 52. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico: Diagrama Secuencia </li></ul>
  53. 53. 2.3 – Diagrama de Interacción <ul><li>Solución </li></ul>
  54. 54. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico: </li></ul><ul><ul><li>Realizar el diagrama de secuencia y comunicación </li></ul></ul><ul><ul><ul><li>…. Suerte!!! </li></ul></ul></ul>
  55. 55. 2.3 – Diagrama de Interacción <ul><li>Solución: Diagrama de Secuencia </li></ul>
  56. 56. 2.3 – Diagrama de Interacción <ul><li>Solución: Diagrama de Comunicación </li></ul>
  57. 57. 2.3 – Diagrama de Interacción <ul><li>Ejercicio práctico: Biblioteca </li></ul><ul><ul><li>Realizar el diagrama de comunicación </li></ul></ul><ul><ul><li>Una biblioteca tiene copias de libros. Estos últimos se caracterizan por su nombre, tipo (novela, teatro, poesía, ensayo), editorial, año y autor. </li></ul></ul><ul><ul><li>Los autores se caracterizan por su nombre, nacionalidad y fecha de nacimiento. </li></ul></ul><ul><ul><li>Cada copia tiene un identificador, y puede estar en la biblioteca, prestada, reservada, con retraso o en reparación. </li></ul></ul><ul><ul><li>Los lectores pueden tener un máximo de 3 libros en préstamo. </li></ul></ul><ul><ul><li>Cada libro se presta un máximo de 30 días, por cada día de retraso, se impone una “multa” de dos días sin posibilidad de coger un libro. </li></ul></ul><ul><ul><li>Realiza el diagrama de colaboración para el método devolver() </li></ul></ul>
  58. 58. 2.3 – Diagrama de Interacción <ul><li>Solución: Diagrama de Comunicación </li></ul>
  59. 59. Conclusiones <ul><li>Introducción </li></ul><ul><ul><li>Introducción </li></ul></ul><ul><ul><li>Introducción a UML </li></ul></ul><ul><ul><li>Notación y Modelo </li></ul></ul><ul><ul><li>Orientación a Objetos </li></ul></ul><ul><li>Diagramas </li></ul><ul><li>Proceso Unificado </li></ul><ul><li>Identificar usos de los Diagramas de iteración. </li></ul><ul><li>Elementos UML de los diagramas de secuencia. </li></ul><ul><li>Elementos UML de los diagramas de Comunicación. </li></ul><ul><li>Prácticas y Ejercicios </li></ul>
  60. 60. Referencias <ul><li>Curso UML.pdf (Paginas 27 hasta la 35) </li></ul><ul><li>Curso Sparx </li></ul><ul><ul><li>http://www.sparxsystems.com.ar/resources/tutorial/use_case_model.html </li></ul></ul>

×