You are on page 1of 54

Modelo Entidad

Relacin E-R
Fuentes http://www-db.stanford.edu/~ullman/fcdb.html

http://wofford-ecs.org/DataAndVisualization/ermodel/index.htm
Fundamentals of Database Systems, Elmasri y Navathe

Modelos de Datos

Diseo aplicaciones bd: complejo


Herramientas conceptuales apoyo diseo bd
Ayuda entender y especificar componentes de
bd y relaciones
Modelos

Conceptuales (de alto nivel): cercano usuario

E-R

Fsicos: detalles almacenamiento


Lgicos: cercanos SGBD, implementacin

Relacional
Jerrquico
Red

Modelo de Datos
Herramienta conceptual para describir:
Datos (Estructura)
Constructores que definen estructura (grupos de elementos y
elementos)

Operaciones sobre datos


Restricciones sobre datos
Especificadas garantizar datos vlidos

Facilitan trnsito mundo real a estructuras para


almacenar en computador

Modelo de Datos E-R

Propuesto por Chen(1976)


Basado en conceptos
entidades
relaciones
Atributos

Propuestas de extensin

Propsito

Facilita diseo de esquemas de bd.


Incluye algunas restricciones
No incluye operaciones.

Diseo apoyado diagramas entidadrelacin


Conversin a diseo db relacional

ETAPAS DISEO
Realidad

ANALISIS DE
REQUERIMIENTOS
Requerimientos
DISEO CONCEPTUAL
Esquema Conceptual

DISEO LGICO

Esquema Lgico
DISEO FISICO
Esquema Fsico

(Tomada de Fundamentals of database Systems, Elmasri/Navathe)

Requerimientos
Funcionales

Mini Mundo

RECOLECCIN DE
REQUERIMIENTOS
Y ANALISIS

Datos de Requerimientos
ANALISIS FUNCIONAL

Alto-Nivel Transaccin
Especificacin
DBMS Independiente
DBMS Especfico
DISEO PROGRAMA
APLICACIN

IMPLEMENTACIN DE TRANSACCIONES

Programas Aplicacin

DISEO CONCEPTUAL

Esquema Conceptual (Modelo de


Datos en alto -nivel)

DISEO LGICO (DATA


MODEL MAPPING)
Esquema Lgico Conceptual
(En el Modelo de Datos de un
DBMS especifico)
DISEO FISICO

Esquema Interno

Etapas Diseo
Anlisis de requerimientos
Diseo conceptual
Diseo Lgico
Refinamiento de Esquema
Diseo Fsico
Diseo mecanismos de seguridad

Diseo Conceptual

Cules son las entidades y sus relaciones en la


organizacin?
Qu informacin sobre estas relaciones y
entidades se debe almacenar en la bd?
Cules reglas de negocio se deben asegurar?
Modelo E-R ayuda en esta tarea

Modelo E-R Bsico

Entidad
Objeto del mundo real
Cada entidad tiene una llave

Conjunto Entidad (Tipo)


Coleccin de entidades similares

Atributos
Valores describiendo propiedades de una entidad

Relaciones (Conjunto Relacin)


Conexiones entre dos o ms conjuntos entidad
Tienen nombres asociados (pueden ser bidireccionales)

Diagramas E-R

Entidades organizadas en conjuntos entidad


Conjuntos entidad: igual tipo
Atributo de entidad con valor nico: llave o clave
Llaves: simples o compuestas
Subrayadas (notacin)
Estado entidad: entidades almacenadas
(instancias)
Conjuntos entidad denotados por Entidad

Diagramas E-R

Atributos: propiedades entidades


Asociados con dominios
Conectados a conjuntos entidad
Simples o compuestos
Llave: atributo especial
Representados por
Atributo

Diagramas E-R

Entidades y atributos:
Conjunto Entidad = rectngulo.
Atributo = valos, conectados con lneas a su
conjunto entidad. Atmicos o compuestos (mltiples
componentes atmicos).
Nombre
Nombre

Fech-nac

Apellido

cdula
Fech_nac

Nom

Estudiante
Estudiante

cdula

Diagramas E-R

Atributos
Valores Atributo: dominio
Simples o multivaluados

Nombre

Promedio

cdula
Nombre

#crditos

Estudiante
Cdigo

Asignatura

Prerreq.

Relaciones

Una relacin conecta dos o ms entidades.


Grado de tipo relacin: nmero de tipos de
entidad que participan en ella
Puede tener atributos propios
El rol de una entidad en una relacin representa
su propsito en la relacin
Nombre de relacin con significado
Representadas por
relacin

