de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

¿Qué es UML?

UML es una notación estándar para métodos orientados a objetos, que fue creada mediante la unificación de las Técnicas de Modelado de Objetos. Se utiliza para el análisis, diseño y despliegue de sistemas. ElLenguaje Unificado de Modelado fue diseñado para responder a las necesidades de las empresas de automatizar la producción de software, mejorar la calidad y reducir los costos y el tiempo de comercialización. También proporciona una base formal para comprender el lenguaje de modelado.

¿Por qué UML?

Las aplicaciones empresariales grandes deben estructurarse de manera que permitan la escalabilidad, la seguridad y una ejecución robusta bajo condiciones de estrés. Una arquitectura bien diseñada permite la reutilización de código y permite a los programadores de mantenimiento encontrar y corregir errores que aparecen mucho tiempo después de que los autores originales se hayan mudado a otros proyectos. El modelado es esencial para proyectos de software grandes, y también ayuda a proyectos medianos y pequeños. Un modelo garantiza que la funcionalidad empresarial sea completa y correcta, que se satisfagan las necesidades del usuario final, y que el diseño del programa respalde los requisitos de escalabilidad, robustez, seguridad, extensibilidad y otras características.

  • Los modelos nos ayudan a trabajar a un nivel más alto de abstracción al ocultar o enmascarar detalles, destacando la imagen general o centrándonos en diferentes aspectos del prototipo.
  • UML te permite modelar cualquier tipo de aplicación, que se ejecute en cualquier tipo de hardware, sistema operativo, lenguaje de programación y red, y también puede usarse para modelar aplicaciones no orientadas a objetos.
  • Algunas herramientas analizan el código fuente existente (o, según algunos afirman, el código objeto!) y lo descompilan en un conjunto dediagramas UML, mientras que otras ejecutan modelos UML, generando típicamente código de lenguaje de programación que se ejecuta rápidamente si el generador de código incorpora patrones escalables de mejores prácticas.
  • El proceso de recopilar y analizar los requisitos de una aplicación e incorporarlos en un diseño de programa es complejo. UML es un lenguaje que te permite expresar los resultados de tu análisis y diseño.

¿De dónde viene?

UML tiene sus raíces en los métodos de programación orientada a objetos desarrollados a finales de la década de 1980 y principios de la de 1990. Jim Rumbaugh, Grady Booch e Ivar Jacobson fusionaron sus ideas en el Método Unificado, que posteriormente pasó a llamarse Lenguaje Unificado de Modelado (UML). La primera Solicitud de Propuesta (RFP) emitida por el Grupo de Gestión de Objetos (OMG) proporcionó el impulso para que varias organizaciones se unieran para presentar una respuesta conjunta a la RFP. La respuesta a la RFP, UML 1.0, fue bien definida, expresiva, potente y generalmente aplicable, y se mejoró de las versiones 1.1 a 1.5, y posteriormente a UML 2.1 del 01 al 06 (actualmente la versión actual de UML es la 2.5)

Beneficios de UML

El mejor beneficio de usar UML es que los códigos de los diagramas son fácilmente legibles por cualquier programador que entienda incluso una pequeña parte del programa.

  • UML es una norma utilizada para describir visualmente un programa. Es ampliamente utilizada y aceptada como el lenguaje para esquematizar programas.
  • Un diagrama UML muestra las relaciones entre clases y entidades en un programa informático. Es fácil comprender las relaciones de un programa al observar el diagrama.
  • Un diagrama UML ayuda a explicar las relaciones en un programa de manera sencilla, y permite al programador reutilizar partes de código que ya existen en lugar de volver a escribir esas funciones.
  • UML es la norma actual para la programación en lenguajes de programación orientados a objetos. Ayuda a planificar un programa antes de que comience la programación, ygenera código basado en las clases establecidas en el modelo.

Diagramas UML y modelo – Estructura frente a comportamiento

Un diagrama UML muestra cómo interactúan los componentes de un sistema con otros componentes y cómo funcionará. Un modelo UML es una representación gráfica completa del modelo del sistema, mientras que un diagrama es una representación parcial.

Visión estática frente a visión dinámica

