Professional Documents
Culture Documents
Temas:
Fases en el diseño de BDs.
Modelización Conceptual.
Modelo Entidad Relación (Extendido).
Modelización usando Modelo ER.
Referencia:
Capítulos 3, 14.2.2, y 21 del [EN]
Projeto Lógico e Físico de Banco de Dados. V. W. Setzer.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 1
Real World
Situation
Conceptual Modeling
System Design
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 2
1
Modelización conceptual
Qué es ?
Primer etapa en diseño de una BD.
Sub-etapas:
Estudio del problema real.
Especificación usando un lenguaje de muy alto nivel.
Validar resultado.
Resultado:
Esquema Conceptual
Lenguajes usados:
Modelos Conceptuales.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 3
Modelización conceptual
Los Modelos Conceptuales:
Modelos de datos de muy alto nivel.
En general se concentran en estructuras.
Tienen una representación gráfica asociada.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 4
2
Modelización conceptual - Ejemplo 1
Un Esquema Entidad-Relación:
Modeliza las realización de cursos por parte de
estudiantes.
N CURSA N
CURSOS
ESTUDIANTES
nota codigo: clave
fecha
nro_estud: clave nombre
nombre
dirección
fecha_nacimiento
edad: calculado OBLIGATORIOS OPCIONALES
promedio_nota: calculado
semestre cantidad_horas
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 5
id e n tif: c la v e
n ro .:cla v e ETA P A _P R O Y
n o m b re
n o m b re
fec h a _ co m ien zo
d e sc rip ció n
fec h a _ fin a liza c io n
1 R E A L IZ A N
E S T U D IA N T E S TALLER IN V E S T IG A C IO N
N
INV E S T IG A DO R
1 N
ta re a
id e n tif: c la v e
n o m b re P A R T IC IP A
S U P E R V IS IO N e m a il
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 6
3
Modelización Conceptual
Principios de la Mod. Conceptual:
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 7
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 8
4
Modelos de Datos - Conceptos básicos
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 9
Modelo Entidad-Relación
Modelo Conceptual más usado.
Propuesto por Chen en 1976.
Existe una gran variedad de “dialectos” y
variantes del Modelo ER.
Gran similaridad con modelos OO.
Sus conceptos básicos:
Entidad : objeto de la realidad.
Por ejemplo: Estudiantes, Cursos, Docentes.
Relación : asociación entre objetos.
Por ejemplo: Cursa, Dicta
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 10
5
Modelo Entidad-Relación
Qué dialecto usaremos en el curso ?
El modelo gráfico de las transparencias.
Los conceptos descriptos en el Cap 21 [EN],
que son una extensión de los del Cap 3.
Coincide bastante con el del Korth&Silberchatz.
Elementos principales:
Entidades, Relaciones, Atributos (campos).
Generalización, Agregación.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 11
Modelo Entidad-Relacion
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 12
6
Modelo ER - Constructores
Resumen de principales constructores :
Tipo de Entidad:
modeliza objetos de la realidad.
Tipo de Relación:
modeliza asociaciones entre objetos.
Atributo:
modeliza propiedades de Tipos de Ent. o de Rel.
Agregación:
representa un Tipo de Rel. como un Tipo de Ent.
Especialización:
modeliza sub Tipos de Entidad.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 13
Diagrama de Entidad-Relación
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 14
7
Modelos ER - Uso práctico
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 15
Caso de estudio
En un hospital se tiene un registro de pacientes, un registro
de personal y uno de salas con funcionarios que trabajan en
esas salas y con pacientes internados en esas salas.
Del personal nos interesa el numero de empleado, el
nombre, la direccion y el teléfono.
Sabemos que dos empleados no tienen el mismo numero.
De los pacientes nos interesa el numero de registro (le es
asignado cuando ingresa) y el nombre mientras que de las
salasnos interesa el nombre y la cantidad de camas que
tiene.
Tambien se sabe que un empleado trabaja en una unica sala
y que en una sala trabajan varios empleados. Lo mismo
ocurre con los pacientes.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 16
8
Caso de estudio
Conjuntos de objetos:
Pacientes, Salas, Personal
Relaciones entre esos conjuntos:
Los Pacientes están Internados en las Salas y el Personal
Trabaja en las Salas.
Características que interesan de los objetos:
Personal: nro. de funcionario, nombre, direccion y telefono
Pacientes: nro. de registro, nombre
Salas: nombre, cantidad de camas
Restricciones:
Un empleado trabaja en una unica sala y en una sala trabajan
varios empleados. Un paciente está internado en una sola sala
pero en una sala hay varios pacientes.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 17
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 18
9
Entidades y Atributos
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 19
Entidades y Atributos
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 20
10
Atributos Estructurados
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 21
Atributos Multivalorados
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 22
11
Restricciones sobre Tipo Entidades
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 23
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 24
12
Atributos de Tipos-Relación
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 25
Atributos de Tipos-Relación
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 26
13
Atributos de Tipos-Relación
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 27
Autorelaciones
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 28
14
Relaciones Múltiples
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 29
Agregaciones
Objetivo:
Representar asociaciones entre elementos de
Tipos-Relación y de otros Tipos-Entidad.
Representar relaciónes entre múltiples Tipos de
Entidad pero manteniendo relaciones binarias.
Constructor:
Se re-interpreta un Tipo de Relación como si
fuera un Tipo de Entidad.
El nuevo Tipo de Entidad se utiliza como
cualquier otro.
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 30
15
Agregaciones
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 31
Especializacion de Tipo-Entidad
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 32
16
Especializacion de Tipo-Entidad
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 33
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 34
17
Caso de Estudio - Tipo-Entidad Debil
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 35
Tipo-Entidad Debil
In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 36
18
Ejercicio.
Se desea modelar la estructura de un banco de datos que contiene información relativa a ejercicios para toda la
Universidad.
La realidad consiste en lo siguiente:
Se tienen ejercicios, identificados por un código, con una fecha de propuesta asociada y que pueden tener varios
autores. Estos ejercicios pueden ser de práctico, de examen o simplemente propuestas de ejercicios.
Tanto los ejercicios de práctico como los de examen están asociados a materias dentro de carreras determinadas.
Por ejemplo, el ejercicio código PR274 es un ejercicio de práctico asociado a la materia Programación 1 de la carrera
Ingeniería en Computación, pero no está asociado a la misma materia de la carrera de Ing. en Sistemas de
Computación.
Sobre los ejercicios de práctico asociados a una materia en una carrera, interesa saber en qué nro. de hoja está
dicho ejercicio, su nro. dentro de la hoja y un código de dificultad asociado. Un ejercicio de práctico puede aparecer
en varias materias de diferentes carreras. Todos los ejercicios de práctico están asociados a alguna materia.
Sobre los ejercicios de examen, interesa saber la fecha del examen en que apareció, su cantidad de puntos y el nro.
de ejercicio en el examen. Un ejercicio de examen está asociado a una y sólo una materia dentro de una carrera.
La información que interesa sobre las materias es el nombre y sobre las carreras su identificación.
Se sabe que dentro de una carrera hay muchas materias y que una misma materia puede estar dentro de varias
carreras. Una materia en una carrera tiene una determinada cantidad de horas de curso. Las materias con igual
nombre, aunque se encuentren en distintas carreras, tendrán asociadas un mismo conjunto de temas.
Por otro lado, todos los ejercicios (de cualquier tipo) están relacionados con temas con distintos grados de
profundidad.
Cada tema se identifica por un código e interesa saber cuáles temas son previos de otros.
Se pide:
Modelo Entidad Relación completo. Todos los atributos deberán aparecer en el diagrama y se deberán explicar
aquellos atributos que no resulten claros. Todas las relaciones deberán tener indicada su clase o cardinalidad o
mapeo, y deberá señalarse si la participación de las entidades es parcial o total. Deberán subrayarse los
atributos determinantes.
Las restricciones no estructurales, si existen, se formularán en lenguaje natural.
19