Actualizado el 21 de Marzo del 2018 (Publicado el 9 de Marzo del 2018)
1.144 visualizaciones desde el 9 de Marzo del 2018
138,6 KB
21 paginas
Creado hace 22a (31/05/2002)
TEMA 6. DISEÑO CONCEPTUAL DE BASES DE DATOS.
MODELO ENTIDAD – RELACIÓN.
1. Introducción
2. Metodología de diseño de bases de datos
3. Modelos de datos
4. El modelo entidad – relación
5. Metodología de diseño conceptual
1. Introducción
¿Principal causa de fracaso en el diseño de sistemas de información?
La poca confianza en las metodologías de diseño de bases de datos.
Consecuencias:
(cid:190) Se subestiman el tiempo o los recursos necesarios.
(cid:190) Las bases de datos son inadecuadas o ineficientes.
(cid:190) La documentación es limitada.
(cid:190) El mantenimiento es difícil.
Tema 6. Diseño conceptual de bases de datos
2
2. Metodología de diseño de bases de datos
Especificación de requisitos
DISEÑO CONCEPTUAL
Esquema conceptual
DISEÑO LÓGICO
Normalización
Esquema lógico
DISEÑO FÍSICO
Esquema físico
3
Tema 6. Diseño conceptual de bases de datos
Especificación
de requisitos
Diseño conceptual
Esquema
conceptual
Esquema conceptual
Modelo conceptual
Propósito
Descripción de alto nivel del contenido de
información de la base de datos, independiente del
SGBD que se vaya a utilizar.
Lenguaje que se utiliza para describir esquemas
conceptuales.
Obtener un esquema completo que lo exprese todo.
Tema 6. Diseño conceptual de bases de datos
4
Diseño lógico
Esquema
conceptual
Esquema
lógico
Esquema lógico
Modelo lógico
Propósito
Descripción de la estructura de la base de datos según
el modelo del SGBD que se vaya a utilizar.
Lenguaje que se utiliza para describir esquemas
lógicos; hay varios modelos lógicos: de red, relacional,
orientado a objetos, ...
Obtener una representación que use de la manera más
eficiente los recursos disponibles en el modelo lógico
para estructurar datos y modelar restricciones.
El diseño lógico depende del modelo de BD que soporta el SGBD.
Tema 6. Diseño conceptual de bases de datos
5
Esquema
lógico
Diseño físico
Esquema
físico
Esquema físico
Descripción de la implantación de una BD en la
memoria secundaria: estructuras de almacena-
miento y métodos usados para tener un acceso
efectivo a los datos. El diseño físico se adapta al
SGBD específico que se va a utilizar.
Se expresa haciendo uso del lenguaje de definición de datos del SGBD.
Por ejemplo, en SQL las sentencias que se utilizan son las siguientes:
CREATE DATABASE
CREATE TABLE
CREATE VIEW
CREATE INDEX
CREATE SCHEMA
CREATE SNAPSHOT
CREATE CLUSTER
Tema 6. Diseño conceptual de bases de datos
6
Dependencia de cada una de las etapas del diseño,
en el tipo de SGBD y en el SGBD específico:
Tipo de SGBD
SGBD específico
Diseño conceptual
Diseño lógico
Diseño físico
NO
SÍ
SÍ
NO
NO
SÍ
Tema 6. Diseño conceptual de bases de datos
7
3. Modelos de datos
Esquema: Descripción de la estructura de los datos de interés.
Un esquema conceptual se representa mediante un modelo conceptual de datos.
Cualidades que debe poseer un modelo conceptual:
(cid:190) Expresividad.
(cid:190) Simplicidad.
(cid:190) Minimalidad.
(cid:190) Formalidad.
Además, hay que añadir aserciones que complementen el esquema.
Tema 6. Diseño conceptual de bases de datos
8
4. El modelo entidad – relación
Es el modelo conceptual más utilizado para el diseño conceptual de bases de datos.
Fue introducido por Peter Chen en 1976.
Elementos
básicos
(modelo original)
Entidades
Relaciones entre entidades (interrelaciones)
Atributos
Jerarquías de generalización
Atributos compuestos
Identificadores
Otros
elementos
(añadidos para
mejorar la
expresividad)
Tema 6. Diseño conceptual de bases de datos
9
Entidad
(cid:190) Tipo de objeto sobre el que se recoge información: cosa, persona, concepto abstracto o
suceso (coches, casas, empleados, clientes, empresas, oficios, diseños de productos,
conciertos, excursiones, etc.).
(cid:190) Las entidades se representan gráficamente mediante rectángulos y su nombre aparece en el
interior.
(cid:190) Un nombre de entidad sólo puede aparecer una vez en el esquema.
ASIGNATURA
ASIGNATURA es una entidad;
Inglés, Cálculo, Algorítmica son ocurrencias de esta entidad.
CIUDAD
CIUDAD es una entidad;
Castellón, Barcelona, Toledo son ocurrencias de esta entidad.
Tema 6. Diseño conceptual de bases de datos
10
Relación (interrelación)
(cid:190) Correspondencia o asociación entre dos o más entidades.
(cid:190) Las relaciones se representan gráficamente mediante rombos y su nombre aparece en el
interior.
(cid:190) La cardinalidad con la que una entidad participa en una relación especifica el número mínimo
y el número máximo de correspondencias en las que puede tomar parte cada ocurrencia de
dicha entidad.
(1,n)
lugar
residencia
(0,n)
dirige_a
(0,n)
EMPLEADO
CIUDAD
EMPLEADO
director
lugar
nacimiento
(0,n)
(1,1)
es_dirigido_por
(1,1)
participación total
u obligatoria
participación parcial
u opcional
Tema 6. Diseño conceptual de bases de datos
11
Atributo
(cid:190) Característica de interés sobre una entidad o sobre una relación.
(cid:190) La cardinalidad de un atributo indica el número mínimo y el número máximo de valores que
puede tomar para cada ocurrencia de la entidad o relación a la que pertenece. El valor por
omisión es (1,1).
(0,1)
fecha_inicio
(1,n)
residencia
nombre
dni
título
EMPLEADO
(0,n)
(0,1)
(0,n)
CIUDAD
(0,1)
nombre
altitud
num_habitantes
nacimiento
(0,n)
fecha_nacimiento
Tema 6. Diseño conceptual de bases de datos
12
Jerarquía de generalización
(cid:190) La entidad E es una generalización de las entidades E1, E2, ... En, si las ocurrencias de
éstas son también ocurrencias de E. Todas las propiedades de la entidad genérica son
heredadas por las subentidades.
(cid:190) Cada jerarquía es total o parcial, y exclusiva o superpuesta.
(cid:190) Un subconjunto es un caso particular de generalización con una sola entidad como
subentidad. Un subconjunto siempre es una jerarquía parcial y exclusiva.
EMPLEADO
(t,e)
(p,e)
FIJO
TEMPORAL
DIRECTIVO
(t,s)
ADMINISTRATIVO
SERVICIOS
(p,s)
FUNCIONARIO
DIRECTOR
TECNICO
DIRECTOR
ADMINISTRATIVO
PROGRAMADOR
COMERCIAL
PUBLICIDAD
Tema 6. Diseño conceptual de bases de datos
13
Atributo compuesto
(cid:190) Grupo de atributos que tienen afinidad en cuanto a su significado o en cuanto a su uso.
(cid:190) Un atributo compuesto se representa gráficamente mediante un óvalo.
ciudad_nacimiento
fecha_nacimiento
lugar_nacimiento
(0,1)
EMPLEADO
(0,n)
(1,n)
lugar_residencia
ciudad_residencia
fecha_inicio
nombre
dni
título
Tema 6. Diseño conceptual de bases de datos
14
Identificador
(cid:190) Un identificador de una entidad es un atributo o conjunto de atributos que determina de modo único
cada ocurrencia de esa entidad. Todo identificador debe cumplir :
(1) no pueden existir dos ocurrencias de la entidad con el mismo valor del identificador,
(2) si se omite cualquier atributo del identificador, la condición (1) deja de cumplirse.
(cid:190) Toda entidad tiene al menos un identificador y puede tener varios identificadores alternativos.
nombre
fecha_nacim
EMPLEADO
dni
ciudad
EMPLEADO
(1,1)
trabaja_en
(1,n)
DEPARTAMENTO
num_emp
num_depto
cant
SP
(0,n)
(1,1)
S
S#
(1,1)
(0,n)
P
P#
Tema 6. Diseño conceptual de bases de datos
15
5. Metodología de diseño conceptual
Para cada área funcional de la empresa se construye un esquema
conceptual local siguiendo estos pasos:
(1) Identificar las entidades.
(2) Identificar las relaciones.
(3) Identificar los atributos y asociarlos a entidades y relaciones.
(4) Determinar los dominios de los atributos.
(5) Determinar los identificadores.
(6) Determinar las jerarquías de generalización (si las hay).
(7) Dibujar el diagrama entidad – relación.
(8) Revisar el esquema conceptual local con el usuario.
Tema 6. Diseño conceptual de bases de datos
16
Ejemplo
cuánto
nombre
teléfono
momento
(0,n)
(1,n)
gusta
AMIGO
(1,n)
frecuenta
(0,n)
(0,n)
CERVEZA
(0,n)
sirve
(1,n)
BAR
nombre
marca
nombre dirección
momento ∈ {mañana, tarde, noche, indiferente}
cuánto ∈ {nada, normal, mucho}
Tema 6. Diseño conceptual de bases de datos
17
Ejercicio 1
número_expediente
estado
período
(0,1)
fecha_incio
fecha_fin
(1,1)
tiene
ASUNTO
(0,n)
lleva
(1,n)
(0,n)
dni
CLIENTE
dni
PROCURADOR
nombre
dirección
nombre dirección
Tema 6. Diseño conceptual de bases de datos
18
Ejercicio 2
número_identificación
sexo
año_nacimiento
país
continente
posee
(1,n)
ZOO
(1,1)
(1,n)
ANIMAL
alberga
(1,1)
(1,n)
pertenece
(1,n)
ESPECIE
nombre
ciudad
país
tamaño
presupuesto
nombre_científico
nombre_vulgar
familia
peligro
Hay un ciclo ¿alguna relación es redundante?
Tema 6. Diseño conceptual de bases de datos
19
Ejercicio 3
PERSONA
(t,s)
dni
nombre
dirección
SOCIO
(1,n)
posee
PATRÓN
(0,n)
(0,n)
salida
(1,1)
BARCO
fecha
hora
destino
matrícula
nombre
amarre
cuota
Tema 6. Diseño conceptual de bases de datos
20
De cada AMIGO sabemos el nombre y su teléfono.
De cada BAR sabemos el nombre y la dirección.
De cada CERVEZA sabemos el nombre y la marca.
Los AMIGOS frecuentan uno o varios bares. Puede que les guste ir a cada bar en momentos distintos del día
(mañana, tarde o noche), o puede que les sea indiferente.
Cada AMIGO ha probado una o varias cervezas y sabe cuánto le gustan: nada, normal o mucho.
Una misma CERVEZA puede gustar a varios AMIGOS y puede servirse en varios BARES distintos.
De las CERVEZAS que tenemos, algunas no las ha probado nadie.
También puede ocurrir que haya CERVEZAS que no se sirvan en ninguno de los BARES que nos interesan.
Cada BAR sirve una o varias cervezas.
Entre los BARES que nos interesan, puede que haya algunos que no frecuenten nuestros amigos, y otros que
sean frecuentados por varios amigos.
Tema 6. Diseño conceptual de bases de datos
21
Comentarios de: TEMA 6. DISEÑO CONCEPTUAL DE BASES DE DATOS. MODELO ENTIDAD – RELACIÓN (0)
No hay comentarios