Diagrama de Interacción

Documentos relacionados
Diagramas de interacción

Diagramas de interacción

Diagrama de Actividad

4. DIAGRAMAS DE INTERACCIÓN INTRODUCCIÓN DIAGRAMAS DE SECUENCIA Objetos Mensajes

Tema 5. Diagramas de Interacción C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA M A

Capítulo XII. Diagramas de Interacción

Metodologías de Diseño. Diseño Diagramas de Colaboración

Unified modeling language

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información

12/08/2017. Diagrama de secuencia. Diagrama de secuencia. Diagrama de secuencia. Diagrama de secuencia

INGENIERÍA DE SOFTWARE. Sesión 10: Diagramas de comunicación

Figura 1. Tipos de mensaje.

Tema 7: Diagramas de Colaboración

Elementos Diagramas de Clases Clase:

Ingeniería de Software. UML.

UML (Unified Modeling Language) Octubre de 2007

INSTRUCCIONES DE LLENADO ENCABEZADO DE MANIFIESTO AÉREO PROYECTO ISIDORA

Diagrama de Actividades. Fuente: Profesor Guillermo Bustos.

Figura 6.3 Descripción de la ventana deslizante.

Trabajo Práctico Nro. 11 Herramientas para el Modelado de Comportamiento Detallado: Diagramas de Interacción y Diagramas de Transición de Estados

Dirección General de Tributación

12/08/2017. Casos de uso. Casos de uso. Casos de uso. Casos de uso

UML Unifield Modeling Languaje

Diagramas de secuencia

Contenido. 1. Solicitar pago a las instituciones... 3

CARACTERÍSTICAS DEL MODELO AMBIENTAL:

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

Í N D I C E COMPROBANTE FISCAL ELECTRÓNICO. Fecha: 26/08/2013

UML: Lenguaje Unificado de Modelado

Ingeniería de Software

Tema 3. Paso de mensajes. mensajes. Bibliografía. Sistemas de paso de mensajes (2) Sistemas de paso de mensajes. Ventajas del paso de.

PROCESO DE CANCELACIÓN DE CFDI CON/SIN ACEPTACIÓN

Dirección General de Tributación. Subdirección de Información y Servicio al Contribuyente. Comprobantes Electrónicos

Guia de Implantación Mexicana (GIM) UN/EDIFACT/EANCOM CONTRL. Reporte de Aviso y Sintaxis. Nombre del mensaje: Fecha última actualización:

UML - Diagramas de interacción de Objetos

TÉCNICAS DIGITALES CONTADORES

MODULO IV. Análisis y Diseño de Sistemas de Información INF-162 IV. UML. 4.5 Diagramas de Interacción

EDI :INTERCAMBIO ELECTRONICO DE DATOS

Tema 2. Casos de Uso C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA M A R Í A B E L

FIUBA La guía contiene ejercicios del tipo del primer parcial.

Adentrándonos a la Programación

Tema 4 CURSO 2015/16 (PLAN 2009) PRIMER SEMESTRE. Internet

Transmisión de Datos Rubiel Leal Bernal Ing. De Sistemas Universidad de Nariño

12/08/2017. Introducción. Diagrama de flujo de datos. Ejemplo inicial de un DFD. Componentes de un DFD

Facultad de Ingeniería Industrial y de Sistemas v1.0 MA781U PROCESOS DISTRIBUIDOS

DIAGRAMAS UML ANDRÉS ESTEBAN MARTÍNEZ HUTA CICLO DE VIDA DEL SOFTWARE GLORIA CECILIA RÍOS MUÑOZ

TEMA 9: DIAGRAMA DE OBJETOS, SECUENCIA Y DESPLIEGUE EN UML

DIAGRAMAS DE FLUJO INTRODUCCIÓN FLUJOGRAMAS O FLUXOGRAMAS

TCP Transmission Control Protocol

MODULO IV. Análisis y Diseño de Sistemas de Información INF-162 IV. UML. 4.1 Introducción

CASOS DE USO.

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS

INGENIERÍA DEL SOFTWARE I Tema 7. Interacciones del Sistema (en desarrollo OO)

Los Medios de Información y Comunicación en educación abierta y a distancia Lic. Guillermo Roquet García

Contenido. 1. Solicitar recepción de bienes y servicios... 3

RET Comunicación e información en el marco de la empresa. 3. La comunicación en la empresa Redes comunicativas y flujos de información.

Tema 6: Diagramas de Secuencia

MODIFICACIONES A LOS CFDI

Análisis y Diseño Orientado a Objetos. 2 - Análisis

Factura electrónica Esquema de Cancelación

Factura electrónica Esquema de Cancelación

3.4 MODELADO DEL SISTEMA

GUÍA METODOLÓGICA PARA LA ELABORACIÓN DE UN FLUJOGRAMA

I N S T I T U T O N A C I O N A L D E I N V E S T I G A C I O N E S N U C L E A R E S

Cómo importar tus productos sin problemas de aduana.

SICFE MANUAL DE USUARIO MODULO I: AUTOFACTURA

