Introducción a UML (Unified Modeling Language)
UML (Lenguaje Unificado de Modelado, por sus siglas en inglés Unified Modeling Language) es un lenguaje de modelado visual estandarizado que se utiliza para representar, visualizar, construir y documentar los elementos de un sistema software, así como sus relaciones y comportamientos.
1. Qué es UML? #
UML no es un lenguaje de programación, sino un lenguaje de modelado gráfico. Está compuesto por un conjunto de diagramas que permiten representar distintos aspectos de un sistema: desde su estructura estática hasta su comportamiento dinámico. UML fue creado por Grady Booch, James Rumbaugh y Ivar Jacobson, y estandarizado por el OMG (Object Management Group).
¿Para qué sirve UML? #
UML es una herramienta poderosa para:
- Diseñar software orientado a objetos antes de escribir el código.
- Comunicar ideas y diseños entre programadores, analistas, diseñadores, clientes y otros interesados.
- Documentar sistemas existentes para facilitar el mantenimiento y comprensión.
- Analizar requisitos y comportamientos del sistema antes de implementarlo.
¿Quién utiliza UML? #
- Analistas funcionales: para capturar los requisitos del sistema.
- Diseñadores de software: para planificar la arquitectura del sistema.
- Desarrolladores: para comprender la lógica y las interacciones del software.
- Profesores y estudiantes: para aprender y enseñar conceptos de análisis y diseño orientado a objetos.
¿Qué representa UML? #
UML permite modelar:
- La estructura del sistema (clases, objetos, componentes, paquetes, etc.).
- El comportamiento (casos de uso, secuencias, actividades, máquinas de estados, etc.).
- La arquitectura del software y sus interacciones.
¿Cuáles son los tipos de diagramas UML? #
UML incluye 14 tipos de diagramas, organizados en tres categorías principales:
| Categoría | Tipo de Diagrama |
|---|---|
| Estructurales | Clases, Objetos, Componentes, Paquetes, Estructuras Compuestas, Despliegue |
| Comportamiento | Casos de Uso, Actividad, Máquina de Estados |
| Interacción | Secuencia, Comunicación, Tiempo, Visión General de la Interacción |
2. Herramientas para editar y visualizar #
- PlantUML Live
- StarUML
- Visual Paradigm
- Lucidchart
- UMLet
Resumen del tema
Conceptos clave #
- Lenguaje Unificado de Modelado (UML): estándar visual de la OMG para modelar, especificar, documentar y construir sistemas de software orientados a objetos.
- Categorías principales de diagramas:
- Estructurales: vista estática del sistema (Clases, Objetos, Componentes, Paquetes, Despliegue, Estructura Compuesta).
- Comportamiento: aspectos dinámicos de funciones y procesos (Casos de Uso, Actividad, Máquina de Estados).
- Interacción: intercambio dinámico de mensajes entre objetos (Secuencia, Comunicación, Tiempo).
- Propósito y valor: actúa como puente de comunicación universal entre analistas, arquitectos, desarrolladores y clientes antes y durante la implementación.
- Herramientas de diagramación: software especializado (PlantUML, Visual Paradigm, StarUML, Lucidchart) para crear y versionar diagramas.
Qué debes recordar #
UML proporciona un lenguaje visual común para diseñar la arquitectura estática y el comportamiento dinámico del software antes de escribir código.