El modelado estático muestra la estructura del sistema utilizando objetos, atributos, operaciones y relaciones, mientras que el modelado dinámico muestra el comportamiento del sistema utilizando colaboraciones entre objetos y cambios en los estados internos de los objetos.

  • Diagramas de estructurarepresentan los aspectos estáticos de un sistema de software. Se utilizan para documentar la arquitectura de software de los sistemas de software.
  • Los diagramas de comportamiento describen el aspecto dinámico de un sistema. Se utilizan para describir la funcionalidad de los sistemas de software.

14 tipos de diagramas UML

UML 2.2 tiene14 tipos de diagramas, de los cuales 7 representan información estructural y 7 representan aspectos generales de las interacciones.

Diagramas de estructura

Dado que los diagramas de estructura representan la estructura, se utilizan ampliamente para documentar la arquitectura de software de los sistemas de software. Los diagramas de estructura representan la estructura estática de los elementos en su sistema. Los siete diagramas estructurales UML están organizados aproximadamente alrededor de los principales grupos de elementos que encontrarás al modelar un sistema.

Por ejemplo, el diagrama de componentes describe cómo se divide un sistema de software en componentes y muestra las dependencias entre estos componentes.

Estructural Diagrama Descripción breve
Diagrama de estructura compuesta Muestra la estructura interna de un clasificador, las interacciones del clasificador con el entorno a través de puertos, o el comportamiento de una colaboración.
Diagrama de despliegue Muestra un conjunto de nodos y sus relaciones que ilustran la vista estática de despliegue de una arquitectura.
Diagrama de paquetes Agrupa elementos UML relacionados en un conjunto de estructuras UML lógicamente relacionadas.
Diagrama de perfil
Diagrama de clases Muestra un conjunto de clases, interfaces y colaboraciones y sus relaciones, típicamente encontradas al modelar sistemas orientados a objetos.
Diagrama de objetos Muestra un conjunto de objetos y sus relaciones, que son instantáneas estáticas de instancias de los elementos encontrados en los diagramas de clases.
Diagrama de componentes Muestra un conjunto de componentes y sus relaciones que ilustran la vista estática de implementación de un sistema.

Diagramas de comportamiento

Los cinco diagramas de comportamiento de UML se utilizan para modelar el comportamiento de un sistema. Muestran cómo los datos circulan a través del sistema, cómo los objetos se comunican entre sí, cómo el paso del tiempo afecta al sistema y qué eventos provocan que el sistema cambie sus estados internos.

De comportamiento Diagrama Descripción breve
Diagrama de actividad Es una representación gráfica de flujos de actividades y acciones paso a paso con soporte para elección, iteración y concurrencia
Diagrama de casos de uso Describe los requisitos funcionales de un sistema en términos de casos de uso que te permiten relacionar lo que necesitas de un sistema con la forma en que el sistema cumple con esas necesidades.
Diagrama de máquinas de estado Muestra el comportamiento discreto de una parte de un sistema diseñado mediante transiciones de estado finitas.
Diagrama de secuencia Muestra la secuencia de mensajes intercambiados entre los objetos necesarios para llevar a cabo la funcionalidad del escenario.
Diagrama de comunicación Muestra las interacciones entre objetos y/o partes (representadas como líneas de vida) utilizando mensajes secuenciados en una disposición libre.
Diagrama de vista general de interacción Muestra un flujo de control con nodos que pueden contener otrosdiagramas de interacción.
Diagrama de tiempo Muestra interacciones cuando el propósito principal del diagrama es razonar sobre el tiempo, centrándose en condiciones que cambian dentro y entre las líneas de vida a lo largo de un eje de tiempo lineal.

1. Diagrama de clases

Un diagrama de clasesmuestra una vista estática de una aplicación y ayuda a construir código de software ejecutable. Muestra los atributos, clases, funciones y relaciones para ofrecer una visión general del sistema de software. Se utilizan para crear una vista estática de una aplicación. Un diagrama de modelo de objetos puede reducir el tiempo de mantenimiento al proporcionar un esquema general de una aplicación antes de la codificación.

Dependiendo de la complejidad de un sistema, puedes usar un único diagrama de clases para modelar todo el sistema, o puedes usar varios diagramas de clases para modelar los componentes del sistema. Los diagramas de clases son fundamentales en el proceso de modelado orientado a objetos y modelan la estructura estática de un sistema. En la etapa de análisis, un diagrama de clases puede ayudarte a comprender los requisitos de tu dominio de problema e identificar sus componentes.