Manual de Usuario Página Web

Dirección de Servicio al Contribuyente. Subdirección de Información y Asistencia. Comprobantes Electrónicos

PROGRAMACION ORIENTADA A OBJETOS ANALISTA PROGRAMADOR UNIVERSITARIO FACULTAD DE INGENIERIA - PLAN 2008 CICLO 2013

Definición de Análisis Estructurado: Ventajas Qué es el análisis de flujo de datos? Herramientas de la estrategia de flujo de datos

TRABAJO PRÁCTICO 7: OBJETOS

DIAGRAMAS DE ACTIVIDAD SESION 9. Cap. 9 Kendall & Kendall Cap 5 Jacobson

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1

Manual de Generación de CFDI

Transcripción:

Diagrama de Interacción

Diagrama de Interacción (DInt) Características del DInt, DCol y DSec DCol vs. DSec Componentes básicos del DInt Componentes de un DCol Componentes de un DSec Grado de centralización de control Sincronismo y asincronismo en el DInt Otras notaciones Construcción del DInt

Características del DInt Describe la interacción entre objetos en términos de mensajes. Requiere del complemento de modelos de comportamiento para todos los objetos o por lo menos para los más complejos.

...Características del DInt Responde a preguntas tales como: cuál es la interacción entre los objetos del sistema? cuál es la cronología de estas interacciones? qué intercambio de eventos se da en el sistema? Existen 2 tipos de DInt: Diagrama de Colaboración (DCol) tiene su origen en R. Wirfs- Brock (1990). Diagrama de Secuencia (DSec) tiene su origen en I. Jacobson (1992).

Características del DCol Muestra un conjunto de interacciones entre objetos, en forma topográfica, para un contexto situacional delimitado. Componentes de un DCol: objeto que interactúa actor mensaje vía de comunicación Ejemplo: identificarcliente iniciarsesión c: Cliente cs: ControlSesión Cliente creartransacción t: Transacción

Características del DSec Muestra un conjunto de interacciones entre objetos, en forma cronológica, para un contexto temporal delimitado. Componentes de un DSec: objeto que interactúa actor mensaje línea de vida y caja de activación Ejemplo: cs: ControlSesión c: Cliente t: Transacción iniciarsesión identificarcliente Cliente creartransacción

DCol vs. DSec DCol: enfatiza colaboración en términos espaciales más flexible ya que crece bidimensionalmente mensajes fluyen por vías de comunicación dificulta ver secuencia de mensajes puede ser convertido en un DSec equivalente (con mensajes numerados) DSec: enfatiza secuencia en términos temporales más rígido ya que crece unidireccionalmente mensajes entre líneas de vida/cajas de activación favorece secuencia visual de mensajes puede ser convertido en un DCol equivalente

Componentes básicos del DInt objeto que interactúa: objeto que tiene comportamiento y por ende, interactúa. Puede requerir un modelo de comportamiento. Ejemplo: p: Producto Actor: Ente o agente externo al sistema que inicia la interacción. Ejemplo: Proveedor

...Componentes básicos del DInt Mensaje: Solicitud que hace un emisor (agente o objeto) a un receptor (objeto) )para que realice una operación. Emisor y receptor no necesariamente son objetos distintos, ni deben pertenecer a clases distintas. Los mensajes pueden ser: sincrónicos: el emisor espera a que el receptor complete la operación. asincrónicos: el emisor no requiere esperar nada del receptor.

...Componentes básicos del DInt Que los mensajes (llamados procedimentales) fluyan en forma sincrónica y bidireccional implica que: sólo un emisor puede enviar de a un mensaje a la vez el emisor espera a que el receptor acepte el mensaje (retorno implícito) sólo un receptor recibe de a un mensaje a la vez Mensajes sincrónicos requieren de un único hilo (thread) de ejecución. Representación: autorizarcrédito actualizarstock consultarcalificación

...Componentes básicos del DInt Existe anidamiento de mensajes cuando, dada la ocurrencia de un mensaje inicial, iiil se emiten uno o más mensajes dependientes di anidados dd y se reciben sus respectivos retornos antes del retorno del mensaje inicial. Gráficamente, si A está anidado a M: emisión mensaje anidado A recepción mensaje anidado A tiempo emisión mensaje M recepción mensaje M

...Componentes básicos del DInt Que los mensajes fluyan en forma asincrónica y unidireccional implica que el emisor emite un mensaje a un objeto receptor y puede continuar ejecutando mientras el receptor procesa el mensaje. Mensajes asincrónicos requieren múltiples hilos (multithreads) de ejecución, permitiendo así la concurrencia en el sistema. Representación: emitiralarma imprimirrecibo

Componentes de un DCol Vía de comunicación: representa un conducto o puente bidireccional a través del cual fluyen los mensajes. Con relación a los mensajes y las vías de comunicación: mensaje no puede fluir sin una vía de comunicación en una vía de comunicación puede fluir más de un mensaje Ejemplos: disminuirstock m: MovimientoInventario s: StockProducto aumentarstock consultarpresupuesto p: Persona e: EquipoTrabajo consultarsalario

