Saltar al contenido

El modelo entidad-relación

Las piezas del modelo de Chen: entidad, atributo, dominio y relación, con el grado, el rol, el tipo de correspondencia y la cardinalidad mínima y máxima.

Entidad, tipo de entidad, atributo y dominio

El modelo entidad-relación lo propuso Peter Chen y es la herramienta habitual del análisis conceptual: sirve para capturar los requisitos de información y dibujar la estructura de los datos antes de decidir en qué gestor van a vivir.

Un tipo de entidad es una categoría de cosas del mundo real sobre las que hay que guardar información: alumno, curso, tema, intento. Una entidad es un ejemplar concreto de esa categoría: el alumno con documento 12345678Z. La relación entre los dos términos es la misma que hay en programación entre una clase y un objeto, y por eso en el habla corriente se dice «entidad» para las dos cosas.

Un atributo es cada dato que se guarda de una entidad: el nombre del alumno, la fecha de su último intento, el número de preguntas de un tema. Y el dominio de un atributo es el conjunto de valores que ese atributo puede tomar: el dominio de «nivel de un tema» es {1, 2, 3} y el de «porcentaje de aciertos» son los números entre 0 y 100.

El tipo de entidad es la plantilla y la entidad es el ejemplar. El dominio no es el valor de un atributo: es el conjunto de valores que ese atributo tiene permitido tomar.

Para el examen

  • Autor del modelo E/R: Peter Chen

  • Tipo de entidad frente a entidad: plantilla frente a ejemplar

  • Dominio: conjunto de valores permitidos de un atributo, no su valor actual

Tipos de atributo en la notación E/R

No todos los atributos se comportan igual, y la notación gráfica del modelo distingue varias clases. Lo que se pregunta no es el dibujo, sino saber a qué clase pertenece un atributo dado.

Tipo de atributoQué significaEjemplo
Simple o atómicoNo se puede descomponer en partes con significado propioEl nivel de un tema
CompuestoSe descompone en varios atributos con sentido por separadoEl periodo de una suscripción, que se abre en fecha de inicio y fecha de fin
MultivaloradoUn mismo ejemplar puede tener varios valores a la vezLos teléfonos de contacto de un alumno
Derivado o calculadoNo se almacena porque se obtiene a partir de otrosEl porcentaje de aciertos, que sale de los aciertos y del total de preguntas
Identificador o claveSu valor distingue a un ejemplar de todos los demásEl documento de identidad del alumno
Clave parcial o discriminanteDistingue los ejemplares de una entidad débil, pero solo dentro de su entidad fuerteEl número de orden de un intento dentro de un mismo test

Los tipos de entidad también se distinguen gráficamente entre fuertes y débiles, y una relación de jerarquía se dibuja con un símbolo propio. Todo eso se explica en el subtema siguiente, que es donde tiene consecuencias.

Para el examen

  • Compuesto: se descompone en otros

  • Multivalorado: admite varios valores a la vez

  • Derivado: se calcula y no se almacena

  • Clave parcial o discriminante: solo distingue dentro de la entidad fuerte

La relación: grado, rol y atributos propios

Una relación (o interrelación) es una asociación con significado entre tipos de entidad: un alumno se matricula en un curso, un intento pertenece a un test. Es el segundo elemento fundamental del modelo y el que da nombre al método.

El grado de una relación es cuántos tipos de entidad participan en ella. Nombrar bien el grado es una pregunta habitual y no tiene misterio, pero se confunde con la cardinalidad.

GradoNombreEjemplo
1Unaria o reflexivaUn tema es prerrequisito de otro tema
2BinariaUn alumno se matricula en un curso
3TernariaUn alumno falla una pregunta en un intento concreto
4CuaternariaCuatro tipos de entidad a la vez
5 o másN-aria, sin nombre propioPoco frecuentes y casi siempre señal de que falta descomponer

El rol es el papel que desempeña cada tipo de entidad dentro de la relación. Se escribe como un texto junto al extremo correspondiente y es imprescindible en las relaciones reflexivas, donde el mismo tipo de entidad aparece dos veces: sin los roles «es prerrequisito de» y «tiene como prerrequisito» el diagrama no se puede leer.

Una relación también puede tener atributos propios, que no pertenecen a ninguna de las entidades que enlaza sino al hecho de que estén relacionadas. La fecha en que un alumno se matriculó en un curso no es un dato del alumno ni del curso: es un dato de la matriculación.