El diagrama de claseses el bloque fundamental principal del modelado orientado a objetos. Muestra la estructura de un sistema orientado a objetos mostrando clases, sus atributos, operaciones y relaciones entre objetos. El compartimento superior contiene el nombre de la clase, el compartimento medio contiene sus atributos y el compartimento inferior contiene sus operaciones.

Las relaciones se escriben en medio de la línea de asociación. A menudo tienen una pequeña flecha para indicar la dirección para leer la relación. La multiplicidad de objetos en una relación se puede expresar como: Exactamente uno, cero, uno, muchos, uno o más.

Editar este diagrama de clases

  • Una clase es un plano para un objeto, y el punto del diseño orientado a objetos no es sobre objetos, sino sobre clases, porque usamos clases para crear objetos.
  • La elección de perspectiva depende de cuán avanzado estés en el proceso de desarrollo. Los modelos de análisis presentan una mezcla de perspectivas conceptuales y de especificación.
  • Las relaciones de clases de UML se utilizan para transmitir cómo debe implementarse el código a partir de los diagramas. Si se interpretan con precisión, el código implementado reflejará con exactitud la intención del diseñador.
  • Una asociación se representa mediante una línea que conecta dos clases. En cada extremo, podemos indicar la propiedad, el papel que desempeñan los elementos de ese extremo y la multiplicidad de instancias.
  • Una generalización es una relación entre dos clases. Cada instancia de la clase específica también es una instancia indirecta de la clase general.
  • Una agregación es un tipo de asociación que representa una relación parte-todo o parte-de. Puede representarse gráficamente mediante una forma de diamante hueco en la clase que contiene, con una única línea que la conecta a la clase contenida.
  • Existe una relación de dependencia cuando un objeto de una clase utiliza un objeto de otra clase.
  • La clase abstracta se utiliza para encontrar funcionalidades entre clases, y su nombre se escribe en cursiva.

2. Diagrama de objetos

Un objeto es una instancia de una clase en un momento particular durante la ejecución, y un diagrama de objetos muestra el estado detallado de un sistema en un momento determinado. Se utilizan para mostrar ejemplos de estructuras de datos, y los diagramas de clases se utilizan para verificar la precisión y completitud dediagramas de objetos.

(Creado con la herramienta Diagrama de objetos de Visual Paradigm (Escritorio)herramienta de diagrama de objetos)

  • Un diagrama de objetos muestra la relación entre objetos en un sistema y puede utilizarse para explicar diagramas de clases de sistemas complejos.
  • En UML, los diagramas de objetos muestran las instancias de los clasificadores en los modelos y sus relaciones. Puedes crear diagramas de objetos instanciando los elementos del modelo en diagramas de clase, despliegue, componente y caso de uso.
  • Para desarrollar un diagrama de objetos, debes identificar los mecanismos que componen el sistema, y luego identificar las clases, interfaces y otros elementos que participan en el mecanismo, así como también identificar las relaciones entre estas entidades.
  • Un diagrama de objetos puede utilizarse para mostrar el estado de los objetos en un momento determinado.

3. Diagrama de componentes

Un diagrama de componentesse utiliza para descomponer un sistema orientado a objetos grande en componentes más pequeños. Visualiza las relaciones, así como la organización entre los componentes presentes en el sistema. Un diagrama de componentes es una representación de los componentes lógicos de un sistema de software y sus relaciones, que constituye una vista estática de implementación de un sistema. Se utiliza típicamente para visualizar los componentes, construir ejecutables y describir la organización y relaciones de los componentes.

Editar este diagrama de componentes UML

  • El diagrama de componentesilustra las interfaces proporcionadas y requeridas de un componente.
  • Un componente es una parte modular de un sistema. Se dibuja como un rectángulo con compartimentos opcionales apilados verticalmente.
  • Se utiliza un chupete o un enchufe para ilustrar una dependencia desde un componente hacia una interfaz, y un semicírculo para ilustrar una dependencia desde un componente hacia una interfaz requerida.

4. Diagrama de despliegue

