Está en la página 1de 30

Elementos de Bases

de Datos
DCIC – UNS
2020
#03 Vista Conceptual –
Modelo Entidad-Relación
Decisiones de Diseño
Mercedes Vitturini
mvitturi@cs.uns.edu.ar
Modelo Entidad-Relación - Repaso

Modelo Entidad Relación (MER) – es un modelo de datos de alto nivel


de abstracción que provee un entorno conceptual con reglas
semánticas conocidas donde especificar los requerimientos sobre el
diseño de los datos que satisfagan las necesidades para un problema o
dominio de aplicación.
• Modela la el dominio de aplicación como:
• Como una colección de entidades.
• Y relaciones entre las entidades.

4
Entidades y Relaciones

Entidad: es un objeto o concreto o abstracto que existe y se distingue de


otros objetos.
Conjunto Entidad – agrupación de entidades de un “mismo tipo” y
que comparten atributos.
Relación – es una asociación o vínculo semántico entre dos o más
entidades.
Conjunto Relación – conjunto de relaciones de un mismo tipo.

Nota: haciendo abuso del idioma se utilizan como sinónimo los términos entidad y conjunto
entidad así como relación y conjunto relación.

5
Conjunto Entidad

Sobre los conjuntos entidad


 Tienen un nombre único que debería ser representativo de los elementos
que agrupa
 Para describir las entidades se definen atributos.
 Las entidades que pertenecen a un mismo conjunto comparten los
atributos.
 Entre los atributos se distingue el/los atributo/s que sirven como clave o
llave. Un caso particular son los conjuntos entidad débil
 Existen conjuntos entidad fuerte y conjuntos entidad débil o subordinados.
 Rol: papel que una entidad juega en una relación.

6
Conjunto Relación

 Tienen un nombre único que debería ser representativo de los elementos


que agrupan. Puede ser el nombre de las entidades que vincula “CtaCli”
 Las relaciones pueden tener o no atributos propios.
 El grado de una relación se refiere al número de entidades que participan.
 Las relaciones tienen una cardinalidad: 1:1, m:1, 1:m ó m:n. La cardinalidad
restringe las relaciones válidas que forman parte del conjunto relación.
 Existen dos relaciones distinguidas
 La relación de herencia: IS-A
 La relación de agregación

7
Conceptos de IS
Diseño del Modelo de Datos
Diseñar el Modelo de Datos

El desarrollo de una aplicación que use una base de datos requiere


entre otras de las siguientes actividades relacionadas con los datos que
administre:
Diseñar el esquema de base de datos.
Diseñar los programas que acceden y actualizan los datos,
Diseñar el esquema de seguridad para controlar el acceso a los datos.

9
Primeras actividades de diseño

Se consulta a usuarios y expertos del dominio para que planteen sus


necesidades y restricciones:
REQUERIMIENTOS DEL SISTEMA
• Enfocar la atención hacia caracterizar los datos.
• El primer paso es construir el modelo conceptual.
• Identificar las entidades y sus relaciones, abstrayendo decisiones de
implementación o físicas.
• Dependiendo del problema, el modelo de datos puede ser más o menos
complejo.
• Los modelos reales suelen ser grandes y complejos!

10
Diseño del Modelo de Datos

Sobre el diseño del esquema de Base de Datos de un problema:


1. Se consulta a usuarios y expertos del dominio para que planteen sus
requerimientos y restricciones.
2. Enfocar la atención en caracterizar los datos.
3. Dependiendo del problema, el modelo de datos puede ser más o menos
complejo.
4. Un modelo se construye para iterar sobre él, analizarlo, discutir y corregir.
5. El modelo de datos debe ser tan general como para que no se requiera de
cambios frecuentes en el modelo.

11
Guía básica para construir un MER

1. Identificar las entidades y definir los conjuntos de entidades.


1. Identificar los atributos que describen las entidades.
2. Identificar las relaciones entre las entidades.
1. Identificar atributos asociados con las relaciones (si existen).
3. Analizar y definir la cardinalidad de las relaciones.
4. Identificar la oportunidad de usar los conceptos más avanzados
(entidades débiles, generalización-especialización, agregación).

12
Diseñando el MER

Algunas decisiones a tomar:


