REPUBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LA EDUCACION
INSTITUTO UNIVERSITARIO DE TECNOLOGIA
“ANTONIO RICAURTE”
DIAGRAMAS DE CLASE EN UML
Autor: Antonio Ramón
Marzo, 2025
El lenguaje unificado de modelado (UML) es el lenguaje de
modelado de sistemas de software más conocido en la actualidad,
creado para ser visual, especifico y completo en la implementación de
sistemas de software complejos. Uno de los diagramas empleados más
popular entre los ingenieros de software es el diagrama de clases. Este
diagrama se trata de la estructura de un sistema mostrando las clases,
atributos, operaciones (o métodos), y las relaciones entre los objetos,
con la facilidad de que sin importar el nivel de familiaridad con el
lenguaje UML pueda ser interpretado sin esfuerzos mayores.
Estos diagramas se utilizan usualmente en el desarrollo y análisis
de softwares tanto nuevos como existentes, aunque son de gran utilidad
para visualizar a profundidad y de manera detallada cualquier sistema
complejo.
Sus usos normalmente comprenden: la visualización de las clases
de un sistema y sus propiedades, analizar y mostrar las relaciones entre
las mismas, modelar los conceptos de una aplicación, comprobar
diferentes criterios del sistema que comprenden variantes e invariantes
de estado, condiciones previas o posteriores y restricciones del mismo
para verificar y validar el sistema del software y manera fácil y precisa.
Un diagrama de clases en UML estándar está compuesto de tres
partes:
Sección superior: Indica el nombre de la clase y es de extrema
necesidad ya sea que se este hablando de u clasificador o un objeto.
Sección central: alberga los atributos de la clase. Esta sección se
usa para describir las cualidades de la clase de una instancia especifica
de una clase.
Sección inferior: Contiene los métodos organizados en un formato
de lista con cada operación siendo dueña de su propia línea. Estas se
usan para describir las interacciones entre las clases y los datos.
Según el contexto, las clases de un diagrama representan los
objetos principales como se hace mención en la explicación anterior, y
en torno a estas giran todo el funcionamiento del diagrama. Para
entender mejor el funcionamiento de los diagramas de clase hay que
entender su composición más básica:
Clases: es una plantilla usada para crear objetos e implementar un
comportamiento en un sistema (haciendo uso de la herencia de
objetos). En UML, una clase representa un objeto o conjunto de objetos
que comparten una estructura y comportamiento comunes. Se
representan con un rectángulo que tiene filas con el nombre de la clase,
sus atributos y sus operaciones (como dato extra, al dibujar una clase
en un diagrama solo se debe completar la fila superior dejando las otras
de manera opcional).
Nombre: la primera fila en una figura de clase
Atributos: la segunda fila, cada atributo se ubica en una línea
separada.
Métodos: la tercera fila, conocidos como “operaciones”. Los
métodos se organizan en un formato de lista donde cada operación
ocupa su propia línea.
Señales: Aquellos símbolos que representan que tipo de
comunicaciones hay entre objetos que interaccionan entre ellos.
Paquetes: Figuras diseñadas para organizar clasificadores en un
diagrama. Se representa con una figura de un gran rectángulo con
pestañas.
Tipos de datos: Estos son clasificadores que definen el valor o los
valores de los datos. Los tipos de datos pueden modelar tanto
enumeraciones como tipos primitivos.
Interfaces: Una recopilación de firmas de operaciones o
definiciones de atributos que definen un conjunto uniforme de
comportamientos. Las interfaces son similares a una clase, a excepción
de que una clase puede tener una instancia de su tipo, y una interfaz
debe poseer, como mínimo, una clase para implementarse.
Enumeraciones: se refiere a un tipo de datos definidos por el
usuario. Estos incluyen un grupo de identificadores que representan
valores de enumeración.
Objetos: Instancias de una clase o clases. Los objetos se pueden
agregar a un diagrama de clases para representar instancias concretas.
Artefactos: Elementos modelo que representan las entidades
concretas en un software, como documentos, bases de datos, archivos
ejecutables, componentes de software, entre otros.
Como se hace mención antes una parte crucial entre los
componentes básicos de este tipo de diagramas son las interacciones
entre los objetos o clases, las cuales son las múltiples relaciones que
pueden existir entre ellas, algunas de las interacciones mas comunes
son las siguientes:
Herencia: Se refiere al proceso en el que una subclase o una
clase derivada recibe la funcionalidad de una clase principal. Se
simboliza con una línea de conexión recta con una punta de flecha
cerrada que señala a la clase superior.
Asociación bidireccional: es la relación predeterminada entre dos
clases. Ambas están conscientes una de la otra y de la relación que
tienen entre sí. Esta asociación se representa mediante una línea recta
entre dos clases.
Asociación unidireccional: Esta es una relación un poco menos
común entre dos clases. Una clase está consiente de la otra e
interactúa con ella. Esta asociación se representa con una línea recta
unidireccional que señala una punta de flecha abierta desde la clase
“knowing” a la clase “known”.
Para ejemplificar mejor la creación y los distintos componentes de
un diagrama de clases procederé a crear un diagrama en base a un
conductor y como este se relaciona con distintas clases.
Nuestras clases principal será la clase “Humano” y “Automóvil”, en
base a estas haremos nuestras primeras herencias y relaciones con
clases menores.
Ya definida nuestras clases principales podemos crear una sub
clase relacionada a ambos llamada “conductor” teniendo ya establecido
un pequeño diagrama de clases.
Para finalizar podemos decir que los diagramas de clases son muy
prácticos y fáciles de llevar tanto con lenguaje técnico como mas
simplificado, facilitan la visualización de la ruta de información y como
se relacionan los datos que necesitamos implementar en un sistema
funcional de manera abstracta para aquellos que son aficionados al
tema y al mismo tiempo lo suficientemente completo como para que los
profesionales puedan usarla con facilidad y a detalle.
Referencias:
Lucidchart: https://www.lucidchart.com/pages/es/tutorial-de-
diagrama-de-clases-uml
Miro: https://miro.com/es/diagrama/que-es-diagrama-clases-uml/
Wikipedia: https://es.wikipedia.org/wiki/Diagrama_de_clases