Un diagrama de despliegue muestra la estructura del sistema en tiempo de ejecución y las rutas de comunicación entre diferentes elementos de hardware en los que se desplegará el software. Un diagrama de despliegue es una colección de vértices y arcos que muestran las relaciones entre los nodos en un sistema. Es útil para los ingenieros de sistemas para controlar el rendimiento, la escalabilidad, la mantenibilidad y la portabilidad.

Editar este diagrama de despliegue en línea

Los diagramas de despliegue muestran la arquitectura de un sistema como el despliegue de artefactos de software en destinos de despliegue. Pueden ser de nivel de especificación (también llamado nivel de tipo) o de nivel de instancia (similar a los diagramas de clases y diagramas de objetos).

Despliegue frente a diagrama de componentes

  • Los diagramas de despliegue se utilizan para describir los componentes de hardware utilizados para desplegar componentes de software en un sistema.
  • Los diagramas de componentes se utilizan para describir los artefactos de software de un sistema y los diagramas de despliegue se utilizan para describir la topología de hardware de un sistema.

5. Diagrama de Paquetes

Los paquetes se utilizan para agrupar elementos semánticamente relacionados con el fin de organizar los elementos de alto nivel de sistemas complejos. Un diagrama de paqueteses un patrón para agrupar elementos y definir sus interdependencias. Separan los elementos y componentes del modelo en unidades o sistemas coherentes. Estos diagramas simplifican el control de acceso al sistema, la navegación en el modelo, la gestión de configuración y otras consideraciones semánticas.

Editar este diagrama de paquetes

  • Los paquetes se muestran utilizando un símbolo de carpeta, y los modelos se muestran utilizando un triángulo en la esquina superior derecha.
  • Un diagrama de paquetes sigue una estructura jerárquica de paquetes anidados, por ejemplo, un diagrama de paquetes también puede agrupar casos de uso en subsistemas lógicamente relacionados.
  • Existe una dependencia entre dos paquetes si alguna clase en el paquete A depende de alguna clase en el paquete B, o si existe una relación cliente-servidor entre dos clases.
  • Diagramas de paquetesnos permiten especificar dependencias entre paquetes. Una dependencia se modela mediante una flecha punteada.
  • Una relación de importación de paquetes se interpreta como la importación de elementos desde el paquete objetivo al paquete de origen.
  • Una fusión de paquetes es una relación dirigida entre dos paquetes. Añade las características del paquete objetivo a las características del paquete de origen.
  • Un paquete es un contenedor para otros elementos del modelo. Un paquete puede estar anidado jerárquicamente, y el contenedor puede eliminarse o copiarse sin eliminar los elementos que contiene.

6. Diagrama de Estructura Compuesta

En los modelos UML, undiagrama de estructura compuestamuestra la estructura interna de los clasificadores estructurados mediante el uso de partes, puertos y conectores

(Creado con la herramienta de Diagrama de Estructura Compuesta de Visual Paradigm (Escritorio)herramienta de Diagrama de Estructura Compuesta)

  • Partes: un elemento del diagrama que representa un conjunto de una o más instancias que posee un clasificador estructurado contenedor
  • Un conector une puertos entre sí, una colaboración une instancias entre sí, un clasificador estructurado representa una clase que puede describirse mediante interacciones entre partes, y un clasificador encapsulado contiene puertos.
  • Puertos: definen el punto de interacción entre una instancia de clasificador y su entorno o entre el comportamiento del clasificador y sus partes internas
  • Interfaz: puede modelarse como una clase, pero no se instanciará. Una clase concreta debe implementar la interfaz, y las entidades externas pueden usar la interfaz sin preocuparse por la implementación interna.
  • Colaboraciones: usan un uso de colaboración para definir únicamente los roles y conexiones necesarios para alcanzar un objetivo específico de la colaboración

Clase vs Objeto vs Diagrama de Estructura Compuesta

  • Los diagramas de clases muestran las relaciones entre las clases que forman una estructura compleja, mientras que los diagramas de objetos muestran instancias específicas de esa estructura.
  • Los diagramas de estructura compuesta muestran cómo interactúan los componentes.

7. Diagrama de Perfil