Relaciones
miembro

Miembro de

Equipo de laboratorio

Equipos

Estudiante

Equipo de laboratorio

Lider
Lider de

Roles: miembro, lider, equipo lab.

Relaciones con atributos


Horario

Asignatura

Ofrece

Profesor

cdula

Aula

Nombre

categora

Cdigo

Nombre

Relaciones

Nombre asociado nico


Conectan conjuntos entidad: lneas
Grado: Nmero entidades participantes
Tipo de asociacin: 1-1, 1-m, m-n
Rol: Funcin que desempea
Implcito
Necesidad especificacin (reflexivas)

Conjunto Relacin

El valor actual de un conjunto entidad:


conjunto de entidades que pertenecen a esta.
Ejemplo: El conjunto de todas las pelculas en la
bd.

El valor de un conjunto relacin (tipo):


conjunto de tuplas (instancias de relacin) con
una componente por cada conjunto entidad
relacionado.

Ejemplo: Conjunto Relacin


Para cada relacin Miembro de, el conjunto
relacin podra ser:
Estudiante
Pedro
Juan
Luis
Jose
Mara

Equipo
P1
P3
P4
P2
P8

Relaciones Mltiples
Conectan ms de dos entidades

Asignatura

Ofrece

Aulas

Programa

Relaciones Recursivas

La misma entidad participa ms de una vez en


la relacin
Equipos de estudiantes jugando rol de
monitores de otros equipos y siendo
monitoreados por otros equipos.
Supervisa
Supervisin

Equipo
supervisado

Cardinalidad de las Relaciones

23

Relaciones Muchos-Muchos
En una relacin muchos-muchos, una entidad de
un conjunto se puede conectar a muchas
entidades de otro conjunto.
E.g., un estudiante matricula muchas asignaturas y
una asignatura es matriculada por muchos
estudiantes.
Estudiantes

Matricula

Asignaturas

Grficamente

muchos-muchos

Relaciones Muchos-uno

Algunas relaciones binarias son muchos -uno


(uno-muchos) entre dos entidades.
Cada entidad del primer conjunto est
conectado a lo sumo con una entidad del
segundo conjunto.
Pero, una entidad del segundo conjunto puede
estar conectada a cero, uno o muchas
entidades del primer conjunto.

Grficamente

muchos-uno

Ejemplo: Relacin muchos-uno

Un computador tiene asignado un solo espacio


Sin embargo, en un espacio puede haber varios
equipos

Espacios

n
EN

Equipos

Relaciones uno-uno

En una relacin uno-uno, cada entidad de alguno


de los conjuntos entidad est relacionada a lo
sumo con una entidad del otro conjunto entidad

Un equipo tiene a los sumo un estudiante lider y un


estudiante lider lidera a lo sumo un equipo
1
Estudiante

1
Lider de

Equipo

Grficamente

uno-uno

Relaciones no-binarias: ejemplos


(Tomada de Fundamentals of database Systems, Elmasri/Navathe)

Cantidad

Pnombre

PROVEEDOR

Parte_no

PROVEE

Nombre_proy

PROYECTO

PARTE

La relacin PROVEER

Relaciones no-binarias: ejemplos


(Tomada de Fundamentals of database Systems, Elmasri/Navathe)

Pnombre

PROVEEDOR

Nombre_proy
M

N
PROVEEN

PROYECTO

M
Parte_no
PUEDE_PROVEER

PARTE

USA
M

Tres relaciones binaras no equivalentes a PROVEE

Relaciones no-binarias: ejemplos


(Tomada de Fundamentals of database Systems, Elmasri/Navathe)

PROVEEDOR

Nombre_proy

Cantidad

Pnombre

N
SS

PROVEE

1
SPJ

N
SP
Parte_no
1
PARTE

PROVEE como un tipo de entidad dbil

PROYECTO

Entidades Dbiles

Conjuntos de Entidades Dbiles

Un conjunto entidad E se dice que es dbil si


para identificar sus instancias, de manera
nica, es necesario considerar la llave de otra
entidad.
El conjunto entidad propietaria(fuerte) y la
entidad dbil participan tipo de relacin muchosuno.
Representadas por
ED

E/R Diagramas
fecha-adqu

nmero

Ejemplar

nombre

isbn

autor

Libro

Dificultad escoger atributo como identificacin.

Conjunto Entidad Dbil

Un conjunto entidad dbil tiene una o ms


relaciones muchos-uno con otros conjuntos
entidad (propietarios).
Existencia dependiente de otra entidad
Necesidad de identificacin