1. ¿un objeto real se representa como un atributo o una
entidad?
2. ¿un concepto del mundo real se expresa mediante un
conjunto entidad o un conjunto relación?
3. ¿usar una relación ternaria o un descomponerla en
pares de relaciones binarias?
4. ¿es conjunto entidad fuerte o se trata de un conjunto
entidad débil?
5. ¿conviene usar generalización-especialización?
6. ¿conviene usar agregación?
13
¿ Atributo o Entidad ?
Cuándo “un datos” constituyen un atributo o un conjunto entidad.
Depende del problema que se modele y sus requerimientos. Interviene:
• Relevancia de la información en el contexto del problema.
• Información adicional que acompaña al atributo.
• Si la información se vincula por relaciones con otras entidades.
Para discutir:
1. Una compañía tiene datos de departamentos y sus gerentes.
2. La localidad desde donde salen/arriban los viajes.
3. Las palabras claves para un libro.
4. El número de teléfono de un cliente.
5. El número de teléfono de una guía on-line.
14
Ejemplo
Fecha_primer_edicion
ISBN título Algunas razones para modelar a AUTOR
como entidad:
Libros 1. Se desea mantener información
propia de cada autor (nombre,
apellido, fecha nacimiento)
2. Se desea “filtrar” o “buscar”
libAut información por autor. i.e “¿Libros
Id_autor escritos por Cortázar?”
3. Se desea expandir el modelo y
Autores vincular Autor con una entidad
PREMIO
nombre fecha_nac
apellido

15
¿Conjunto Entidad o Conjunto Relación?

¿Entidad o relación?
No siempre es claro si es mejor expresar un objeto del mundo a
modelar como un conjunto entidad o como un conjunto relación.

• Cuestiones para considerar:


• Cantidad y calidad de los atributos propios de la relación.
• Nivel de abstracción del modelo.
• Qué representa mejor semánticamente el problema.

16
Entidad o Relación
Clientes
Clientes

Nro-Factura comprador
Fecha-Venta
compra Nro-Factura Tipo-Factura

Tipo-Factura Total
Facturas
Artículos Fecha-Venta
Total
detalle

Obs: por simplicidad no se incluyeron


atributos en las entidades ARTÍCULOS y
CLIENTES Artículos

17
¿Relaciones ternarias o binarias ?

• Algunas relaciones que parecen mejor representadas como relaciones


ternarias que binarias.
• Elegir la representación que modelo mejor la semántica del problema.
• Siempre se puede encontrar una representación usando relaciones
binarias para las relaciones ternarias. Depende del gusto del diseñador
• Validar que el diseño represente los requerimientos del problema!

18
Vs: Relaciones Binarias
domicilio
Nombre Apellido

Cod-Materia Nombre
Alumnos
Materias Nro-Legajo

inscribe

matPL aluPL

cuatrimestre
PeriodosLectivos
año Fecha-Inicio

19
Relaciones Ternaria – Ejemplo
Nombre domicilio
Apellido

Nombre
Materias Alumnos
Nro-Registro
Cod-Materia

Se-inscribe

cuatrimestre
PeriodosLectivos
año Fecha-Inicio

20
Problemas con Relaciones no binarias

nombre-alum fecha
apellido-alum temas

Id-parcial
Alumnos Parciales

nro-registro ¿Es correcta la


definición de la
alu-rinde relación alu-
rinde (rinde
Fecha /entrega)?

Proyectos
Id-proyecto descripción

21
Binarias vs. Ternaria

Nombre-alum
Apellido-alum Fecha-parcial
temas

Alumnos Id-parcial Parciales

Nro-registro
alu-rinde

Fecha-rinde

alu-presenta
Proyectos
Id-proyecto descripcion
Fecha-entrega

22
Uso de Agregados

Teléfono
Nombre-Médico
Nro-Medico Domicilio

Médicos consulta Pacientes


Fecha-Atención Nombre Nro-Paciente

indica Valores-normales

Nombre-análisis
Análisis Nro-analisis

23
Ejemplos y variantes
gráficas
Algunos estilos de notación
Ejemplos Simples – Representación Gráfica

“DataBase System Concepts” – A. Silberschatz

25
Ejemplo - ISA

“DataBase System
Concepts” – A. Silberschatz

26
Ejemplos Simples

Uso de Roles

Entidad Fuerte – Entidad Débil

“Database System Concepts” – A. Silberschatz

27
Ejemplos Simples

Cardinalidad
en EBD

“Database System Concepts” – A. Silberschatz

28
Ejemplos Simples

“Database System – The Complete Book” – García


Molina, Ullman, Widom

29
Ejemplos Simples

“Database System – The Complete Book” –


Molina, Ullman, Widom

30
Temas de la clase de hoy

• El Modelo Entidad Relación


• Decisiones conceptuales de diseño
• Representación gráfica: Diagrama Entidad Relación

Bibliografía:
• “DataBase System Concepts” – Abraham Silberschatz – Capítulo 6 (edición 5) y
7(edición 6).

31

También podría gustarte