UML es un lenguaje de modelado de propósito general. Sin embargo, en algunos casos, un lenguaje optimizado para el dominio dado es ventajoso.Diagramas de perfiles permiten personalizar modelos UML para dominios y plataformas específicos. Estos diagramas se definen utilizando estereotipos, definiciones de valores etiquetados y restricciones.

Editar este diagrama de perfil

A un perfil UML puede crearse de tres formas: mediante la creación de un nuevo metamodelo, extendiendo el metamodelo existente o utilizando mecanismos inherentes al lenguaje.

  • Los estereotipos te permiten aumentar el vocabulario de UML al crear nuevos bloques de construcción que parecen primitivos y hablan el lenguaje de tu dominio.
  • Los valores etiquetados se utilizan para agregar información a un elemento del modelo UML. Pueden usarse para generación de código, control de versiones, gestión de configuración, autoría, etc.
  • Las restricciones te permiten ampliar la semántica de los bloques de construcción UML al añadir nuevos protocolos. Se representan como cadenas encerradas entre corchetes colocadas cerca del elemento asociado.

Diagrama de comportamiento

Los diagramas de comportamiento UML visualizan, especifican, construyen y documentan los aspectos dinámicos de un sistema. Los diagramas de comportamiento se categorizan de la siguiente manera: diagramas de casos de uso, diagramas de interacción, diagramas de estado y diagramas de actividad.

1. Diagrama de casos de uso

Un diagrama de casos de uso es una representación visual del comportamiento de un programa de software. Ayuda a los diseñadores a comunicar el comportamiento de un sistema al usuario al especificar el comportamiento visible desde el exterior. Los casos de uso representan únicamente los requisitos funcionales de un sistema. Las reglas de negocio, los requisitos de calidad de servicio y las restricciones de implementación deben representarse por separado. Los diagramas de casos de uso se utilizan para describir los roles de las personas en un sistema. Pueden usarse para planificar requisitos, validar un diseño de hardware, probar un producto de software o crear una referencia de ayuda en línea.

La modelización de casos de uso fue introducida en 1986 por Ivar Jacobson. En 1992, su libro Ingeniería de Software Orientada a Objetos ayudó a popularizar la técnica. Un diagrama de casos de uso es una vista de nivel superior de un sistema. Es beneficioso escribir casos de uso a un nivel de granularidad más gruesa con menos detalle cuando no es necesario. Los diagramas de casos de uso suelen desarrollarse en las primeras etapas del desarrollo para capturar requisitos, validar la arquitectura y guiar la implementación.

Editar este diagrama de casos de uso

  • Los diagramas de casos de uso deben estructurarse desde la perspectiva de los actores, y centrarse en el «qué» y no en el «cómo».
  • La relación extendida se utiliza para incluir un comportamiento opcional de un caso de uso extendido en un caso de uso extendido.
  • Una relación de generalización conecta dos casos de uso. El hijo puede añadir o sobrescribir el comportamiento del padre.
  • Los actores de tu sistema son las personas que usan, instalan, inician, mantienen, apagan y obtienen información del sistema o proporcionan información al sistema.

2. Diagrama de actividad

Los diagramas de actividad se utilizan para representar el flujo de control en un sistema y describir los pasos involucrados en la ejecución de un caso de uso. Los diagramas de actividad son representaciones gráficas de flujos de trabajo, que soportan elección, iteración y concurrencia. También pueden incluir elementos que muestran el flujo de datos entre actividades. Son similares a los diagramas de flujo y se utilizan para representar los aspectos dinámicos de un sistema. Por ejemplo, un diagrama de actividad puede usarse para mostrar el flujo de control desde el estado inicial hasta el estado final.

Los diagramas de actividad también se utilizan para modelar procesos de negocio y flujos de trabajo. Se utilizan para capturar el comportamiento dinámico de un sistema y para modelar el flujo de trabajo de un sistema orientado a objetos o distribuido.

