Please enable JavaScript.
Coggle requires JavaScript to display documents.
UML "El Lenguaje Unificado de Modelado" - Coggle Diagram
UML
"El Lenguaje Unificado de Modelado"
El lenguaje UML es un estándar OMG diseñado para visualizar,
especificar, construir y documentar software orientado a objetos.
El modelado es esencial en la construcción de software para…
Comunicar la estructura de un sistema complejo
Descubrir oportunidades de simplificación y reutilización
Comprender mejor lo que estamos construyendo
Especificar el comportamiento deseado del sistema
Un modelo proporciona “los planos” de un sistema y puede ser más o
menos detallado, en función de los elementos que sean relevantes en cada momento.
Ventaja principal de UML
Unifica distintas notaciones previas.
Inconvenientes de UML
Falta de integración con otras técnicas (p.ej. diseño de interfaces de usuario)
UML es excesivamente complejo (y no está del todo libre de ambigüedades): “el 80% de los problemas puede modelarse usando alrededor del 20% de UML
Diagramas de clases
Notación
Atributos
[visibilidad] nombre [multiplicidad] [: tipo [= valor_por_defecto]]
Operaciones
[visibilidad] nombre ([[in|out] parámetro : tipo [, …]])[:tipo_devuelto]
Los corchetes indican partes opcionales.
Visibilidad: privada (-), protegida (#) o pública (+)
Multiplicidad entre corchetes (p.ej. [2], [0..2], [
], [3..
])
Parámetros de entrada (in) o de salida (out).
Diagramas de objetos
NOTA:
Los identificadores subrayados indican que se trata de objetos.
Un diagrama de objetos expresa la parte estática de una interacción.
Para ver los aspectos dinámicos de la interacción se utilizan los diagramas de interación (Diagramas de secuencia y diagramas de comunicación/colaboración)
Diagramas de interacción
Muestran una interacción concreta: un conjunto de objetos y sus
relaciones, junto con los mensajes que se envían entre ellos.
Los diagramas de secuencia y de comunicación son isomorfos:
Un diagrama de secuencia se puede transformar mecánicamente en un diagrama de comunicación.
Un diagrama de comunicación se puede transformar automáticamente en un diagrama de secuencia.
NOTA: Los mensajes se numeran para ilustrar
el orden en que se emiten.
La distribución de los objetos en el diagrama permite observar
adecuadamente la interacción de un objeto con respecto de los demás
La perspectiva estática del sistema viene dada por las relaciones existentes entre los objetos (igual que en un diagrama de objetos).
La vista dinámica de la interacción viene indicada por el envío de mensajes a través de los enlaces existentes entre los objetos.
Diagramas de secuencia
Resaltan la ordenación temporal de los mensajes que se intercambian.
Muestran la secuencia de mensajes entre objetos durante un escenario
concreto (paso de mensajes).
En la parte superior aparecen los objetos que intervienen.
La dimensión temporal se indica verticalmente (el tiempo transcurre hacia abajo).
Las líneas verticales indican el período de vida de cada objeto.
El paso de mensajes se indica con flechas horizontales u oblicuas (cando existe demora entre el envío y la atención del mensaje).
La realización de una acción se indica con rectángulos sobre las líneas de actividad del objeto que realiza la acción.
Diagramas de casos de uso (actores y casos de uso del sistema)
Los diagramas de uso se suelen utilizar en el modelado del sistema desde el punto de vista de sus usuarios para representar las acciones que realiza cada tipo de usuario.
Diagramas de estados (estados y transiciones entre estados)
Los diagramas de estados son especialmente importantes para describir el comportamiento de un sistema reactivo (cuyo comportamiento está dirigido por eventos).
Diagramas de actividades
(flujo de control en el sistema)
Los diagramas de actividades muestran el orden en el que se van realizando tareas dentro de un sistema (el flujo de control de las actividades).
Diagramas de componentes
(componentes y dependencias entre ellos)
Organización lógica de la implementación de un sistema
Diagramas de despliegue
(nodos de procesamiento y componentes)
Configuración del sistema en tiempo de ejecución