Inicio
PORTADA
CARDINALIDAD Y PARTICIPACIÓN
Autor: Miguel Orquera
CARDINALIDAD Y PARTICIPACIÓN
Autor: Miguel Orquera
Para comprender los expuesto en este objeto de aprendizaje se debe tener conocimientos de Programación Orientada a Objetos y nociones básicas de diseño de bases de datos.
Explicar las formas en las que se pueden relacionar dos conjuntos de entidades en un ambiente de base de datos.
Estos conceptos se deben tener muy claros cuando se va a diseñar una base datos. La cardinalidad y la participación con la que los conjuntos de entidades se relacionan en el modelo conceptual determinan la forma en la que se representará dicha relación en el modelo lógico y físico de la base de datos.
El modelo entidad relación o modelo conceptual es la fase inicial y la mas importante del diseño de una base de datos, puesto que, una vez que se tiene el modelo conceptual, los procesos siguientes del diseño pueden realizarse en forma automática con la ayuda de un CASE (Computer Aided Software Enginering).
El modelo conceptual representa al mundo real como conjuntos de entidades, de las que se almacena un grupo de propiedades o atributos, y las relaciones entre esos conjuntos de entidades.
Una entidad es un objeto material o conceptual cuyas características se determinan a través de un conjunto de propiedades o atributos. Por ejemplo, un estudiante cuya cédula de identidad es 1701234567, y cuyo nombre es Carlos Fuentes, es una entidad; de igual manera, un préstamo con código P1897 y cantidad 4000 es una entidad conceptual.
Un conjunto de entidades es un grupo de entidades del mismo tipo, que comparten los mismos atributos. El conjunto de todos los estudiantes de una universidad puede ser definido como el conjunto de entidades ESTUDIANTES, y el conjunto de todos los préstamos de un banco puede definirse como el conjunto de entidades PRESTAMOS.
En el gráfico, se observa este concepto aplicado al conjunto de entidades PERSONAS.
Una relación es una asociación entre varias entidades. Por ejemplo, se puede definir la relación entre la persona cuyo nombre es Pedro y su profesión que es Médico.
Un conjunto de relaciones es un conjunto de asociaciones del mismo tipo. Por ejemplo, entre el conjunto de entidades PERSONAS y el conjunto de entidades PROFESIONES hay un conjunto de relaciones que le llamaremos TRABAJA, que indica la profesión en la que trabaja cada persona. Expresando este conjunto de relaciones en forma gráfica:
Representación gráfica
El modelo conceptual de una base de datos se representa en forma gráfica mediante el diagrama entidad relación o diagrama ER, en donde los conjuntos de entidades se representan por rectángulos y los conjuntos de relaciones se representan por rombos. Así, el ejemplo anterior se representa de la siguiente manera:
Tipos de relaciones
Relaciones recursivas se producen cuando se relacionan entre elementos de un mismo conjunto de entidades. Por ejemplo, en una base de datos académica, cada materia tiene sus materias de prerrequisito. Este aspecto se representa de la siguiente manera:
Relaciones binarias, se producen cuando se relacionan entre dos conjuntos de entidades, siendo el tipo de relación mas común. Por ejemplo, si cada profesor imparte varias materias, en una base de datos académica la relación se representa de las siguiente manera:
Relaciones n-arias, se producen cuando se relacionan mas de dos conjuntos de entidades. Por ejemplo, si cada profesor imparte varias materias según el periodo académico, se representa de la siguiente manera:
La cardinalidad es un aspecto que se puede apreciar y es muy útil en relaciones recursivas y binarias, y es el número de elementos de un conjunto de entidades que puede relacionarse con un elemento de otra conjunto de entidades.
La participación de un conjunto de relaciones en una relación es total o parcial. Es total si todos los elementos de un conjunto de entidades deben obligatoriamente relacionarse con elementos del otro conjunto de entidades, y es parcial cuando existen elementos de un conjunto de entidades que no participan en la relación. A continuación se presentan los casos de cardinalidad que existen, valiéndose de ejemplos.
Cardinalidad Uno a Uno, es cuando un elemento del primer conjunto de entidades solo puede relacionarse con un elemento del segundo conjunto de entidades, y un elemento del segundo conjunto de entidades solo puede relacionarse con un elemento de primer conjunto de relaciones. Por ejemplo, si se tiene un conjunto de Maridos y un conjunto de sus Esposas, y se tiene la relación "ESTÁ CASADO CON", la cardinalidad será uno a uno porque cada marido se relacionará con una sola esposa y viceversa. Además, la participación de los dos conjuntos de entidades será total en la relación. Representando esto en un diagrama ER:
Cardinalidad Uno a Varios, es cuando un elemento del primer conjunto de entidades puede relacionarse con varios elementos del segundo conjunto de entidades, y un elemento del segundo conjunto de entidades solo puede relacionarse con un elemento de primer conjunto de relaciones. Por ejemplo, si se tiene un conjunto de Hombres y un conjunto de Personas, y se tiene la relación "ES PADRE DE", la cardinalidad será uno a varios porque cada hombre puede tener varios hijos pero cada persona solo tiene un padre. La participación del conjunto de entidades Hombres es parcial porque hay hombres que no tienen hijos, en cambio la participación de Personas será total porque todas las personas tiene un padre. Representando esto en un diagrama ER:
Cardinalidad Varios a Varios, es cuando un elemento del primer conjunto de entidades puede relacionarse con varios elementos del segundo conjunto de entidades, y un elemento del segundo conjunto de entidades puede relacionarse también con varios elementos de primer conjunto de relaciones. Por ejemplo, volviendo a la base de datos académica, si se tiene un conjunto de Estudiantesy un conjunto de Materias, y se tiene la relación "CURSA", la cardinalidad será varios a varios porque cada estudiante puede cursar varias materias y cada materia puede ser cursada por varios estudiantes. La participación del conjunto de entidades Estudiantes es total porque todos los estudiantes deben cursar al menos una materia, en cambio la participación de Materias es parcial porque puede haber materias que no se imparten porque no hay suficientes estudiantes matriculados. Representando esto en un diagrama ER:
Un modelo entidad-relación o diagrama entidad-relación (a veces denominado por sus siglas en inglés, E-R "Entity relationship"; en español DER: "Diagrama de Entidad-Relación") es una herramienta para el modelado de datos que permite representar las entidades relevantes de un sistema de información así como sus interrelaciones y propiedades.
El Modelo Entidad-Relación
El modelado de datos no acaba con el uso de esta técnica. Son necesarias otras técnicas para lograr un modelo directamente implementable en una base de datos. Brevemente:
permite mostrar resultados entre otras entidades pertenecientes a las existentes de manera que se encuentre la normatividad de archivos que se almacenarán
El modelo de datos entidad-relación está basado en una percepción del mundo real que consta de una colección de objetos básicos, llamados entidades, y de relaciones entre esos objetos.
Representa una “cosa”, "objeto" o "concepto" del mundo real con existencia independiente, es decir, se diferencia únicamente de otro objeto o cosa, incluso siendo del mismo tipo, o una misma entidad.
Algunos Ejemplos:
Una entidad puede ser un objeto con existencia física como: una persona, un animal, una casa, etc. (entidad concreta); o un objeto con existencia conceptual como: un puesto de trabajo, una asignatura de clases, un nombre, etc. (entidad abstracta).
Una entidad está descrita y se representa por sus características o atributos. Por ejemplo, la entidad Persona las características: Nombre, Apellido, Género, Estatura, Peso, Fecha de nacimiento.
Los atributos son las características que definen o identifican a una entidad. Estas pueden ser muchas, y el diseñador solo utiliza o implementa las que considere más relevantes.
En un conjunto de entidades del mismo tipo, cada entidad tiene valores específicos asignados para cada uno de sus atributos, de esta forma, es posible su identificación unívoca.
Ejemplos:
A la colección de entidades «alumnos», con el siguiente conjunto de atributos en común, (id, nombre, edad, semestre), pertenecen las entidades:
Cada una de las entidades pertenecientes a este conjunto se diferencia de las demás por el valor de sus atributos. Nótese que dos o más entidades diferentes pueden tener los mismos valores para algunos de sus atributos, pero nunca para todos.
En particular, los atributos identificativos son aquellos que permiten diferenciar a una instancia de la entidad de otra distinta. Por ejemplo, el atributo identificativo que distingue a un alumno de otro es su número de id.
Para cada atributo, existe un dominio del mismo, este hace referencia al tipo de datos que será almacenado a restricciones en los valores que el atributo puede tomar (cadenas de caracteres, números, solo dos letras, solo números mayores que cero, solo números enteros...).
Cuando algún atributo correspondiente a una entidad no tiene un valor determinado, recibe el valor nulo, bien sea porque no se conoce, porque no existe o porque no se sabe nada al respecto del mismo.
Consiste en una colección, o conjunto, de relaciones de la misma naturaleza.
Ejemplo:
Dados los conjuntos de entidades "Habitación" y "Huésped", todas las relaciones de la forma habitación-huésped, permiten obtener la información de los huéspedes y sus respectivas habitaciones.
La dependencia o asociación entre los conjuntos de entidades es llamada participación. En el ejemplo anterior los conjuntos de entidades "Habitación" y "Huésped" participan en el conjunto de relaciones habitación-huésped.
Se llama grado del conjunto de relaciones a la cantidad de conjuntos de entidades participantes en la relación.
Son reglas que deben respetar las entidades y relaciones almacenadas en la base de datos.
Dado un conjunto de relaciones en el que participan dos o más conjuntos de entidades, la correspondencia de cardinalidad indica el número de entidades con las que puede estar relacionada una entidad dada.
Dado un conjunto de relaciones binarias y los conjuntos de entidades A y B, la correspondencia de cardinalidades puede ser:
Dado un conjunto de relaciones R en el cual participa un conjunto de entidades A, dicha participación puede ser de dos tipos:
Es un subconjunto del conjunto de atributos comunes en una colección de entidades, que permite identificar inequívocamente cada una de las entidades pertenecientes a dicha colección. Asimismo, permiten distinguir entre sí las relaciones de un conjunto de relaciones.
Dentro de los conjuntos de entidades existen los siguientes tipos de claves:
Los valores de los atributos de una clave, no pueden ser todos iguales para dos o más instancias.
Para poder distinguir unívocamente las relaciones en un conjunto de relaciones R, se deben considerar dos casos:
Si el conjunto de relaciones, R, sobre las que se pretende determinar la clave primaria está compuesto de relaciones binarias, con los conjuntos de entidades participantes A y B, se consideran los siguientes casos, según sus cardinalidades:
Anteriormente detallamos los conceptos relacionados al modelo ER, en esta sección profundizaremos en como representarlos gráficamente. Cabe destacar que para todo proceso de modelado, siempre hay que tener en claro los conceptos, estos nos brindan conocimiento necesario y además fundamentan nuestro modelo al momento de presentarlo a terceros.
Formalmente, los diagramas ER son un lenguaje gráfico para describir conceptos. Informalmente, son simples dibujos o gráficos que describen información que trata un sistema de información y el software que lo automatiza.
Las entidades son el fundamento del modelo entidad relación. Podemos adoptar como definición de entidad cualquier cosa o parte del mundo que es distinguible del resto. Por ejemplo, en un sistema bancario, las personas y las cuentas bancarias se podrían interpretar como entidades. Las entidades pueden representar entes concretos, como una persona o un avión, o abstractas, como por ejemplo un préstamo o una reserva. Se representan por medio de un rectángulo. que pueden ser de tipo: maestras, transaccionales, históricas y temporales
Se representan mediante un círculo o elipse etiquetado mediante un nombre en su interior. Cuando un atributo es identificativo de la entidad se suele subrayar dicha etiqueta.
Por motivos de legibilidad, los atributos suelen no aparecer representados en el diagrama entidad-relación, sino descritos textualmente en otros documentos adjuntos.
Describe cierta dependencia entre entidades o permite la asociación de las mismas.
Por ejemplo:
Los diagramas Entidad-Relación no cumplen su propósito con eficacia debido a que tienen limitaciones semánticas. Por ese motivo se suelen utilizar los diagramas Entidad-Relación extendidos que incorporan algunos elementos más al lenguaje:
Cuando una entidad participa en una relación puede adquirir un papel fuerte o débil. Una entidad débil es aquella que no puede existir sin participar en la relación; es decir, aquella que no puede ser unívocamente identificada solamente por sus atributos.
Una entidad fuerte (también conocida como entidad regular) es aquella que sí puede ser identificada unívocamente. En los casos en que se requiera, se puede dar que una entidad fuerte "preste" algunos de sus atributos a una entidad débil para que esta última se pueda identificar.
Las entidades débiles se representan mediante un doble rectángulo; es decir, un rectángulo con doble línea.
Se puede hablar de la existencia de 2 tipos de dependencias en las entidades débiles:
Cardinalidad es el número de entidades con la cual otra entidad puede asociar mediante una relación binaria; la cardinalidad puede ser: Uno a uno, uno a muchos ó muchos a uno y muchos a muchos. El tipo de cardinalidad se representa mediante una etiqueta en el exterior de la relación, respectivamente: "1:1", "1:N" y "N:M", aunque la notación depende del lenguaje utilizado, la que más se usa actualmente es el unificado. Otra forma de expresar la cardinalidad es situando un símbolo cerca de la línea que conecta una entidad con una relación:
Ejemplos de relaciones que expresan cardinalidad:
Las relaciones también pueden tener atributos asociados. Se representan igual que los atributos de las entidades. Un ejemplo típico son las relaciones de tipo "histórico" donde debe constar una fecha o una hora. Por ejemplo, supongamos que es necesario hacer constar la fecha de emisión de una factura a un cliente, y que es posible emitir duplicados de la factura (con distinta fecha). En tal caso, el atributo "Fecha de emisión" de la factura debería colocarse en la relación "se emite".
La herencia es un intento de adaptación de estos diagramas al paradigma orientado a objetos. La herencia es un tipo de relación entre una entidad "padre" y una entidad "hijo". La entidad "hijo" hereda todos los atributos y relaciones de la entidad "padre". Por tanto, no necesitan ser representadas dos veces en el diagrama. La relación de herencia se representa mediante un triángulo invertido interconectado por líneas a las entidades. La entidad conectada por la parte superior del triángulo es la entidad "padre". Solamente puede existir una entidad "padre" (herencia simple). Las entidades "hijo" se conectan por la parte inferior del triángulo.
Es un tipo de relación dinámica, donde el tiempo de vida de una o mas entidades de bajo nivel que están incluidas en una entidad de alto nivel es independiente a la entidad que la incluye(entidad de alto nivel).
Es una abstracción a través de la cual las relaciones se tratan como entidades de un nivel más alto. Se utiliza para expresar relaciones entre relaciones o entre entidades y relaciones. Se representa englobando la relación abstraída y las entidades que participan en ella en un rectángulo. En la figura se muestra un ejemplo de agregación en el que se representa la situación en la que un profesor, cuando está impartiendo una clase, puede poner una incidencia ocurrida a lo largo de ésta (se fue la luz, falta la configuración de un determinado software, etc.).
Se quiere diseñar una base de datos para registrar el préstamo de libros a usuarios en una biblioteca. Realizar el diagrama ER definiendo los conjuntos de entidades y sus relaciones, incluyendo la cardinalidad y participación.
Primeramente determinar los conjuntos de entidades que intervienen, tomando en cuenta que los objetos de los que se debe registrar información. No se piden los atributos por lo que solamente se deben dibujar los rectángulos que representan a cada conjunto de entidades y las relaciones, que se representarán como rombos. Los nombres de los conjuntos de entidades son sustantivos, en cambio, los conjuntos de relaciones son verbos.
Responda si es verdadera o falsa la siguiente afirmación:
Verdadero
Los nombres de los conjuntos de entidades son sustantivos pues son objetos de los que se debe almacenar información. En cambio, los nombres de los conjuntos de relaciones son verbos porque expresan laforma de interrelación.
Lea y complete
Una relación binaria entre tres conjuntos de entidades es muy común en el modelamiento conceptual de bases de datos
Falso
No existen relaciones binarias entre tres conjuntos de entidades.
Obra publicada con Licencia Creative Commons Reconocimiento Compartir igual 4.0