Editar este diagrama de actividad en línea

  • Los diagramas de actividad se utilizan para modelar una serie de acciones o el flujo de control en un sistema.
  • Un diamante representa una decisión con caminos alternativos. Los caminos alternativos deben etiquetarse con condiciones.
  • Un nodo de bifurcación divide un único flujo entrante en múltiples flujos concurrentes.
  • Un nodo de unión reúne múltiples flujos concurrentes nuevamente.
  • Los conectores se utilizan para aclarar diagramas de actividad desordenados. Representan una entrada a una acción o una salida de una acción.
  • Las señales se utilizan para modificar actividades en un sistema. Se necesita una respuesta antes de que la actividad pueda modificarse.
  • Los swimlanes se utilizan para agrupar acciones en diagramas de actividad.

3. Diagrama de secuencia

Un diagrama de secuencia es un diagrama simple utilizado para mostrar las interacciones entre partes (es decir, subsistemas u objetos) de un sistema. Los diagramas de secuencia de UML muestran cómo los objetos interactúan en el tiempo utilizando el eje vertical para representar el tiempo. Los diagramas de secuencia capturan las interacciones entre un sistema y su usuario, o entre sistemas. Un diagrama de secuencia muestra cómo se llevan a cabo las operaciones. El tiempo avanza conforme avanzas hacia abajo en la página.

En un diagrama de secuencia, los mensajes representan la interacción entre objetos. Los mensajes de llamada representan una solicitud para invocar una operación, los mensajes de retorno representan el flujo de información desde el receptor al llamador, y los mensajes recursivos representan una llamada al llamador.

Editar este diagrama de secuencia

  • Un diagrama de secuencia puede usarse para modelar cómo diferentes partes de un sistema interactúan para llevar a cabo un único caso de uso, por ejemplo, un diagrama de secuencia puede ayudar a visualizar las interacciones entre clases y descubrir responsabilidades en un nuevo sistema.
  • En un diagrama de secuencia, un objeto envía un mensaje a otro objeto. Ambos objetos están activos durante el intercambio del mensaje.
  • Las flechas de mensaje se utilizan en los diagramas de secuencia para indicar un mensaje. La flecha de mensaje lleva una descripción, conocida como firma del mensaje, sobre ella.
  • Un mensaje asíncrono se envía cuando el llamador del mensaje no espera a que el mensaje sea procesado.

4. Diagrama de máquina de estados

Un diagrama de máquina de estados (conocido como diagrama de estado, diagrama de transición de estado) se utiliza para describir los diferentes estados de un componente en un sistema. Está controlado por eventos externos o internos. Se utilizan para modelar la naturaleza dinámica de un sistema. Describe el flujo de control de un estado a otro y se utiliza para modelar el ciclo de vida de un objeto desde su creación hasta su terminación. Por ejemplo, los diagramas de estado muestran todos los comportamientos posibles de los objetos de una clase y el orden de los eventos, y son vitales para nuestra comprensión del sistema.

En la mayoría de los sistemas, la complejidad surge de la interacción entre objetos de diferentes clases, y por eso los diagramas de estado no son necesarios para cada clase. Sin embargo, para clases complejas, como los sistemas de control de procesos o sistemas de comunicación, es necesario un diagrama de estado para modelar el comportamiento de los objetos.

Editar este diagrama de máquina de estados en línea

  • Un círculo negro relleno para representar el estado inicial de un sistema o una clase.
  • Una flecha sólida para representar una transición de un estado a otro
  • Un rectángulo redondeado para representar un estado.
  • Las transiciones de estado de un estado a otro son provocadas por eventos.
  • Las condiciones de guardia evitan que ciertas transiciones se realicen, y las transiciones internas no afectan las transiciones de estado.
  • Un diagrama de estado incluye un estado inicial, estados intermedios, transiciones y un estado final. También incluye una caja con esquinas redondeadas, un nombre, variables de estado y acciones realizadas en cada estado.

¿Qué es un estado?

Un estado es una condición o situación durante la vida de un objeto, y un evento es un estímulo que puede desencadenar una transición de estado. Una condición de guardia es una evaluación de una expresión booleana, y una transición puede tener múltiples condiciones de guardia. Los diagramas de estado se utilizan a menudo para describir el comportamiento de componentes electrónicos. Los diagramas de estado pueden incluir la división de estados en múltiples estados, la unión de estados, estados históricos y estados compuestos.

Diagrama de actividad frente a diagrama de estado

  • En UML, los diagramas de actividad representan actividades de alto nivel. En particular, los diagramas de actividad pueden representar concurrencia y coordinación.
  • En un diagrama de máquina de estados, los vértices representan los estados de un objeto, y las aristas representan ocurrencias de eventos. Notaciones adicionales capturan cómo se coordinan las actividades.