Restricciones de Participacin

Participacin de entidades en relaciones son


parciales o totales (Lneas sencillas y dobles)
Fcil especificacin en relaciones binarias
Representacin de: exactamente uno, al menos
uno

Escuelas

Administra

Director

Atributos o entidades ?

Claves (Tardieu et al. 1979): Reglas de entidad


Tener existencia propia
Instancias de un conjunto entidad distinguibles unas
de otras
Instancias de un conjunto entidad con iguales
propiedades

Tcnicas de Diseo

Evita redundancia.
Uso de entidades dbiles limitado.
No usar un conjunto entidad cuando sea
atributo

Evitando redundancia

Redundancia = decir lo mismo de dos formas


diferentes
Ahorrar espacio y reducir inconsistencias.
Dos representaciones del mismo hecho se
vuelven inconsistente si se cambia una y se
olvida cambiar la otra.

Ejemplo: correcto
referencia

Equipos

nombre

Hecho-por

direcc

Fabricante

Este diseo da la direccin de cada


fabricante exactamente una vez.

Ejemplo: Incorrecto
referencia

Equipos

nombre

Hecho-por

direcc

Fabricante

fabricante

Este diseo define al fabricante de equipos dos veces:


como atributo y como una entidad relacionada.

Ejemplo: Incorrecto
nombre

fabric

dir-fabric

Equipos

Se repite a direccin del fabricante una vez por


cada equipo. Se puede perder la direccin si no
hay, temporalmente, equipos de un fabricante.

Notacin alterna (min,max) para


relaciones

Especificar mnimas y mximas instancias de


entidad e en conjunto entidad E que participan
en R
Por omisin min=0, max=n
min max, min 0, max 1
Refleja restricciones mundo real
Escuela con exactamente un director
Profesor en ms de un proyecto

Notacin alterna relaciones 1- n


(Tomada de Fundamentals of database Systems, Elmasri/Navathe)
1

Notacin E-R
(Tomada de Fundamentals of database Systems, Elmasri/Navathe)

Entidad, Entidad dbil


Relacin, Relacin dbil

Atributo, Atributo Llave, Multivaluado

...

E1

Participacin total de E2 in R

Atributo Compuesto, Derivado

E2

E1

N
R

Cardinalidad 1:N para E1:E2 in R

E2

Notacin E-R
(Tomada de Fundamentals of database Systems, Elmasri/Navathe)

(i)

N
1

(i)
(ii)
1

(ii)

(0,n)

(1,1)

(1,1)

(0,n)

(iii)
(iii)
(iv)
(iv)
(v)
(vi)

Representaciones de Relaciones de
Cardinalidad

(v)

1..1

0..n

Notaciones (Min. Max)

Otros conceptos de diseo


extendido

Relaciones IS-A

Indican relacin clase-subclase


Representadas mediante un tringulo
Nombre

Empleados

isa
Categoria

Profesores

Cdula

Relaciones IS-A: Notacin


(Tomada de Fundamentals of database Systems, Elmasri/Navathe)

S1

S2

S3
S1

S1

S2

S2

S3

S3

S1

S2

S3

E-R Extendido
(Tomada de Fundamentals of database Systems, Elmasri/Navathe)
Pnombre

Minit
Nombre

Apellido
ID

FechaNac

Direccin

EMPLEADO
d

d
Pago_escala

Velocidad_de_escritura

SECRETARIA

T_grado

TECNICO

Fin_carrera

INGENIERO

Salario

EMPLEADO_POR_HORAS

ADMINISTRADOR
EMPLEADO_ASALARIADO

GESTIONA

PERTENECE_A

PROYECTO

EQUIPO

Especializacin
(tomada de Fundamentals of database Systems, Elmasri/Navathe)

P_nombre

M_init

Nombre

Apellido

ID

Direccin

FechaNac

Tipo_trabajo

EMPLEADO
Tipo_trabajo

d
Secretaria

Velocidad_de_escritura

Ingeniero

Fin_carrera

T_grado
Tcnico

SECRETARIA

TECNICO

INGENIERO

Generalizacin
(Tomada de Fundamentals of database Systems, Elmasri/Navathe)
No_de_pasajeros

No_de_ejes

Max_velocidad
Tonelaje
Id_vehiculo

CARRO

Precio

Precio

CAMION

Id_vehiculo
No_de_Licencia

Id_vehiculo

No_de_Licencia
Precio

No_de_Licencia

VEHICULO

d
No_de_pasajeros

No_de_ejes

Max_velocidad
CARRO

CAMION

Tonelaje

You might also like