Upload
john-alava-torres
View
366
Download
2
Embed Size (px)
Citation preview
Modelo Entidad-Relación
BASE DE DATOS
Base de Datos
Modelo entidad Relación
1 INTRODUCCIÓN
En general, las técnicas de modelaje, han sido siempre
aceptadas por ingenieros, científicos y artistas como una
herramienta para:
o Presentar ideas,
o Ayudar a la comprensión de los problemas,
o Contemplar detalles y
o Predecir nuevas formas para realizar las cosas.
La percepción del mundo real que cada uno de nosotros
posee en su cerebro es por si mismo un modelo, el cual lo
utilizamos de diversas maneras para entender la realidad;
Base de Datos
Modelo entidad Relación
1 INTRODUCCIÓN
El inconveniente más grande que tiene éste modelo cerebral
es la dificultad que presenta para ser comunicado y
entendido por el resto de personas.
Las buenas técnicas de modelaje son soportadas por
estándares rigurosos, reglas y convenciones necesarias
para eliminar malos entendidos y ambigüedad.
Base de Datos
Modelo entidad Relación
1 INTRODUCCIÓN
En particular, el modelaje Entidad-Relación es una técnica que
sirve para definir las necesidades de información de la
organización.
Esto es:
o Qué realiza la organización,
o Qué información utiliza,
o Qué datos genera,
Base de Datos
Modelo entidad Relación
1 INTRODUCCIÓN
En su forma más simple, el modelaje Entidad-Relación intenta
identificar:
o Las cosas más importantes de una organización (llamadas entidades u
objetos)
o Las propiedades de esas cosas (llamadas atributos)
o Y las interrelaciones entre las diversas cosas (llamadas relaciones).
Base de Datos
Modelo entidad Relación
1 INTRODUCCIÓN
Podemos anotar dos objetivos primordiales que persigue esta
técnica de modelaje de datos:
o Proveer de un modelo exacto sobre las necesidades de información de la
organización, lo cual será una base firme para el desarrollo de nuevos
sistemas o mejoramiento de los ya existentes.
o Proveer un modelo independiente de cualquier forma de almacenamiento
de datos y método de acceso, lo cual garantizará la toma de decisiones
objetivas acerca de técnicas de implementación y coexistencia con
sistemas en producción
Base de Datos
Modelo entidad Relación
1 INTRODUCCIÓN
El punto natural al cual desemboca el modelo Entidad-Relación,
es el diseño de base de datos relacional:
o Generar un conjunto de esquemas de relación (tablas), que permitan
almacenar información carente de redundancia innecesaria
o Que sobre todo nos provean de formas fáciles de recuperación de la
información.
El modelo entidad relación es una técnica para construir el
modelo conceptual
Base de Datos
Modelo entidad Relación
1 INTRODUCCIÓN
Como valor agregado de realizar un modelaje de datos Entidad-
Relación, se evitará caer en las características comunes de un
mal diseño de base de datos:
o Repetición innecesaria de a información.
o Incapacidad para representar cierta información.
o Perdida de información.
Base de Datos
Modelo entidad Relación
2 MODELO ENTIDAD-RELACION
De aquí surge la necesidad de realizar una abstracción de la
realidad en base a características comunes a los objetos; sin
embargo cuando se forma tales abstracciones, nos vemos
obligados a ignorar muchas de las características menos
importantes de los objetos.
Podemos abstraer los tantos perros de las tantas razas distintas
en un objeto general al que podemos llamar MASCOTA; o a los
diversos autos de las diversas marcas como AUTOMOTORES.
Base de Datos
Modelo entidad Relación
2 MODELO ENTIDAD-RELACION
Nuestra idea de “Que constituye un criterio apropiado” para
establecer similitudes, depende de los propósitos que se tenga
en mente (para realizar la abstracción). Así, una misma persona
puede representar:
o Un paciente para un hospital,
o O puede ser considerado como un votante o contribuyente para el
gobierno,
o O puede ser un empleado para una compañía.
Base de Datos
Modelo entidad Relación
2 MODELO ENTIDAD-RELACION
Es un Modelo N-ARIO, es decir, que las relaciones pueden asociar una, dos o
más entidades. Se puede hablar de relaciones:
o UNITARIAS: Una entidad consigo misma.
o BINARIAS: Entidades relacionadas dos a dos.
o TERNARIAS: Relación entre tres entidades.
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
Algun objeto que existe y se puede distinguir de otros objetos.
Puede representar una persona, lugar, evento, objeto o concepto
del mundo real que se planea modelar en la base de datos.
Puede ser un objeto fisico o una abstraccion.
Las instancias de una entidad representan a un estudiante en particular, una
clase especifica, un cliente individual, un empleado, una cuenta, un paciente
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
La identificación de las entidades es una tarea muy fácil de
realizar. Se puede iniciar haciéndose la pregunta “¿ Qué son
cosas en éste problema ?”
Muchas de las cosas caen dentro de cinco categorías:
o 1. Cosas Tangibles
o 2. Roles
o 3. Incidentes
o 4. Interacciones
o 5. Especificaciones
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
Estas cinco categorías no son una clasificación de los objetos,
sino un conjunto de ideas iniciales para encontrar objetos.
Los objetos tangibles son lo más fácil de ubicar, pues son cosas
que pueden ser vistas o tocadas. Por ejemplo:
o Autos,
o Materiales,
o Construcciones,
o Máquinas, etc.
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
Los objetos rol o roles, son aquellas actividades realizadas por
personas u organizaciones. Por ejemplo:
o paciente,
o doctor,
o cliente,
o empleado,
o propietario,
o arrendatario,
o distribuidor,
o contribuyente, etc.
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
Los objetos incidentes son usados para representar una
ocurrencia o un evento, algo que ha sucedido en un tiempo
específico. Así:
o vuelo,
o accidente,
o juego,
o llamada,
o caída del sistema,
o apagón, etc.
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
Los objetos interacción generalmente tienen una cualidad de
transacción o de contrato entre varios objetos. Por ejemplo:
o Una compra (que relaciona comprador, vendedor y objeto comprado).
o Matrimonio (que relaciona al hombre y a la mujer).
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
Finalmente los objetos de especificación que frecuentemente
muestran catálogos o inventarios y tienen la calidad de
estándares o definiciones. Por ejemplo:
o modelo de televisor,
o catálogo de cuentas contables,
o fórmula de insumo, etc.
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
En general puede considerarse una regla que cuando se tienen
objetos de especificación, se tendrá otro objeto que contiene las
instancias reales de la especificación, estas instancias no
necesariamente estarán en un objeto tangible, por ejemplo tipos
de préstamo y prestamos concedidos.
Cada objeto deberá ser descrito mediante una oración corta e
informativa que permita a cualquier persona decir con certeza
que cosa en particular es una instancia del objeto. Esta
descripción debe ser ingresada al diccionario de datos.
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
Gráficamente un objeto se representa por un rectángulo o por un
rectángulo con esquinas redondeadas, dentro del cual debe
estar el nombre del objeto o entidad.
ENTIDAD ENTIDAD
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
A continuación se presentan sugerencias de cómo nombrar las
entidades:
a) El nombre debe escribirse en singular y todo con mayúsculas.
b) Escoger nombres comunes, menos especializados. Ejemplo: Bien:
unidad de señalización. Mejor: semáforo.
c) Utilizar términos cotidianos, no técnicos.
Base de Datos
Modelo entidad Relación
2.1 OBJETOS O ENTIDADES
e) Procurar el uso de nombres compuestos, aún si ellos son un poco más
largos, con el fin de dar mejor entendimiento a la entidad, que si
utilizáramos términos menos precisos.
f) Usar nombres basados en el contenido de la información del objeto, no
por sus nombres informales. Ejemplo: Mal: Licencias de manejo. Bien:
conductores breventados.
g) Evitar el uso de palabras generales o abusadas por el lenguaje cotidiano.
Ejemplo: Transacción, operación, parte, motivo.
Base de Datos
Modelo entidad Relación
2.1 ENTIDADES
• Se definirá informalmente como un objeto que existe y se puede distinguir
de otros objetos.
• Puede representar a una persona, lugar, evento, objeto o concepto en
el mundo real que se planea modelar en la base de datos.
• Puede ser un objeto físico o una abstracción.
• Las instancias de entidad representan a un estudiante en particular,
una clase especifica, un cliente individual, un empleo particular, una
cuenta, un paciente, una conferencia o un club, todo depende de cual
sea la empresa y que se desee representar.
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
Representan las propiedades definitorias o cualidades del
tipo de entidad.
Se representa en un diagrama E-R mediante un ovalo con el
nombre del atributo en el interior, una línea conecta el ovalo
del atributo con el rectángulo del conjunto de entidades.
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
Notaciones para mostrar objeto junto a sus atributos.
o En forma textual, encerrando en paréntesis los nombres de los atributos
separados con comas conjuntamente con el nombre del objeto. En este
caso deberían subrayarse los atributos que formen parte de la clave
primaria.
CLIENTE (cedula, nombre, dirección)
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
Notaciones para mostrar objeto junto a sus atributos.
o En forma grafica, inmediatamente bajo el nombre de la entidad, como se
puede observar en la figura.
CLIENTE
cedula
nombre
dirección
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
Notaciones para mostrar objeto junto a sus atributos.
o Se puede utilizar la forma grafica extendida que usan algunas literaturas
sobre el tema y que dibujan los atributos en óvalos y conectados con la
entidad.
CLIENTE
cedula
nombre
dirección
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.1 DOMINIOS
El conjunto de valores que un atributo puede tomar se conoce
como dominio. Por ejemplo:
ATRIBUTO DOMINIO .
o dirección cualquier calle de la ciudad
o sexo masculino, femenino
o temperatura _ humana entre 35 y 42 grados centígrados
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.1 DOMINIOS
ESTUDIANTE
stuid
stuapellido
stunombre
materia credits
Una instancia de entidad en particular se puede
describir como un conjunto de pares ordenados,
donde cada punto es el nombre de un atributo y el
valor del atributo.
{(stuid, S1001), (stuapellido, Sánchez), (stunombre, Carlos),
(materia, Historia), (créditos, 90)}.
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.2 VALOR NULO
En ocasiones se desconocen los valores de los atributos o no
esta definido para una instancia en particular.
Se pueden permitir valores nulos para algunas instancias.
Valores en 0 o una cadena en blanco para un campo de cadena
de caracteres se consideran como entradas no nulas.
Nulo significa sin valor.
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.3 ATRIBUTOS MULTIVALUADOS
Algunos atributos pueden tener valores múltiples para una
instancia de entidad.
• Ej: estudiantes pueden tener mas de una dirección de
correo
Se los representa con un ovalo doble alrededor del nombre del
atributo.
No se debe de interpretar como que todas las instancias deben
de tener valores múltiples, solo que algunas instancias pueden
tenerlo.
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.3 ATRIBUTOS MULTIVALUADOS
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.4 ATRIBUTOS COMPUESTOS
Algunos atributos se pueden descomponer en elementos mas
pequenos.
• Ej: Direccion se puede descomponer en calle, ciudad,
estado y codigo postal.
• Ej: Telefono ?
• Graficamente se lo representa con una ovalo en su forma
usual y luego dividir ovalos para los componentes
individuales, conectandose mediante lineas al ovalo del
atributo compuesto
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.4 ATRIBUTOS COMPUESTO
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.5 ATRIBUTOS DERIVADOS
A veces es posible incluir en un diseño u atributo cuyo valor se pueda
calcular cuando sea necesario.
Ej: La edad puede ser un atributo pero si ya almacenamos
dateofbirth(fecha de nacimiento), no hay necesidad de también
almacenar la edad.
Los atributos que no se almacenaran pero cuyos calores se calcularan u
obtendrán a partir de otras fuentes, se llaman derivados.
Se citan en el diagrama E-R con un ovalo con rayas.
Tambien se pueden derivar a partir de otras entidades o de relaciones
Base de Datos
Modelo entidad Relación
2.2 ATRIBUTOS
2.2.5 ATRIBUTOS DERIVADOS
Base de Datos
Modelo entidad Relación
2.3 CLAVES
Intuitivamente, se piensa en una clave como
en un item de datos que permite diferenciar
los registros. Es necesaria una definicion
mas exacta del concepto de clave.
Tales como:
• Claves primarias
• Claves candidatas
Base de Datos
Modelo entidad Relación
2.3 CLAVES
2.3.3 CLAVES PRIMARIAS
Pueden tener varias claves candidatas.
El DBA elige e identifica una como la forma normal
de identificar entidades y accesar a los registros.
Puede ser un solo atributo o una clave compuesta.
Claves candidatas se convierten en claves
alternativas.
Base de Datos
Modelo entidad Relación
2.3 CLAVES
2.3.3 CLAVES PRIMARIAS
Clave secundaria significa un atributo o conjunto de
atributos cuyos valores, no necesariamente unicos,
se usan como medio para accesar a los registros.
En un ejemplo: Stuid - clave primaria, SocSecNo
puede ser clave alternativa.
Apellido puede ser clave secundaria si no se
conoce el Stuid o el SocSecNo
Base de Datos
Modelo entidad Relación
2.3 CLAVES
2.3.2 CLAVES CANDIDATAS
{Stuid, credits} atributos adicionales no
necesarios para la identificacion unica de
instancias de entidad, el interes esta en
encontrar claves que no contengan estos
atributos adicionales.
• Combinacion {apellido, nombre, direccion},si
siempre es unica, puede ser una clave
candidata, llamada tambien clave compuesta.
Base de Datos
El modelo Entidad / Relación (E/R)
Alumno
DNI
Nombre
Apellidos
Dirección
Num_Matricula
Clave
Primaria
DNI
Clave
Candidada (alt)
DNI
Num_Matricula
Ejemplo 1:
Base de Datos
El modelo Entidad / Relación (E/R)
Clave
Primaria
Clave
Candidada (alt)
Ejemplo 2:
Empleado
Num_Empleado
Num_SeguridadSocial
Nombre
Apellidos
Salario
Base de Datos
Modelo entidad Relación
2.4 RELACIONES
El mundo real nos obliga a asociar varios objetos entre sí.
Con frecuencia las entidades se ligan mediante asociaciones o
relaciones, que son conexiones entre las instancias de entidad.
Ej : Un estudiante se relaciona con un clase al inscribirse en
dicha clase
Base de Datos
Modelo entidad Relación
2.4.1 TIPO DE RELACIONES
Las relaciones pueden asociar una, dos o más entidades. Se puede hablar de
relaciones:
o UNITARIAS: Una entidad consigo misma.
o BINARIAS: Entidades relacionadas dos a dos.
o TERNARIAS: Relación entre tres entidades.
Base de Datos
Modelo entidad Relación
2.4.1 TIPO DE RELACIONES
Enroll (Matricularse o Inscribirse) es un ejemplo de un conjunto de relaciones
binario, que vincula dos conjuntos de entidades. Se lo puede llamar conjunto
de pares ordenados, en el que el primer elemento representa a un estudiante
y el segundo una clase que el estudiante cursa. Veamos sus instancias:
Enroll = { (El estudiante con Id S1001, La clase con classNumber ATR103A),
(El estudiante con Id S1020, La clase con classNumber CS201A)
(El estudiante con Id S1002, La clase con classNumber CS201A)
(El estudiante con Id S1010, La clase con classNumber ATR103A)
(El estudiante con Id S1002, La clase con classNumber ATR103A)
(El estudiante con Id S1001, La clase con classNumber MTH101B)
}
Base de Datos
Modelo entidad Relación
2.4.1 RELACION BINARIA
Base de Datos
Modelo entidad Relación
2.4.1 RELACION TERNARIA
Base de Datos
Modelo entidad Relación
2.4.2 ATRIBUTO DE CONJUNTOS DE RELACIONES
A veces un conjunto de relaciones tiene atributos
descriptivos que pertenecen a la relación en vez de
alguna de las entidades involucradas.
Un estudiante puede tener calificaciones para muchas
clases.
En una clase particular se otorgan diferentes
calificaciones para distintos estudiantes.
Para que una calificación tenga significado, debe de
asociarse con un estudiante particular para un clase
particular
Base de Datos
Modelo entidad Relación
2.4.2 ATRIBUTO DE CONJUNTOS DE RELACIONES
Base de Datos
Modelo entidad Relación
2.4 EJEMPLO DE RELACIONES
Base de Datos
Modelo entidad Relación
2.4.1 RELACION RECURSIVA
Es aquella en la que puede existir una relación entre
ocurrencias del mismo conjunto de entidades (relación
unaria)
Base de Datos
Modelo entidad Relación
2.4.3 CARDINALIDAD DE UNA RELACION
Es importante identificar restricciones de modo que
las posibles extensiones de la relaciones
corresponden a conexiones o asociaciones del
mundo real.
La cardinaniladad de una relacion es el numero de
entidades a las que otra entidad puede mapear bajo
dicha relacion.
Se distinguen cuatro tipos de relaciones binarias:
Base de Datos
Modelo entidad Relación
2.4.3 CARDINALIDAD DE UNA RELACION
Uno a uno: Una relacion R de X a Y es uno a uno
si cada entidad de X se asocia con cuando mucho
una entidad en Y, inversamente cada entidad en Y
se asocia con cuando mucho una entidad en X.
• Ej: Relacion jefe-departamento. Cada jefe dirige
al menos un departamento, y cada
departamento tiene cuando mucho un jefe.
• Ej: matrimonio monogamo, en cada momento
dado, cada esposo esta casado con solo una
esposa, y cada esposa con un esposo.
Base de Datos
2.4.3 CARDINALIDAD DE UNA RELACION
Uno a uno
Base de Datos
Modelo entidad Relación
2.4.3 CARDINALIDAD DE UNA RELACION
Uno a muchos: Una relacion R de X a Y es uno a
muchos si cada entidad de X se puede asociar con
muchas entidades en Y, pero cada entidad de Y se
asocia con cuando mucho una entidad en X.
• Ej: Relacion Docencia-Clase. Cada miembro del personal
docente puede impartir muchas clases , pero cada clase
se imparte por solo un miembro del personal docente.
• Ej: Relacion Madre-hijo, una madre puede tener muchos
hijos, pero cada hijo solo tiene una madre (biologica).
Base de Datos
2.4.3 CARDINALIDAD DE UNA RELACION
Uno a Muchos
Base de Datos
Modelo entidad Relación
2.4.3 CARDINALIDAD DE UNA RELACION
Muchos a uno: Una relacion R de X a Y es muchos
a uno si cada entidad de X se puede asociar con
cuando mucho una entidad en Y, pero cada entidad
de Y se asocia con muchas entidades en X.
• Ej: Relacion Hijo-Madre, cada hijo tiene cuando
mucho una madre, pero una madre puede tener
muchos hijos.
Base de Datos
2.4.3 CARDINALIDAD DE UNA RELACION
Muchos a Uno
Base de Datos
Modelo entidad Relación
2.4.3 CARDINALIDAD DE UNA RELACION
Muchos a Muchos: Una relacion R de X a Y es
muchos a muchos si cada entidad de X se puede
asociar con muchas entidades en Y, y cada entidad
de Y se asocia con muchas entidades en X.
Ej: Relacion Estudiante-Clase. Cada estudiante puede
inscribirse en muchas clases y cada clase puede tener
muchos estudiantes inscritos.
Ej: Relacion Abuelo-Nieto, un abuelo puede tener muchos
nietos y un nieto puede tener muchos abuelos.
Base de Datos
2.4.3 CARDINALIDAD DE UNA RELACION
Muchos a Muchos
Base de Datos
Modelo entidad Relación
2.4.4 MUESTRA DE CARDINALIDADES DE UN
DIAGRAMA E-R
Base de Datos
Modelo entidad Relación
2.4.4 MUESTRA DE CARDINALIDADES DE UN
DIAGRAMA E-R
Base de Datos
Modelo entidad Relación
2.4.4 MUESTRA DE CARDINALIDADES DE UN
DIAGRAMA E-R
Base de Datos
Modelo entidad Relación
2.4.4 RESTRICCIONES DE PARTICIPACION
Es posible que no todos los miembros de un conjunto de
entidades participen en una relacion.
• Ej: algunos miembros del personal docente pueden no
impartir clases este semestre, o algunos estudiantes
pueden no estar inscritos en alguna clase este semestre,
aunque conserven el status de estudiantes.
Si todo miembro de un conjunto de entidades debe de
participar en una relacion, a esto se le conoce como
participacion total del conjunto de entidades en la
relacion.
Esto se denota al dibujar una linea doble desde el
rectangulo de entidades hasta el diamante de relacion.
Base de Datos
Modelo entidad Relación
2.4.4 RESTRICCIONES DE PARTICIPACION
Una linea sencilla indica que algunos miembros del
conjunto de entidades no deben participar en la
relacion, esto se llama participacion parcial.
Base de Datos
Modelo entidad Relación
2.4.4 SIMBOLOS BASICOS DIAGRAMA E-R
Base de Datos
Modelo entidad Relación
2.5 ROLES
En una relacion cada entidad tiene una funcion
llamada ROL.
Base de Datos
Modelo entidad Relación
2.6 DEPENDENCIA DE EXISTENCIA Y ENTIDADES
DEBILES
Son entidades que dependen de otra para su existencia (no
tienen sentido sin la otra).