diagramas de interaccion de objetos

21
UML - Diagramas de UML - Diagramas de interacción de Objetos interacción de Objetos

Upload: ronny-parra

Post on 21-Jun-2015

26.746 views

Category:

Education


11 download

DESCRIPTION

Conceptos acerca de los diagrams de interaccion de objetos (DIO). Concepto, notación y ejemplos

TRANSCRIPT

Page 1: Diagramas de Interaccion de Objetos

UML - Diagramas de interacción de UML - Diagramas de interacción de ObjetosObjetos

Page 2: Diagramas de Interaccion de Objetos

IntroducciónIntroducción

Los diagramas UML de secuencia y de colaboración (llamadosdiagramas de interacción) se utilizan para modelar los aspectosdinámicos de un sistema.

Un diagrama de interacción consiste en un conjunto de objetosy sus relaciones, incluyendo los mensajes que se pueden enviarentre ellos.

Los diagramas de secuencia destacan el orden temporal de losmensajes. Los diagramas de colaboración destacan la organiza-ción estructural de los objetos que envían y reciben mensajes.

Page 3: Diagramas de Interaccion de Objetos

objetoA:A objetoB:B objetoC:C

<<create>>

mensaje1( )

mensaje2( )

mensaje3( )

mensaje4( )

EjemplosEjemplos

Diagrama de secuencia:destaca el orden temporal

de los mensajes.

objetoA:A

objetoB:B objetoC:C

1: <<create>>2: mensaje1( )3: <<destroy>>2:

2.1: mensaje2( )2.2: mensaje3( )

Diagrama de colaboración:destaca la relación estructuralentre los objetos que interactúan

objetos

tiempo

<<destroy>>

Page 4: Diagramas de Interaccion de Objetos

ConceptosConceptos

Ambos diagramas (secuencia y colaboración) son semántica-mente equivalentes. Se puede pasar de uno a otro sin pérdidade información.

En los diagramas de secuencia, la linea de vida de un objetoes la línea discontinua vertical, que representa la existenciade un objeto a lo largo de un periodo de tiempo. El foco decontrol es un rectángulo delgado que representa el periodo detiempo durante el cual un objeto ejecuta una acción.

Page 5: Diagramas de Interaccion de Objetos

EjemploEjemplo

Ejemplo 1: Se quiere modelar una llamada a través de una central telefónica.

Para esto se tienen cuatro objetos involucrados: dos interlocutores(s y r), una central y una conversación. La secuencia empieza cuando un interlocutor envía un mensaje a la central al descolgarel auricular. La central da el tono de llamada, y el interlocutor marcael número al que desea llamar. El tiempo de marcado debe sermenor que 30 segundos.

Page 6: Diagramas de Interaccion de Objetos

EjemploEjemplo

s:Interlocutor :Central r:Interlocutor

c:Conversación

descolgarAuricular( )

darTonoDeLlamada( )

*marcarDigito( )

marcando

{marcando.tiempoEjecucion < 30 segs}

enrutarLlamadas(s,n)

<<create>>

llamar( )

descolgarAuricular( )conectar(r,s)

conectar(r) conectar(s)

Los interlocutopres r y s puedenintercambiar información despuésde conectarse.

Page 7: Diagramas de Interaccion de Objetos

NotaciónNotación

Los diagramas de colaboración explican gráficamentelas interacciones entre las instancias del modelo (objetos).Por ejemplo:

Page 8: Diagramas de Interaccion de Objetos

NotaciónNotación

msg1() { for i := 1 to 10 { miB.mens2(); miC.mens3(); } }

Un objeto se puede enviarun mensaje a sí mismo:

Es posible representar iteraciones:

Page 9: Diagramas de Interaccion de Objetos

NotaciónNotación

Secuencia de los mensajes en un diagrama de colaboración:

Page 10: Diagramas de Interaccion de Objetos

NotaciónNotación

Es posible definir mensajes condicionales:

Page 11: Diagramas de Interaccion de Objetos

NotaciónNotación

Es posible definir trayectorias mutuamente excluyentes:

Page 12: Diagramas de Interaccion de Objetos

NotaciónNotación

Un multiobjeto, por ejemplo un arreglo en Java, se representacomo una pila de objetos:

Se pueden enviar mensajes a multiobjetos:

Page 13: Diagramas de Interaccion de Objetos

NotaciónNotación

Ejemplo de crear un objeto y agregarlo a un multiobjeto:

Page 14: Diagramas de Interaccion de Objetos

EjemploEjemplo

Ejemplo 2: Matricular un nuevo estudiante en la universidad.

Hay cuatro objetos involucrados: un encargado de matrícula,un estudiante, un curso y la universidad. La acción comienzacuando el encargado de matrícula crea un objeto estudiante,lo añade a la universidad, y le pide al objeto estudiante quese matricule. El objeto estudiante obtiene (de sí mismo) suplan de estudio, e identifica los cursos que quiere matricular.

Page 15: Diagramas de Interaccion de Objetos

EjemploEjemplo

s:Estudiante

matriculado = False

s:Estudiante

matriculado = True

r:EncargadoMatricula :Universidad

3.4: <<become>>

c1:Curso c2:Curso

1: <<create>>3: matricular( )

3.3: agregar(s)3.2: agregar(s)

3.1: obtenerPlanEstudios( )

2: agregarEstudiante(s)

{asociación} {asociación}

Page 16: Diagramas de Interaccion de Objetos

Uso de diagramasUso de diagramas

La creación de los diagramas de secuencia depende de la formulaciónde los casos de uso. Los casos de uso indican cómo los actores interac-túan con el sistema. Durante la operación del sistema, los actores gene-ran eventos, solicitando alguna operación a cambio.

Uso de diagramas de secuencia para modelar los casos de uso:El diagrama de secuencia de un sistema es una representación quemuestra, en determinado escenario de un caso de uso, los eventosgenerados por actores externos, su orden y los eventos internos delsistema.

Page 17: Diagramas de Interaccion de Objetos

Uso de diagramasUso de diagramas

Ejemplo: caso de uso para compra de productos en un supermercado.

Caso de uso: Comprar productosActores: Cliente, cajeroTipo: PrimarioDescripción: Un Cliente llega a la caja registradora con los artículos que va a comprar. El Cajero registra los artículos y cobra el importe. Al terminar la operación, el Cliente se marcha con los productos.

Page 18: Diagramas de Interaccion de Objetos

Uso de diagramasUso de diagramas

Ejemplo: caso de uso para compra de productos en un supermercado.

Page 19: Diagramas de Interaccion de Objetos

Uso de diagramasUso de diagramas

Ejemplo: caso de uso para compra de productos en un supermercado.

Def.: Un evento es una acción externa de entrada, que un actor produceen el sistema. En el ejemplo anterior, se tienen tres eventos: pasarProducto,terminarVenta y efectuarPago. Una vez que se identifican los eventos, se registran en la entidad que corresponda. Por ejemplo:

Page 20: Diagramas de Interaccion de Objetos

Uso de diagramasUso de diagramas

Ejemplo: caso de uso para compra de productos en un supermercado.

Para cada evento que se produce en el sistema, se debe hacer undiagrama de colaboración. Ejemplo:

Page 21: Diagramas de Interaccion de Objetos