Grado es cuántos tipos de entidad participan. Cardinalidad es cuántas ocurrencias se asocian. Son dos preguntas distintas sobre la misma relación.

Para el examen

  • Grado de una relación: cuántos tipos de entidad participan: unaria, binaria, ternaria…

  • Rol: obligatorio en las relaciones reflexivas

  • Atributos propios: una relación puede tenerlos: la fecha de matriculación

Cardinalidad, tipo de correspondencia y la etiqueta (mín, máx)

La cardinalidad de una relación expresa cuántas ocurrencias de un extremo se asocian con una ocurrencia del otro extremo. De ahí sale el tipo de correspondencia, que resume la relación con las máximas de los dos lados: uno a uno (1:1), uno a muchos (1:N) o muchos a muchos (N:M).

  • 1:1. Un alumno tiene una suscripción activa y una suscripción activa pertenece a un alumno.
  • 1:N. Un curso agrupa muchos temas, pero cada tema pertenece a un solo curso.
  • N:M. Un alumno realiza muchos intentos de test y un test lo intentan muchos alumnos.

El tipo de correspondencia se queda corto porque solo recoge los máximos y no dice si la participación es obligatoria. Para eso se usa la etiqueta de cardinalidad mínima y máxima, escrita como un par (mín, máx). La mínima vale 0 cuando la participación es opcional y 1 cuando es obligatoria; la máxima vale 1 o n. Combinando ambas se obtienen las cuatro etiquetas posibles: (0,1), (1,1), (0,n) y (1,n).

La pregunta que resuelve la etiqueta es siempre la misma: tomada una ocurrencia de una entidad, ¿con cuántas ocurrencias de la otra puede estar asociada como mínimo y como máximo? Si un alumno puede no haber hecho ningún intento y puede haber hecho muchos, la respuesta para el alumno es (0,n). Si todo intento pertenece obligatoriamente a un solo alumno, la respuesta para el intento es (1,1).

Cuidado con dónde se dibuja la etiqueta, porque hay dos convenciones en circulación. En la más extendida en el material de oposiciones español, el par va junto a la entidad cuya participación describe. En otra convención igual de válida, muy usada cuando se etiquetan correspondencias 1:N, el par se escribe en el extremo contrario. En el examen, lo seguro es leer qué pregunta responde el diagrama en lugar de fiarse de la posición: si la etiqueta dice (1,n) y al otro lado dice (1,1), la relación es uno a muchos, esté escrita donde esté.

El tipo de correspondencia solo mira las máximas. La etiqueta (mín, máx) añade la información que de verdad decide el diseño: si participar es obligatorio u opcional.

Para el examen

  • De dónde sale el tipo de correspondencia: solo de las cardinalidades MÁXIMAS

  • Qué aporta la mínima: la obligatoriedad: 0 opcional, 1 obligatoria

  • Las cuatro etiquetas posibles: (0,1), (1,1), (0,n) y (1,n)

La notación de pata de gallo

Además de la notación de Chen existe la notación de pata de gallo (crow’s foot), que es la que traen casi todas las herramientas de diseño actuales. Dice exactamente lo mismo, pero en lugar de escribir números dibuja símbolos en los extremos de la línea que une las dos entidades.

Cada extremo lleva dos marcas: la de más cerca de la entidad indica el máximo y la de detrás indica el mínimo. Un trazo perpendicular significa uno, una horquilla de tres puntas (la pata de gallo, que es lo que da nombre a la notación) significa muchos y un círculo significa cero.

Equivale aMínimoMáximoSe lee
(0,1)CírculoTrazoCero o uno: opcional y a lo sumo uno
(1,1)TrazoTrazoExactamente uno: obligatorio y único
(0,n)CírculoPata de galloCero o muchos: opcional y sin tope
(1,n)TrazoPata de galloUno o muchos: obligatorio y sin tope

La ventaja práctica de esta notación es que se lee de un vistazo si la participación es obligatoria, algo que en un diagrama de Chen con muchas etiquetas numéricas cuesta más ver.

Para el examen

  • Trazo: uno

  • Horquilla: muchos

  • Círculo: cero

  • Cómo se lee: la marca pegada a la entidad es el máximo; la de detrás, el mínimo