UML Class Diagram

Diagrama de clases UML

Planifica sistemas orientados a objetos en un espacio de trabajo conjunto que fomente la colaboración y la innovación utilizando un diagrama de clases UML.

Trusted by 65M+ users and leading companies

walt disney
asos
contentful
ubisoft
pepsico
macys
whirlpool
hanes
yamaha
docusign
liberty mutual
wp engine
accenture
bumble
delloite
hewlett packard
total
dropbox
walt disney
asos
contentful
ubisoft
pepsico
macys
whirlpool
hanes
yamaha
docusign
walt disney
asos
contentful
ubisoft
pepsico
macys
whirlpool
hanes
yamaha
docusign
liberty mutual
wp engine
accenture
bumble
delloite
hewlett packard
total
dropbox
walt disney
asos
contentful
ubisoft
pepsico
macys
whirlpool
hanes
yamaha
docusign

Sobre la plantilla de diagrama de clases UML

Un diagrama de clases UML es un modelo estático de un sistema orientado a objetos que define los objetos por sus clases, atributos y funciones. Usando un diagrama de clases, un programador debería ser capaz de implementar código para construir el sistema descrito sin necesitar ninguna información adicional.

Sigue leyendo para aprender más sobre los diagramas de clase UML y cómo puedes tu propio diagrama UML online.

¿Qué es un diagrama de clases UML?

Puedes pensar en un diagrama de clases UML como una "receta" para un sistema orientado a objetos. Al igual que una receta incluye ingredientes, cantidades e instrucciones, un diagrama de clases explica el sistema en términos de qué clases de objetos están involucrados, qué atributos tienen y qué operaciones deben realizar.

Los diagramas de clase forman parte del UML (Lenguaje Unificado de Modelado), un conjunto de herramientas para modelar software diseñado para ayudar a los desarrolladores a expresar sus ideas. Consta de toda una familia de diagramas, divididos en los que modelan la estructura y los que modelan el comportamiento.

El diagrama de clases es un diagrama estructural, parte de la familia que modela las relaciones estáticas de un sistema en estado estacionario. Es una herramienta vital para la programación orientada a objetos (POO).

Las clases son los elementos básicos del modelo de este diagrama de diseño orientado a objetos. Una clase es un conjunto de atributos, los rasgos variables que definen la clase como objeto, y de operaciones, que son las funciones que realiza ese objeto.

Por ejemplo, la clase "frigorífico" podría tener los atributos altura, capacidad y número de puertas, y tendría las operaciones refrigerar, congelar y dispensar agua. La clase es un plano que no existe en sí mismo, pero cualquier objeto que cumpla sus atributos y operaciones debe ser un frigorífico.

Un diagrama de clases UML es un conjunto de clases con instrucciones sobre cómo se relacionan para formar un sistema completo. Su aspecto es sencillo -sólo varias cajas con listas dentro, todas conectadas con líneas-, pero se puede utilizar para modelar casi cualquier sistema de software del mundo.

Ventajas de un diagrama de clases UML

La programación orientada a objetos se desarrolló originalmente como respuesta a la programación procedimental, que definía el software completamente en términos de instrucciones. Esto hacía muy difícil aislar cualquier aspecto del programa.

La programación orientada a objetos considera los programas como máquinas con piezas interconectadas. Cada objeto se define como una clase con atributos y operaciones, lo que facilita la comprensión de su funcionamiento y su relación con otros objetos. El uso del objeto como bloque de construcción principal facilita el diseño y la mejora de los sistemas.

Un diagrama de clases UML es una de las herramientas más importantes para facilitar el diseño y el desarrollo orientado a objetos. Es útil para construir modelos conceptuales de sistemas de software y para escribir el código.

Al igual que todos los diagramas UML, es lo suficientemente sencillo como para poder utilizarlo para planificar un sistema, pero lleva suficiente detalle como para proporcionar instrucciones sobre cómo implementarlo en la realidad. Un desarrollador puede tener una idea, planificarla con un diagrama de clases, y luego entregar ese diagrama a otro programador, y obtener algo muy parecido a lo que había previsto.

Crea tu propio diagrama de clases UML

La herramienta de pizarra online de Miro es el lienzo perfecto para crear y compartir este tipo de diagramas UML con tu equipo. Selecciona esta plantilla para comenzar a hacer tu diagrama de clases y, a continuación, sigue estos pasos:

Paso 1: Defina el sistema que desea modelar.

Como siempre, el primer paso es aclarar tus objetivos. Tanto si estás modelando un sistema que aún no se ha creado como si estás ilustrando un sistema existente para solucionar problemas, tendrás que definir una escala: qué detalles ilustrará y cuáles dejará fuera. Esto también se conoce como el nivel de abstracción de su diagrama.

Paso 2: Añade rectángulos para cada objeto y etiquétalo con una clase.

Cada objeto comienza con un rectángulo, que debería estar dividido en tres segmentos con dos líneas horizontales. La sección superior debe ser la más pequeña. Añade el nombre de la clase de cada objeto en negrita y céntralo en la división superior de cada rectángulo.

Paso 3: Etiquetar cada clase con sus atributos y operaciones.