...Componentes de un DCol Numeración de mensajes: se definen números en secuencia con la siguiente convención: m1 1: m2 b: ClaseB el primer mensaje no se numera a: ClaseA 2.1: m5 (se asume que es 0) el orden sigue los números Agente naturales (1, 2, 3,...) c: ClaseCC si existen mensajes anidados, se 2: m4 anexa una nueva secuencia según notación decimal (1.1, 1.2, 1.2.1, 1.2.2, 1.2.3, 1.3,...) d: ClaseD 1.1: m3 2.2: m6

Componentes de un DSec Línea de vida: representa la vida del objeto durante la interacción. El tiempo fluye de arriba hacia abajo. Caja de activación: periodo dentro de la línea de vida, durante el cual el objeto se encuentra activo emitiendo/recibiendo mensajes. El anidamiento de los mensajes entre los objetos se visualiza por la relación entre las longitudes de las cajas de activación respectivas.

...Componentes de un DSec a: ClaseA b: ClaseB c: ClaseC d: ClaseD m1 m2 m3 Agente m4 tiempo m5 m6 Existe anidamiento i cuando un receptor tiene una caja de activación ió menor respecto de la caja de activación del emisor. Aceptación de los mensajes se puede anotar con mensajes de retorno explícitos. [1]

Iteración de mensajes en DInt Un mismo mensaje se envía repetidas veces. Iteración se agrega a numeración en el caso del DCol. Ejemplo: consulta todos los productos que ha pedido un cliente solicitaproductos( out listaprodcliente) 1*: consultaproductos( out listaprodpedido) c: Cliente : Pedido Cliente 1.1*: getnombre( out nombre) : Producto

Automensajes en DInt Un objeto puede enviar automensajes, generando así una interacción consigo mismo. Ejemplos: p: Persona consultaredad p: Persona consultaredad

Mensajes excluyentes en DInt Un objeto puede enviar 2 o más mensajes excluyentes entre sí. Ejemplos: Usuario s: ServidorImpresión i: Impresora c: ColaImpresión imprimirdocumento imprimirdocumento almacenardocumento imprimirdocumento 1a: imprimirdocumento s: ServidorImpresión i: Impresora Usuario 1b: almacenardocumento c: ColaImpresión

Ejemplos: DCol vs. DSec solicitarorden o: Orden c: Cuenta t: Ticket verificarcrédito Cliente reservarticket cargarcuenta solicitarorden 2: reservarticket o: Orden t: Ticket 1: verificarcrédito Cliente c: Cuenta 3: cargarcuenta

Grado de centralización del control Modelador debe adoptar el grado de centralización que estime conveniente al usar DInt. Ejemplo centralizado ( por qué?): o: Orden c: Cuenta t: Ticket solicitarorden verificarcrédito Cliente reservarticket cargarcuenta

...Grado de centralización del control Ejemplo descentralizado: o: Orden c: Cuenta t: Ticket solicitarorden verificarcrédito Cliente reservarticket cargarcuenta

Sincronismo y asincronismo en el DInt Mensajes sincrónicos y asincrónicos pueden combinarse en un mismo DInt. Ejemplo: p: PersonaEntrante ps: PuertaSegura r: RegistroPersonal s: SeñalPuerta rm: ReprodMúsica solicitarentrada mantenerabierto(duraciónpuerta) operar(duraciónseñal) Persona operar(duraciónreprod) registrarentrada(idpersona, IdPuerta, fechahora)

...Sincronismo y asincronismo en el DInt Mensajes asíncronos se usan para mecanismos de avisos de retorno (callback): Un objeto suscriptor objsusc indica interés en un evento enviando un mensaje asíncrono a un objeto oyente objoyen. El objeto objsusc continúa con su ejecución mientras objoyen monitorea la ocurrencia del evento indicado. Cuando el evento ocurre, objoyen envía un mensaje (generalmente asincrónico) de vuelta a objsusc para notificarlo de la ocurrencia. Ejemplo: registrareventonuevoemail s: SesiónUsuario m: MonitorEMail nuevoemailrecibido

Otras notaciones Notaciones especiales: Mensajes pueden ser sólo planos ( ), mostrando apenas progresión de pasos en secuencia o cuando no se sepa aún si el mensaje es sincrónico o asincrónico. Mensajes pueden condicionarse indicando la condición entre []. Ejemplo: Calcular promedio [tamañomuestra>0]. Iteración de secuencias de mensajes se puede representar colocando todos los mensajes iterados dentro de una caja. pe: Pedido pr: Producto procesarpedido incluirproducto Empleado rebajarstock * [por cada producto]

Construcción del DInt Se recomienda identificar primero al actor y la activación que da inicio a la situación o secuencia a representar. Si los objetos: ya están identificados, se definen los mensajes entre ellos a medida que se avanza en la colaboración/secuencia, o no están definidos, definirlos sólo como receptores/ emisores de mensajes y nominarlos después.