5. Diagrama de comunicación

Los diagramas de comunicación muestran cómo interactúan los objetos. También muestran los mensajes que viajan entre objetos. Modelan el intercambio de mensajes entre objetos que proporcionan funcionalidades de casos de uso y operaciones, y capturan interacciones que muestran los mensajes enviados. En un diagrama de comunicación, los objetos (actores en casos de uso) se representan mediante rectángulos, y los mensajes que se intercambian entre objetos se representan mediante flechas etiquetadas que comienzan en el objeto emisor y terminan en el objeto receptor. Es fácil de leer porque los mensajes están etiquetados con números.

(Creado con la herramienta de diagramas de comunicación)

  • Los diagramas de comunicación de UML muestran cómo se envían y reciben los mensajes entre objetos en un sistema o pieza de software.
  • Las líneas representan enlaces y las flechas representan mensajes.
  • Los mensajes se numeran en orden secuencial y se describen con números y puntos decimales.
Diagrama de comunicación frente a diagrama de secuencia

El diagrama de comunicación y el diagrama de secuencia son similares. Presentan la misma información, pero el diagrama de comunicación se organiza según el espacio y el diagrama de secuencia se organiza según el tiempo.

Por ejemplo, a menudo combina tanto los diagramas de actividad como los de secuencia y representa los mensajes intercambiados entre las entidades para lograr tareas específicas en el sistema.

  • El diagrama de secuencia muestra el orden temporal de los mensajes, y
  • El diagrama de comunicación muestra las relaciones entre objetos.

6. Diagrama de vista general de interacción

Los diagramas de vista general de interacción son similares a los diagramas de actividad, pero cada actividad individual se representa como un marco que puede contener un diagrama de interacción anidado. Los diagramas de vista general de interacción de UML proporcionan un alto nivel de abstracción del modelo de interacción. También pueden mostrar el flujo de actividades entre diagramas. En otras palabras, los diagramas de interacción muestran el comportamiento dinámico de un sistema describiendo el orden cronológico de los mensajes y la organización estructural de los objetos que los envían y reciben.

(Creado con la herramienta Diagrama de vista general de interacción)

Un diagrama de vista general de interacción es similar a un diagrama de actividad, pero cada actividad individual se representa como un marco que puede contener un diagrama de interacción anidado. Los diagramas de vista general de interacción de UML proporcionan un alto nivel de abstracción del modelo de interacción. También pueden mostrar el flujo de actividad entre diagramas. En otras palabras, el diagrama de interacción muestra el comportamiento dinámico del sistema describiendo la secuencia temporal de los mensajes y la organización estructural de los objetos que envían y reciben mensajes.

Un diagrama de vista general de interacción incluye nodos que representan diagramas de interacción. Por ejemplo, unocurrencia de interacción (o diagrama de secuencia de referencia) le permite referirse a otro diagrama de secuencia desde dentro de un diagrama de secuencia. Esta funcionalidad le permite dividir escenarios complejos en escenarios más pequeños que se pueden reutilizar. Cada escenario es una “interacción”.

7. Diagrama de tiempo

Un diagrama de tiempo es una parte de un diagrama de interacción que representa cómo cambian las condiciones dentro y entre las líneas de vida junto a una línea de tiempo lineal. Muestra cómo interactúan los objetos durante un período determinado, muestra cuánto tiempo tarda cada paso del proceso y puede utilizarse para encontrar mejoras.

(Creado con la herramienta Editor de diagramas de tiempo)

  • Un diagrama de tiempo muestra las interacciones a lo largo de un eje de tiempo lineal e incluye elementos como mensaje, línea de vida, línea de tiempo y objeto o rol.
  • Una línea de vida representa un participante individual en una interacción. Puede colocarse dentro de un marco de diagrama o una cinta.
  • La restricción de duración se utiliza para determinar si una restricción se cumple durante una duración o no.
  • Una restricción de tiempo es una restricción de intervalo que representa un intervalo de tiempo. Una restricción de tiempo violada significa que el sistema ha fallado.

Recursos de UML