Los atributos deben ir en la segunda división y las operaciones en la tercera. Comienza cada atributo u operación con un símbolo que indique si es público (+), privado (-) o protegido (#). A continuación, añade el nombre del atributo, dos puntos y el tipo de atributo u operación que es.

Por ejemplo, '+(nombre del atributo): int' es un atributo de instancia pública llamado (nombre del atributo).

Paso 4: Dibuja las relaciones entre las clases.

Cuando todos sus objetos están definidos en el diagrama con clases, atributos y operaciones, su siguiente paso es ilustrar cómo trabajan juntos. UML reconoce varias formas para la relación entre clases en un diagrama estructural. Las más comunes son

  • Asociación: Una relación de igualdad. Los dos objetos se necesitan mutuamente para ejecutar completamente sus funciones. Se ilustra con una línea sólida.

  • Herencia/generalización: Un objeto es un ejemplo específico de otra clase más abstracta. Ilustrado con una flecha sólida con una cabeza sin sombrear que apunta a la clase padre.

  • Realización: Un objeto especifica instrucciones y luego las transmite a otro objeto para su implementación. Se ilustra con una flecha punteada con una cabeza sombreada que apunta al objeto de implementación.

  • Dependencia: Un objeto cambia su ejecución dependiendo del estado de otro objeto. Se ilustra con una flecha punteada con una cabeza sin sombrear que apunta al objeto del que depende.

Una vez que hayas ilustrado cada tipo de asociación en el nivel de abstracción que desees, deberías tener suficiente información en tu diagrama para que cualquier programador (con los conocimientos adecuados) pueda construir el sistema. Revise su diagrama una vez más para ver si ha dejado algún dato crítico para la inferencia o la suposición.

Paso 5: Actualiza el diagrama de clases a medida que implementas el diseño del sistema.

Las implementaciones en el mundo real nunca son exactamente como el diseño. A medida que construyas y/o depures el sistema, revisa el diagrama de clases para que refleje la realidad.

También puedes compartir tu diagrama con tu equipo y los principales interesados para obtener comentarios y actualizar tu diagrama en consecuencia.

Caso de uso común de un diagrama de clases UML eficaz

Supongamos que una empresa está añadiendo un sistema de cumplimiento de pedidos a su tienda online. Como el sistema de compras ya está bien establecido y documentado, el equipo decide representarlo a un alto nivel de abstracción con un objeto.

Crean clases para el cliente y el momento del pedido (dejando fuera el sistema de pago, que se define en otra parte), luego añaden otro objeto para representar los artículos individuales, y un cuarto para representar la entrega.

A continuación, añaden atributos y operaciones. La clase "pedido" obtiene atributos de fecha, cantidad y estado de la entrega, y operaciones "tipo" y "peso" que dependen de la clase "artículo pedido". La clase "artículo pedido" obtiene los atributos tipo y peso. El principal atributo de la clase padre "entrega" es la distancia y un valor binario que indica si cruza las fronteras internacionales.

El equipo se da cuenta de que necesita más objetos aquí y crea tres para representar la entrega por aire, mar y tierra.

Terminan añadiendo relaciones. El cliente y el pedido son una asociación igual. Las operaciones del pedido dependen de los atributos del artículo pedido. Los tres métodos de envío son instancias específicas de entrega, la clase padre.

Ahora que está completo, el diagrama de objetos sirve como receta para construir un sistema de envío completo que organice y entregue las mercancías compradas online.

Más plantillas de diagramas UML

Sea que sea lo que necesites, contamos con un amplio abanico de plantillas para los distintos tipos de diagramas UML, utiliza la que más te convenga:

Preguntas frecuentes sobre la plantilla de diagrama de clases online

¿Para qué sirve un diagrama de clases?

Un diagrama de clases bien hecho sirve como modelo para crear un sistema de software completamente funcional. Debería poder transmitir estructuras a personas que no participaron en su concepción.

¿Cómo se crea un diagrama de clases?

Comience eligiendo un nivel de abstracción, luego nombre los objetos que necesitará. Añade un rectángulo para cada objeto que consta de una clase, atributos y operaciones. Dibuja las relaciones entre cada objeto, luego ejecute, asegurándose de revisar el diagrama a medida que lo implementa.

¿Dónde puedo crear un diagrama de clases?

La plantilla de diagrama de clase UML de Miro facilita la colaboración con sus compañeros de equipo en un diagrama de clase, incluso si algunos o todos vosotros trabajáis de forma remota.

Diagrama de clases UML

Comienza ahora mismo con esta plantilla.

Plantillas similares
UML Activity Diagram
Vista previa
Plantilla de diagrama de actividades UML
Flowchart Thumbnail
Vista previa
Plantilla de diagrama de flujo
double-bubble-map-thumb-web
Vista previa
Plantilla de mapa de doble burbuja
pedigree diagram template
Vista previa
Plantilla de diagrama de pedigrí
UML component diagram
Vista previa
Plantilla de diagrama de componentes UML
STAGE GATE PROCESS FLOWCHART -web
Vista previa
Plantilla de diagrama de flujo del proceso por etapas