You are on page 1of 19

Diseño Conceptual - Modelo ER

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

Fases y resultados en el diseño de BDs

Real World
Situation

Conceptual Modeling

PRODUCTS BUY Conceptual Schema


(e.g., Entity-Relationship)
ALIMENTS CLEANING CLIENTS

System Design

CREATE TABLE PRODUCTS (...);


Logical Schema
CREATE TABLE CLIENTS (...); (e.g., Relational, Object-Oriented)

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.

Algunos Modelos Conceptuales:


Modelo Entidad-Relación [1976].
Modelos ER Extendidos [´80s y ´90s].
SDM [1981].

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

Modelización conceptual - Ejemplo 2


Otro Esquema ER:
ETA P A S N 1 P RO Y ECTO S

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 o ta D escrip c io n p resu p u e sto


n ro _ estu d :c la v e fe c h a
n o m b re
d ire cc ió n 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:

Principio del 100%:


El esquema conceptual asociado a un problema
debe representar todos sus aspectos.
Principio de Conceptualización:
El esquema conceptual no debe incluir ningún
elemento asociado a la implementación del
esquema, así como ningún elemento orientado a la
performance de la futura BD.:

In.Co. - Facultad de Ingeniería Curso : Fundamentos de Bases de Datos Tema 2. Diseño Conceptual 7

Modelos de Datos - Conceptos básicos


Atributo
Característica que nos interesa de un determinado
objeto. Ej.: Nombre de un funcionario
Cardinalidad N:1
Dada una relación entre dos conjuntos A y B, se dice
que tiene cardinalidad N:1 si dado un objeto cualquiera
de A, puede haber en la relación solo una pareja con
ese elemento. Ej.:
A = # a1, a2, a3 #
B = # b1, b2, b3, b4 #
A R B = # (a1,b2), (a2,b1), (a3,b1) #

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

Caso de Estudio - Primer nivel

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

Restricciones sobre Tipos-Relación

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

Caso de Estudio - Tipo-Entidad Debil

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

You might also like