UML: ¿Cúal es la diferencia entre CD y ERD?

August 21, 2023

Contexto e Introducción

Guayahack

Bueno, me gustaría agradecer a Jayson Salazar que ha creado esta comunidad y por permitir compartir el conocimiento de él y otros usuarios más experimentados para apoyarnos a mejorar nuestras habilidades a nosotros, los amateurs/aficionados de la industria.

Hace poco me salió la duda sobre la diferencia entre diagrama de clases y diagrama entidad relación, la verdad es que son muy similares al menos en forma.


¿Por qué la necesidad de los de diagramas en el desarrollo?

En primer término, los diagramas en el desarrollo son sumamente fundamentales al ejecutar proyectos, dado que nos sirven para simplificar y dividir procedimientos complejos en componentes mínimos debido a su formato gráfico. Una de las necesidades de los desarrolladores para realizar bosquejos y diagramas es poder encontrar problemas en una etapa inicial y no en producción, por ende éstos apoyan el mejoramiento de la calidad del software y el uso de buenas prácticas.

¿Qué es UML?

Bueno, UML (Unified Language Model-Lenguaje unificado de modelado) es un lenguaje de modelado que sirve para visualizar, diseñar y documentar el software con sus respectivos procesos. Yo lo veo como una herramienta gráfica que ayuda a los desarrolladores a hacerle seguimiento a estructuras y el comportamiento de sistemas complejos.

Un ejemplo:

UML diagram example

Éste tutorial es muy recomendable:

¿Qué diagramas hay y cuál utilizar para cada caso en concreto?

MER-ERM (Modelo Entidad Relación o Entity Relationship Model)

Es un modelo visual que muestra las entidades (Persona, empresa, usuario, banco, etc.), atributos (documento, tipo de documento, nombre, dirección, teléfono, correo, etc.), relación y proporción de relación (1-1, 1-muchos, muchos-1, muchos-muchos, herencia, polimorfismo, etc.) entre diferentes elementos.

Cuándo usarlo: El MER se utiliza en la fase inicial del diseño de bases de datos para identificar y modelar las entidades, atributos y relaciones entre ellas.

ERM diagram example

DER-ERD (Diagrama entidad relación-Entity relationship diagram)

El diagrama entidad relación es una representación gráfica del Modelo de Entidad-Relación que muestra las entidades del sistema y sus relaciones internas. Su finalidad es mostrar de manera gráfica cómo las entidades se relacionan entre sí en un sistema o contexto determinado. La entidad puede considerarse como un sustantivo y la relación como un verbo.

Los DER son útiles para planificar y comunicar cómo se organizarán y relacionarán los datos en una base de datos antes de su implementación.

Cuándo usarlo: El DER se crea a partir del MER y se utiliza para representar gráficamente las entidades, atributos, relaciones y cardinalidades (ejemplo: 1:N) en una base de datos.

DER diagram example

¿Qué es un diagrama de clases?

Es una representación visual en la que se muestran las clases de objetos, así como sus atributos, métodos (Comportamiento) y las relaciones entre ellas. Es esencial ya que muestra la estructura y comportamientos posibles de un sistema al modelar las características que componen un CD.

Es útil para diseñar la arquitectura y las interacciones entre los componentes (Clases)

DC-CD (Diagrama de clases-Class diagram)

El diagrama de clase se utiliza para representar visualmente las clases, sus atributos, métodos y sus relaciones. Ayuda a entender la estructura del sistema, el comportamiento entre las clases (entidades) y como se organizan los datos.

Cuándo usarlo: El Diagrama de Clases se utiliza en la programación orientada a objetos para representar las clases, sus atributos y relaciones en un sistema de software.

CD diagram example


Bibliografia

  1. UML Diagrams Full Course (Unified Modeling Language) - YouTube
  2. Modelo entidad-relación - Wikipedia, la enciclopedia libre
  3. ¿Qué es un Diagrama de entidad relación (DER)?
  4. ¿Qué es un diagrama entidad-relación? - Lucidchart
  5. Diagrama de clases - Wikipedia, la enciclopedia libre