48
 INTEGRADORA 1 DIAGRAMAS DE COMUNICACIÓN UTLD U

Unidad 2 - Diagrama de Comunicacion

Embed Size (px)

DESCRIPTION

Diagrama de Comunicacion

Citation preview

  • INTEGRADORA 1DIAGRAMAS DE COMUNICACINUTLDU

    Diagrama de Comunicacin

    Un diagrama de comunicacin es una forma de representar interaccin entre objetos, alterna al diagrama de secuencia.

    Es un diagrama de clases que contiene roles de clasificador y los roles de asociacin en lugar de soloclasificadores y asociaciones.

    Diagrama de Comunicacin

    Cuando se instancia la colaboracin, los objetos estn ligados a los roles de clasificador y los enlaces estn ligados a los roles de asociacin.

    El rol de asociacin tambin puede ser desempeado por varios tipos de enlaces temporales, tales como argumentos de procedimientos o variables locales del procedimiento.

    Los smbolos del enlace pueden llevar estereotipos para indicar enlaces temporales (parameter o local) o llamadas al mismo objeto (self).

    Diagrama de Comunicacin

    Pretende representar desde un punto de vista esttico y dinmico los objetos implicados en la implementacin de una funcin de aplicacin.

    A diferencia de los diagramas de secuencia, pueden mostrar el contexto de la operacin (cules objetos son atributos, cules temporales, etc.) y ciclos en la ejecucin.

    Diagrama de Comunicacin

    Diagrama de Comunicacin

    Diagrama de Comunicacin

    Es til marcar los objetos en cuatro grupos:

    Los que existen con la interaccin entera. Los creados durante la interaccin (restriccin {new}) Los destruidos durante la interaccin (restriccin {destroyed} o {delete}) Y los que se crean y destruyen durante la interaccin (restriccin {trasient})Durante el diseo:

    Se puede empezar mostrando los objetos y los enlaces disponibles al comienzo de una operacin y despus Decidir cmo el control puede fluir a los objetos correctos dentro del grfico para implementar la operacin.

    Diagrama de Comunicacin

    CONTEXTO

    El contexto es una vista parcial esttica de losobjetos que colaboran para realizar unafuncin.

    Corresponde, normalmente, a una parte,una vista local de un modelo de objetos querestringe o proporciona el ambiente para suselementos.

    Diagrama de Comunicacin

    Los elementos estticos representados (claves, instancias, atributos, enlaces, asociaciones, etc.), deben utilizarse obligatoriamente en la funcin lgica descripta, lo cual permite mejorar notablemente la legibilidad del diagrama.

    El contexto de una interaccin comprende los argumentos, las variables locales creadas durante la ejecucin, as como los enlaces entre objetos que participan en la interaccin.

    Diagrama de Comunicacin

    OBJETO

    Un objeto se representa con un rectngulo, que contiene el nombre y la clase del objeto en un formato nombreObjeto:nombreClaseOBJETO COMPUESTO

    Representa un objeto de alto nivel construido con piezas unidas firmemente.Es una instancia de una clase compuesta, lo que implica la relacin de agregacin entre clase y sus partes

    Diagrama de Comunicacin

    Un ejemplo es el siguiente objeto ventana:

    Diagrama de Comunicacin

    OBJETOS ACTIVOS

    Los objetos que poseen el flujo de control se llaman activos.Un objeto activo puede activar un objeto pasivo por el tiempo de una operacin envindole un mensaje.Una vez tratado el mensaje el flujo de control se restituye al objeto activo.En un entorno multitarea varios objetos pueden estar activos simultneamente.

    Diagrama de Comunicacin

    Un objeto activo se representa por un rectngulo cuyo borde es ms grueso que el de los objetos pasivos.

    Diagrama de Comunicacin

    OBJETOS MLTIPLES (MULTIOBJETOS)Alude a un rol de clasificador que denota un conjunto de objetos y no un objeto nico.Generalmente es el conjunto de objetos del extremo muchos de una asociacin.

    Diagrama de Comunicacin

    ENLACESUn enlace es una instancia de una asociacin en un diagrama de clases.Se representa como una lnea continua que une a dos objetos.Esta acompaada por un nmero que indica el orden dentro de la interaccin y por un estereotipo que indica que tipo de objeto recibe el mensaje.Pueden darse varios niveles de subndices para indicar anidamiento de operaciones.Los estereotipos indican si el objeto que recibe el mensaje es un atributo (association y se asume por defecto), un parmetro de un mensaje anterior, si es un objeto local o global.

    Diagrama de Comunicacin

    MARCADORES DE CREACION Y DESTRUCCION DE OBJETOS

    Los objetos y los enlaces creados o destruidos en el transcurso de una interaccin pueden, respectivamente, contener las restricciones {nuevo} en ingls {new} o {destruido} en ingls {destroyed} o {delete}.

    Los objetos creados y luego destruidos dentro de la misma interaccin, se identifican por la restriccin {transitorio} en ingls {trasient}.

    Diagrama de Comunicacin

    INTERACCIONES Las interacciones ente objetos descriptas en un diagrama de comunicacin son secuencias de mensajes intercambiados por los objetos en el marco de la realizacin de una operacin.

    Primero es necesario implementar el contexto, antes de definir las interacciones.MENSAJESLos mensajes se muestran como flechas etiquetadas unidas a los enlaces.

    Cada mensaje tiene un nmero de secuencia, una lista opcional de mensajes precedentes, una condicin opcional de guarda, nombre y lista de argumentos, y un nombre de valor de retorno opcional.

    Diagrama de Comunicacin

    Etiqueta del mensaje.La etiqueta tienen la siguiente sintaxis:

    Diagrama de Comunicacin

    Predecesor (tambin llamada sincronizacin): en unacolaboracin, el predecesor es una lista de nmeros de secuencia separadas por comas y seguidos por una barra (/). La clusula se omite si la lista est vaca.

    Nmero de secuencia lista /Todo nmero de secuencia es una expresin de secuencia sintrminos de recurrencia. Tiene que coincidir con el nmero de secuencia de algn otro mensaje.

    El significado es que el flujo de mensajes no queda habilitado mientras no se hayan producido todos los flujos de mensajes cuyos nmeros de secuencia estn enumerados (un hilo puede ir ms all del flujo de mensajes y la condicin de guarda seguir cumplindose). Por lo tanto, condicin de guarda representa una sincronizacin de hilos.

    Diagrama de Comunicacin

    En el ejemplo siguiente, el mensaje se enva cuando los envos 1.1 y 1.3 han sido satisfechos.

    Diagrama de Comunicacin

    Expresin de secuencia:

    La expresin de secuencia es una lista de trminos de secuencia separados por puntos y seguida por dos puntos (':').Cada trmino representa un nivel de anidamiento procedural dentro de la interaccin global.Si es concurrente todo el control, entonces no se produce el anidamiento.Todos los trminos de la secuencia poseen la siguiente sintaxis:

    Diagrama de Comunicacin

    En donde etiqueta es entero o bien nombre

    El entero representa el orden secuencial del mensaje dentro del nivel inmediatamente superior de llamadas a procedimientosPor ejemplo: el mensaje 3.1.4 sigue al 3.1.3 dentro de la activacin 3.1.

    El nombre representa un hilo de control concurrente. Los mensajes que difieren en el nombre final son concurrentes en ese nivel de anidamiento. Por ejemplo: el mensaje 3.1a y el mensaje 3.1b son concurrentes dentro de la activacin 3.1. todos los hilos de control son iguales dentro de cada profundidad de anidamiento.

    Diagrama de Comunicacin

    La recurrencia representa la ejecucin condicional oiterativa. Esto indica cero o ms mensajes que se ejecutan,dependiendo de las condiciones.Las opciones son:*[ clusula de iteracin ]> una iteracin [ clusula de condicin ] > una bifurcacin Una iteracin representa una secuencia de mensajes en la profundidad de anidamiento dada.La clusula de iteracin se puede omitir (en cuyo caso las condiciones de iteracin no estarn especificadas).La clusula de iteracin debera expresarse en pseudocdigo o en algn lenguaje de programacin real; IIML no prescribe su formato.Un ejemplo podra ser :*[ i:= l...n]

    Diagrama de Comunicacin

    La notacin de iteracin supone que los mensajes de la iteracin se ejecutan secuencialmente.Tambin existe la posibilidad de ejecutarlos concurrentemente. La notacin empleada consiste poner una doble lnea vertical, indicadora de paralelismo, despus del asterisco: ( * || ).

    Diagrama de Comunicacin

    Una condicin representa un mensaje cuya ejecucin es contingente respecto a la veracidad de la clusula de condicin. La clusula de condicin debera expresarse en pseudocdigo o en un lenguaje de programacin real; UML no prescribe su formato. Un ejemplo podra ser: [x>y]

    Obsrvese que las bifurcaciones se anotan igual que una interaccin sin asterisco. Puede pensarse que se trata de una iteracin limitada a un solo caso

    Diagrama de Comunicacin

    Clusula de condicin se expresa en un formato libre:

    Diagrama de Comunicacin

    Signatura : una signatura es una cadena que indica el nombre, argumentos y valor proporcionado por una operacin, mensaje o seal. Posee las siguientes propiedades:

    Lista-de-valores-proporcionados: lista de nombres, separados por comas que denota los valores proporcionados por el mensaje en la ejecucin subsiguiente de la interaccin global. Si el mensaje no proporciona ningn valor se omite.

    Lista-valores-retorno (resultado): El resultado est constituido por la lista de valores devueltos por el mensaje. Estos valores pueden utilizarse como parmetros de los otros mensajes comprendidos en la interaccin. Este campo no existe en ausencia de valores devueltos

    Diagrama de Comunicacin

    El formato de este campo es libre:

    Diagrama de Comunicacin

    Nombre-mensaje: es el nombre del evento surgido en el objeto destino (suele ser el evento que solicita la realizacin de una operacin).

    Lista-argumentos: Se trata de una lista de parmetros del mensaje; es una lista de argumentos, separados por comas, encerrados entre parntesis. Se pueden utilizar los parmetros an cuando la lista est vaca.

    Los argumentos y el nombre del mensaje identifican de manera nica la accin que debe emprenderse en el objeto destinatario.Los argumentos pueden contener valores devueltos por mensajes enviados anteriormente, as como expresiones de navegacin construidas a partir del objeto fuente.

    Diagrama de Comunicacin

    Diagrama de Comunicacin

    Diagrama de Comunicacin

    ACTOR

    La notacin permite incluir a un actor en un diagrama de comunicacin para representar el desencadenamiento de las interacciones por un elemento externo al sistema.

    Gracias a este artificio la interaccin puede describirse de manera ms abstracta, sin entrar en detalles de los objetos de la interfaz del usuario.

    El primer mensaje de la interaccin es enviado por el actor, representado bien por el smbolo grfico de los actores del modelo de los casos de uso, o bien por un objeto con un estereotipo que precisa su calidad de actor.

    Diagrama de Comunicacin

    El siguiente diagrama muestra un fragmento de interaccin, que corresponde a una llamada de cabina de ascensor por parte de una persona.

    Diagrama de Comunicacin

    OPCIONES DE REPRESENTACIN

    Los argumentos de los mensajes se representan en los diagramas, ya sea utilizando pseudocdigo, o bien directamente en la sintaxis del lenguaje de programacin.

    En lugar de emplear esas expresiones textuales para los argumentos y valores proporcionados, la notacin propone tambin una representacin grfica de los argumentos en forma de flechas terminadas por pequeos crculos.

    Diagrama de Comunicacin

    El siguiente diagrama da un ejemplo de representacin grafica de argumentos de un mensaje

    Diagrama de Comunicacin

    Expresiones en metamodelo Las colaboraciones

    Una colaboracin es un mecanismo compuesto de elementos estructurales y de comportamiento.

    Las colaboraciones proporcionan un mecanismo de organizacin pero poseen, contrariamente a los paquetes, una identidad y un mbito semntico.

    Un mismo elemento puede intervenir en varias colaboraciones.

    Diagrama de Comunicacin

    Las colaboraciones emplean segn el nivel de detalle, para describir especificaciones y para expresar realizaciones.

    La siguiente tabla resume los elementos de modelado que pueden ser descriptos por una colaboracin.

    EspecificacinTipoOperacinCaso de usoRealizacinClaseMtodoRealizacincaso de uso

    Diagrama de Comunicacin

    Las colaboraciones existen tambin bajo la forma genrica (modelo), parametrizada por clases, relaciones, atributos y operaciones.Una colaboracin genrica se llama pattern, o esquema y micro-arquitectura.Los patterns poseen siempre un nombre, contrariamente a las colaboraciones que pueden ser annimas.LAS INTERACCIONESUna interaccin expresa el comportamiento que resulta de la comunicacin de un grupo de instancias.

    Una interaccin puede visualizarse segn el punto de vista del tiempo (por los diagramas de secuencia) o segn el punto de vista del espacio (por los diagramas de comunicacin).

    Diagrama de Comunicacin

    Las interacciones comprenden principalmente los siguientes elementos:

    Las instancias que son la manifestacin concreta de un tipo;Los enlaces que enlazan las instancias y sirven de soporte para los envos de mensaje;Los mensajes que desencadenan las operaciones;Las funciones implementadas por los extremos de los mensajes.

    Diagrama de Comunicacin

    ROL DE ASOCIACIN: Notacin: Es una conexin de dos roles de clasificador dentro de una colaboracin. Es una asociacin que est definida y tiene significado slo en el contexto descrito por una colaboracin.Los roles de asociacin son parte estructural clave de las colaboraciones, pues permiten describir relacionescontextales. Se representa mediante una ruta entre dos smbolos de rol de clasificador.

    Nombre-Rol-Asociacin Nombre-asociacin-base

    Diagrama de Comunicacin

    ROL DE CLASIFICADOR:

    Una colaboracin describe un patrn de interaccin entre un conjunto de participantes, que son instancias de clases o de tipos de datos.Un rol de clasificador es la descripcin de un participante. Cada rol es un uso diferente del clasificador en un contexto propio y nico.Dentro de una colaboracin, un rol de clasificador denota una aparicin individual de un clasificador, distinta de otras apariciones del clasificador y distinta tambin de la propia declaracin del clasificador.

    Diagrama de Comunicacin

    Un rol de clasificador tiene una referencia a un clasificador (clasificador base) y una multiplicidad.

    El clasificador base restringe el tipo de objeto que puede desempear el rol de clasificador. La clase del objeto puede ser la misma o un descendiente del clasificador base.

    La multiplicidad indica cuntos objetos pueden desempear el rol a la vez en una instancia de la comunicacin.

    El mismo objeto puede desempear diferentes roles en distintas colaboraciones. Una colaboracin representa una faceta del objeto.

    Diagrama de Comunicacin

    Por ejemplo:

    Diagrama de Comunicacin

    Diagrama de Comunicacin

    DIAGRAMAS DE COMUNICACIN.

    Un diagrama de la comunicacin, antes llamado diagrama de colaboracin, es un diagrama de la asociacin que muestra informacin similar a la de los diagramas de secuencia pero su foco primario se fija en las relaciones del objeto.

    En los diagramas de comunicacin, los objetos se muestran con los conectores de la asociacin entre ellos. Los mensajes se agregan a las asociaciones como flechas que sealan en la direccin del flujo del mensaje. La secuencia de mensajes se muestra con un esquema de enumeracin.

    Diagrama de Comunicacin

    Los dos diagramas siguientes demuestran un diagrama de comunicacin y el diagrama de secuencia que muestra la misma informacin.

    Aunque es posible derivar el orden de los mensajes en el diagrama de la comunicacin mediante la enumeracin, l no se visualiza inmediatamente.

    Diagrama de Comunicacin

    Diagrama de Comunicacin