Vous êtes sur la page 1sur 103

1

MODELO ENTIDAD RELACION

HERRAMIENTA PARA EL MODELAJE DE


BASE DE DATOS

SANTA CRUZ - BOLIVIA


2

OBJETIVOS

• INTRODUCIR LOS CONCEPTOS DEL MODELO ENTIDAD-


RELACION-EXTENDIDO (ERE)
• PRESENTAR LAS REGLAS DE MAPEO A FIN DE CONVERTIR
EL MODELO ERE A TABLAS RELACIONALES
• USAR EL MODELO ERE A FIN DE MODELAR BASES DE
DATOS ORIENTADAS A OBJETOS (BDO 2)
3
PASOS BÁSICOS PARA EL DISEÑO DE UNA BASE DE
DATOS

Análisis de los requerimientos


Paso 1 y modelaje usando el modelo
ERE

Diagrama ERE

Paso 2 Transformación (mapeo) DERE


Tablas
Relacionales

Tablas Relacionales
candidatas
Paso 3 Nornalización de las
Tablas

Tablas candidatas
normalizadas
Independiente
Diseño físico
DBMS Paso 4 +
Implantación
Específico
DBMS
4

MODELO ENTIDAD-RELACION (ER)

• ETAPA DE ANÁLISIS
Análisis de Procesos

PASO 1 Análisis de Datos

• LA TÉCNICA DE ANÁLISIS DE DATOS MÁS DIFUNDIDA Y UTILIZADA PARA


EL MODELAMIENTO LÓGICO DE DATOS ES EL MODELO “ENTIDAD-
RELACIÓN” (ER).

• EL MODELAMIENTO DE DATOS SE REPRESENTA MEDIANTE UN


DIAGRAMA-ENTIDAD-RELACIÓN (DER).

• EL MODELO ER ORIGINAL FUE INTRODUCIDO POR P.P. CHEN 1976


BASADO EN TRES CONCEPTOS BÁSICOS:
- ENTIDADES
- RELACIONES
- ATRIBUTOS
• LIMITACIONES DEL MODELO ER ORIGINAL.
CARECE DE SUB-ESTRUCTURAS PARA LAS:
-ENTIDADES
-RELACIONES
5

... ER

• DIVERSAS EXTENSIONES FUERON PROPUESTAS


INCORPORÁNDOSE AL MODELO, OTROS CONCEPTOS COMO:
– GENERALIZACIÓN (SUPERCLASES)
– ESPECIALIZACIÓN (SUBCLASES)
– ENTIDAD ASOCIATIVA (AGREGACIÓN)

DANDO LUGAR AL:


» MODELO ENTIDAD RELACIÓN EXTENDIDO (ERE)
SU REPRESENTACIÓN GRÁFICA MEDIANTE UN:
» DIAGRAMA ENTIDAD RELACIÓN EXTENDIDO (DERE)
6

CONCEPTOS FUNDAMENTALES DEL MODELO


ER

ENTIDAD=CONJUNTO DE OBJETOS DE LA RELIDAD


MODELADA SOBRE LOS CUALES SE DESEA MANTENER
INFORMACIÓN EN LA BASE DE DATOS.

ENTIDAD

• UNA ENTIDAD REPRESENTA EN EL MODELO DE DATOS UN


CONJUNTO DE OBJETOS DE LA REALIDAD A MODELAR.
• ENTIDAD PUEDE REPRESENTAR OBJETOS “CONCRETOS”
DE LA REALIDAD (una persona) U OBJETOS
”ABSTRACTOS” (un departamento).
EN UN DER UNA ENTIDAD SE REPRESENTA MEDIANTE
“RECTÁNGULO” QUE CONTIENE EL “NOMBRE” (singular)
DE LA ENTIDAD.

PERSONA DEPARTAMENTO
7

... CONCEPTOS FUNDAMENTALES

• CADA RECTÁNGULO REPRESENTA UN “CONJUNTO” DE


OBJETOS.
• SI SE QUIERE REFERENCIAR UN OBJETO PARTICULAR
NOS REFERIMOS A UNA “OCURRENCIA” (instancia) DE LA
ENTIDAD.
TERMINOLOGÍA:
– CONJUNTO DE ENTIDADES Y ENTIDADES
– ENTIDAD Y OCURRENCIA DE UNA ENTIDAD
8

RELACIÓN

• UNA PROPIEDAD SOBRE LA CUAL SE DESEA MANTENER


INFORMACIÓN ES LA “ASOCIACIÓN ENTRE OBJETOS”

RELACIÓN=CONJUNTO DE ASOCIACIONES ENTRE DOS


O MÁS ENTIDADES (no necesariamente distintas)

• EN UN DER (DIAGRAMA ENTIDAD RELACION ) UNA


RELACIÓN SE REPRESENTA MEDIANTE UN “ROMBO”.
• IGUALMENTE NOS REFERIREMOS A “OCURRENCIAS” DE
UNA RELACIÓN.

DEPARTAMENTO TRABAJA EMPLEADO


9

REPRESENTACIÓN GRÁFICA DE UNA RELACIÓN

GRADO DE UNA RELACIÓN

• NÚMERO DE ENTIDADES PARTICIPANTES EN LA RELACIÓN


– GRADO 1 UNARIA (1 ENTIDAD)
– GRADO 2 BINARIA (2 ENTIDADES)
– GRADO 3 TERNARIA (3 ENTIDADES)
10

DIAGRAMA DE OCURRENCIAS

OCURRENCIA DE OCURRENCIA DE LA OCURRENCIA


LA ENTIDAD RELACIÓN TRABAJA DE LA ENTIDAD
EMPLEADO DEPARTAMENTO

•e1

•e2
•e1,d1 •d1
•e3
•e4,d2
•e4 •d2
•e6,d3
•e5
•e7,d3 •d3
•e6

•e7

ENTIDAD EMPLEADO RELACIÓN ENTIDAD


TRABAJA DEPARTAMENTO
11

RELACIONES RECURSIVAS

• RELACION RECURSIVA O AUTO-RELACIONES ES UNA


RELACION ENTRE OCURRENCIAS DE LA “MISMA”
ENTIDAD.
• ES NECESARIO UN CONCEPTO ADICIONAL---> “ROL” DE
UNA ENTIDAD EN LA RELACION.
LA FUNCION QUE TIENE UNA ENTIDAD EN UNA RELACION
SE DENOMINA “ROL”.
– ROL IMPLICITO (entidades diferentes)
– ROL EXPLICITO (misma entidad)

PERSONA

RELACIÓN RECURSIVA

MATRIMONIO
12

DIAGRAMA DE OCURRENCIAS

•p1 Marido

•p2 p1,p4

•p3 Esposa

•p4 Marido

•p5 p3,p7

•p6 Esposa

•p7
13

RESTRICCIONES
CARDINALIDAD DE MAPEO

CARDINALIDAD DE MAPEO = LA “CARDINALIDAD” INDICA EL


NUMERO DE OCURRENCIAS DE UNA ENTIDAD ASOCIADA A
UNA OCURRENCIA DE OTRA ENTIDAD A TRAVES DE UNA
RELACION

2 CARDINALIDADES :
– CARDINALIDADES 1
– CARDINALIDADES N

1 N
DEPARTAMENTO Trabaja EMPLEADO

TIPOS DE RELACIÓN DE ACUERDO A LA CARDINALIDAD


»Relación “una” a “una” (1:1)
»Relación “una” a “muchas” (1:n)
»Relación “muchas” a “muchas” (m:n)
14
RELACIÓN „UNA‟ A „UNA‟ (1:1)

PERSONA EMPLEADO
1 1 1
Marido Esposa

MATRIMONIO ASIGNADO

ESCRITORIO
RELACIÓN „UNA‟ A „MUCHAS‟

EMPLEADO EMPLEADO
1 N N
SUPERVISOR SUPERVISADO

SUPERVISIÓN TRABAJA

1
DPTO.
15

RELACIÓN „MUCHAS‟ A „MUCHAS‟

MÉDICO
PRODUCTO N
COMPUESTO N M COMPONENTE
CONSULTA
COMPOSICIÓN
M
PACIENTE
16

RELACIONES TERNARIAS

• MODELO ERE PERMITEN QUE SEAN DEFINIDAS


RELACIONES DE GRADO MAYOR QUE DOS (RELACIONES
TERNARIAS, CUATERNARIAS,....)
PROFESOR
MATERIA
1
N enseña
La cardinalidad
“1” se refiere a
M un par MATERIA
y SEM-AÑO
SEM-AÑO
17

RELACIONES TERNARIAS

• CADA OCURRENCIA DEL RELACIONAMIENTO “enseña”


ASOCIA TRES OCURRENCIAS DE ENTIDADES : UNA
MATERIA A SER DICTADA, UN SEM-AÑO EN EL CUAL SE
DICTA LA MATERIA Y UN PROFESOR.
• LA CARDINALIDAD “1” EXPRESA QUE CADA PAR DE
OCURRENCIAS ( MATERIA, SEM-AÑO) ESTÁ ASOCIADO A
LO MÁXIMO A “UN” PROFESOR.
18

RESTRICCIONES DE PARTICIPACIÓN

• INDICA SI UNA RELACIÓN DEBE O NO ASOCIAR


OBLIGATORIAMENTE UNA OCURRENCIA DE UNA
ENTIDAD A CADA OCURRENCIA DE LA ENTIDAD
RELACIONADA.
• EXISTEN DOS TIPOS DE PARTICIPACIÓN :
– PARTICIPACIÓN “TOTAL”(obligatoria)
– PARTICIPACIÓN “PARCIAL”(opcional)

PARTICIPACIÓN PARTICIPACIÓN
“TOTAL” “PARCIAL”

1 1
EMPLEADO asignado ESCRITORIO

REPRESENTACIÓN GRÁFICA DE LAS PARTICIPACIONES


19

DIAGRAMA DE OCURRENCIAS

•e1
•t1

•e1,t3 •t2
•e2
•e2,t2 •t3

•e3 •e3,t5 •t4


•e4,t6 •t5
•e4
•t6

ENTIDAD EMPLEADO RELACIÓN ENTIDAD


ASIGNADO ESCRITORIO
20
ATRIBUTO
• PARA ASOCIAR INFORMACIÓN A OCURRENCIAS DE
– ENTIDADES
– RELACIONES
SE USA EL CONCEPTO DE “ATRIBUTO”.

ATRIBUTO = DATO QUE SE ASOCIA A CADA OCURRENCIA


DE UNA ENTIDAD O UNA RELACIÓN

• CONJUNTO DE VALORES DE UN ATRIBUTO --> “DOMINIO”

NOMBRE PROYECTO TIPO

CODIGO

• EN LA PRACTICA LOS ATRIBUTOS NO SON


REPRESENTADOS GRÁFICAMENTE
• SE PUEDE USAR UNA REPRESENTACIÓN TEXTUAL
21

TIPOS DE ATRIBUTOS

• ATRIBUTOS

– SIMPLES O ATÓMICOS
– COMPUESTOS

UN ATRIBUTO PUEDE POSEER UNA “CARDINALIDAD”

• ATRIBUTOS

– UNIVALUADOS (CARDINALIDAD 1)
– MULTIVALUADOS (CARDINALIDAD N)
22

ATRIBUTOS DE UNA RELACIÓN

• COMO LAS ENTIDADES, TAMBIÉN LAS RELACIONES


PUEDEN POSEER ATRIBUTOS
NOMBRE
FUNCIÓN CODIGO
CODIGO TÍTULO

INGENIERO ASIGNADO PROYECTO

ATRIBUTOS DE UNA RELACIÓN N:M


23
IDENTIFICACIÓN DE ENTIDADES

– ATRIBUTO IDENTIFICADOR
– ATRIBUTO LLAVE

• CADA ENTIDAD DEBE POSEER UN “IDENTIFICADOR”

IDENTIFICADOR = CONJUNTO DE ATRIBUTOS CUYO VALOR SIRVE


PARA DISTINGUIR UNA OCURRENCIA DE UNA ENTIDAD DE LAS
DEMÁS OCURRENCIAS DE LA MISMA ENTIDAD.

• TIPO DE ATRIBUTOS IDENTIFICADORES


» ATRIBUTO SIMPLE O ÚNICO
» ATRIBUTO COMPUESTO
24

... ATRIBUTOS IDENTIFICADORES

EN UN DER LOS ATRIBUTOS IDENTIFICADOS SE SUBRAYAN

INDENTIFICADOR SIMPLE

NOMBRE

CÓDIGO PERSONA DIRECCIÓN

INDENTIFICADOR COMPUESTO
F/H INICIO

F/H FIN OBSERVACION


25
IDENTIFICADOR EXTERNO
Y
ENTIDADES DÉBILES

• IDENTIFICADOR EXTERNO --> EXISTEN CASOS EN QUE EL


IDENTIFICADOR DE UNA ENTIDAD ESTÁ COMPUESTO NO
SOLAMENTE POR ATRIBUTOS DE LA PROPIA ENTIDAD SI
NO TAMBIEN POR LAS RELACIONES EN LAS CUALES LA
ENTIDAD PARTICIPA.
• NO TIENEN SUFICIENTES ATRIBUTOS PARA FORMAR UN
IDENTIFICADOR.
• DICHAS ENTIDADES TOMAN EL NOMBRE DE “ENTIDADES
DÉBILES”(ENTIDADES CON DEPENDENCIA DE EXISTENCIA)
RELC. DÉBIL ENTIDAD DÉBIL

1 N
EMPLEADO TIENE DEPENDIENTE

CÓDIGO NOMBRE NOMBRE PARENTESCO

SEXO
26

GENERALIZACIÓN/ESPECIALIZACIÓN

• ADEMÁS DE LAS „RELACIONES‟ Y „ATRIBUTOS‟,


PROPIEDADES PUEDEN SER ATRIBUIDAS A LAS
ENTIDADES A TRAVÉS DEL CONCEPTO DE
GENERALIZACIÓN/ESPECIALIZACIÓN.
• ES POSIBLE ATRIBUIR PROPIEDADES „PARTICULARES‟ O
„ESPECÍFICAS‟ A UN SUBCONJUNTO DE LAS
OCURRENCIAS(ESPECIALIZADAS) DE UNA ENTIDAD
GENÉRICA
– ENTIDAD GENÉRICA--> SUPERCLASE O SUPERTIPO
– ENTIDAD ESPECIALIZADA-->SUBCLASE O SUBTIPO
• LA RELACIÓN ENTRE UNA SUPERCLASE (SUPERTIPO) Y
UNA DE SUS SUBCLASES (SUBTIPO), SE LLAMA UNA
RELACIÓN SUPERCLASE/SUBCLASE (RELACIÓN IS_A)
27

SÍMBOLO PARA REPRESENTAR GEN/ESP EN UNA


DERE

SUPERCLASE
EMPLEADO
RELACIÓN
SUPERCLASE
/SUBCLASE

SUBCLASE DOCENTE ADMINISTRATIVO

GENERALIZACIÓN/ESPECIALIZACIÓN
28

HERENCIA DE PROPIEDADES

• „HEREDAR‟ PROPIEDADES SIGNIFICA QUE CADA


OCURRENCIA DE LA ENTIDAD ESPECIALIZADA
(SUBCLASE) POSEE ADEMÁS DE SUS PROPIAS
PROPIEDADES (ATRIBUTOS, RELACIONES Y GEN/ESP)
TAMBIÉN TODAS LAS PROPIEDADES DE LA OCURRENCIA
DE LA ENTIDAD GENÉRICA CORRESPONDIENTE
(SUPERCLASE)
N CODIGO
1
FILIAL CLIENTE
NOMBRE

SEXO
d
ATRIBUTOS
PARTICULARES TIPO
PERSONA PERSONA ORGANIZACIÓN
ESPECÍFICOS C.I. FÍSICA JURÍDICA

RUC
29

GENERALIZACIÓN/ESPECIALIZACIÓN

• DERE ES EXPRESADO POR :


– TODA „PERSONA FÍSICA‟ TIENE COMO ATRIBUTOS:
» CÓDIGO, NOMBRE, CI, SEXO ESTÁ IDENTIFICADA POR EL
CÓDIGO Y ESTÁ OBLIGATORIAMENTE RELACIONADA A
EXACTAMENTE UNA FILIAL.
30

ESPECIALIZACIÓN

• ES EL PROCESO DE DEFINIR UN CONJUNTO DE


„SUBCLASES‟ DE MÁS BAJO NIVEL A PARTIR UNA
ENTIDAD DE MÁS ALTO NIVEL LLAMADA „SUPERCLASE‟
• PROCESO DE ESPECIALIZACIÓN PERMITE :
– DEFINIR UN CONJUNTO DE „SUBCLASES‟ PARA UNA ENTIDAD
– ASOCIAR ATRIBUTOS ADICIONALES „ESPECÍFICOS‟ CON
CADA SUBCLASE.
– ESTABLECER „RELACIONES ESPECÍFICAS‟ ADICIONALES
ENTRE CADA SUBCLASE Y OTRAS ENTIDADES.

AÑO

PTO-DOWN
PRECIO # PASAJERO

VEHICULO VEL. MAX.


NRO_PLACA

# EJES
COLOR TONELAJE CONTINUA...
31
... CONTINUA

COLOR NRO. PLACA


PRECIO

AÑO VEHICULO
SUPERCLASE

d
# EJES

AUTO SUBCLASE
CAMION
TONELAJE
# PASAJEROS
TIPO_GAS
VEL. MAX.

PROCESO DE ESPECIALIZACIÓN

• ESPECIALIZACIÓN ES EL PROCESO INVERSO DE LA GENERALIZACIÓN.


32

GENERALIZACIÓN

• PROCESO INVERSO DE LA „ESPECIALIZACIÓN‟ Y ES EL


RESULTADO DE LA UNIÓN DE DOS O MÁS ENTIDADES DE
BAJO NIVEL (SUBCLASES) A FIN DE PRODUCIR UNA
ENTIDAD DE MÁS ALTO NIVEL (SUPERCLASE)
# PASASJEROS PRECIO # EJES
VEL. MAX.
PRECIO
TONELAJE
AÑO AUTO COLOR
CAMION
ANO

NRO. PLACA
TIPO_GAS BUTTOM NRO. PLACA COLOR
UP

CONTÍNUA.....
PROCESO DE GENERALIZACIÓN 33
GENERALIZACION ES EL PROCESO INVERSO DE ESPECIALIZACION

# PLACA # AÑO
vehículo

# PRECIO # COLOR

D #EJES
SUPERCLASE

#PASAJEROS
AUTO CAMIÓN
VELOCIDAD
MAX
SUBCLASE
#EJES
TIPO_GAS
34

CLASIFICACIÓN DE LA
GENERALIZACIÓN/ESPECIALIZACIÓN

• DE ACUERDO CON LA OBLIGATORIEDAD O NO DE QUE A


UNA OCURRENCIA DE LA ENTIDAD GENÉRICA
(SUPERCLASE) CORRESPONDE UNA OCURRENCIA DE LA
ENTIDAD ESPECIALIZADA(SUBCLASE), LA GEN/ESP PUEDE
SER CLASIFICADA EN DOS TIPOS:
– GEN/ESP „TOTAL‟
– GEN/ESP „PARCIAL‟

GEN/ESP “ TOTAL ”

• PARA CADA OCURRENCIA DE LA ENTIDAD GENÉRICA


(SUPERCLASE) EXISTE SIEMPRE UNA OCURRENCIA EN
UNA DE LAS ENTIDADES ESPECIALIZADAS(SUBCLASES O
VICEVERSA)
35

... CLASIFICACIÓN DE LA
GENERALIZACIÓN/ESPECIALIZACIÓN

CLIENTE

TOTAL

PERSONA PERSONA
FÍSICA JURIDICA

GEN/ESP “ TOTAL “
36

GEN/ESP “ PARCIAL “

EMPLEADO

PARCIAL

INGENIERO SECRETARIA

• EN GENERAL UNA ENTIDAD PUEDE SER “ESPECIALIZADA” EN


CUALQUIER NÚMERO DE ENTIDADES. POR EJEMPLO SI SOLO LOS
INGENIEROS POSEEN PROPIEDADES PARTICULARES, EXISTIRÍA
ADEMÁS „UNA‟ ENTIDAD ESPECIALIZADA LA DE LOS
„INGENIEROS‟.
37

GEN/ESP PARCIAL

• USUALMENTE, CUANDO EXISTE UNE ESPECIALIZACIÓN


„PARCIAL‟, EN LA ENTIDAD GENÉRICA APARECE UN
ATRIBUTO QUE IDENTIFICA EL TIPO DE OCURRENCIA DE
LA ENTIDAD GENÉRICA (SUPERCLASE)

EMPLEADO TIPO_EMPL

TIPO_EMPL

INGENIERO SECRETARIA

ESPECIALIZACIÓN DEFINIDA POR ATRIBUTO


38

... CONT

• TAMBIÉN SE CONOCE COMO SUBCLASES DEFINIDAS POR


“PREDICADO” (O „CONDICIÓN)

GEN/ESP TOTAL

• ESTE ATRIBUTO „NO‟ ES NECESARIO EN EL CASO DE


ESPECIALIZACIONES „TOTAL‟, YA QUE LA PRESENCIA DE
LA OCURRENCIA CORRESPONDIENTE A LA ENTIDAD
GENÉRICA EN „UNA‟ DE SUS ESPECIALIZACIONES ES
SUFICIENTE PARA IDENTIFICAR EL TIPO DE LA ENTIDAD
39

RESTRICCIONES DE
GENERALIZACIÓN/ESPECIALIZACIÓN

» GEN/ESP DISJUNTA O EXCLUSIVA


» GEN/ESP SOBREPUESTA O NO EXCLUSIVA

GEN/ESP DISJUNTA O EXCLUSIVA

• CADA OCURRENCIA DE LA ENTIDAD GENÉRICA(SUPERCLASE)


APARECE PARA CADA JERARQUÍA DE
GENERALIZACIÓN/ESPECIALIZACIÓN A LO MAXIMO UNA SOLA
VEZ EN UNA ENTIDAD ESPECIALIZADA(SUBCLASE)
• EN UN DERE SE INDICA COLOCANDO LA LETRA “d” (DISJOINT) EN
EL CIRCULO QUE REPRESENTA LA RELACIÓN
SUPERCLASE/SUBCLASE.
40

RESTRICCIONES DE
GENERALIZACIÓN/ESPECIALIZACIÓN

EMPLEADO

DISJOINT
d

INGENIERO SECRETARIA

GENERALIZACIÓN/ESPECIALIZACIÓN DISJUNTA
41

GEN/ESP SOBREPUESTA O NO EXCLUSIVA

• CADA OCURRENCIA DE LA ENTIDAD GENÉRICA (SUPERCLASE)


PUEDE APARECER PARA CADA JERARQUÍA DE
GENERALIZACIÓN/ESPECIALIZACIÓN EN MÁS DE UNA ENTIDAD
ESPECIALIZADA(SUBCLASE)
• EN UN DERE SE INDICA COLOCANDO LA LETRA “O” (OVERLAP)
EN EL CIRCULO QUE REPRESENTA LA RELACIÓN
SUPERCLASE/SUBCLASE
PERSONA

OVERLAP
O

DOCENTE ADM ALUMNO

GEN/ESP SOBREPUESTA
42

JERARQUÍAS DE GENERALIZACIÓN/ESPECIALIZACIÓN

• UNA ENTIDAD ESPECIALIZADA (SUBCLASE) EN UNA GEN/ESP


PUEDE A SU VEZ SER UNA ENTIDAD GENÉRICA (SUPERCLASE)
EN ALGUNA OTRA GEN/ESP. FORMANDO “JERARQUÍA DE
GENERALIZACIÓN/ESPECIALIZACIÓN”
• RESTRICCIÓN : CADA ENTIDAD ESPECIALIZADA (SUBCLASE)
PARTICIPA EN „UNA‟ SOLA RELACIÓN CON LA ENTIDAD
GENÉRICA( SUPERCLASE)
• NO HAY LIMITE EN EL NÚMERO DE NIVELES JERÁRQUICOS DE
GENERALIZACIÓN/ESPECIALIZACIÓN
PERSONA

ESTUDIANTE
EMPLEADO

DOCENTE ADM PRE-GRADO POST-GRADO

JERARQUIA DE GEN/ESP
43

LÁTICE(RED) DE GENERALIZACION/ESPECIALIZACIÓN
MULTIPLES NIVELES

• UNA ENTIDAD ESPECIALIZADA (SUBCLASE) PUEDE SER UNA


ESPECIALIZACIÓN DE DIVERSAS ENTIDADES GENÉRICAS
(SUPERCLASE) LA LLAMADA “ HERENCIA MULTIPLE “
VEHICULO

d
MULTIPLES NIVELES DE VEHICULO
GEN/ESP. CON VEHICULO
ACUÁTICO
HERENCIA MULTIPLE TERRESTRE

d d

AUTOMOVIL VEHICULO BARCO


ANFIBIO

SUBCLASE „COMPARTIDA‟
44

HERENCIA MULTIPLE

• EJEMPLO DE „HERENCIA MULTIPLE‟ APARECE EN LA


ENTIDAD “VEHÍCULO ANFIBIO”
• VEHÍCULO ANFIBIO POSEE ADEMÁS DE SUS
„PROPIEDADES ESPECIFICAS‟ TANTO LAS PROPIEDADES
DE UN VEHÍCULO ACUÁTICO, COMO LAS PROPIEDADES DE
UN VEHÍCULO TERRESTRE.
45

ENTIDAD ASOCIATIVA

• EN EL MODELO ER NO FUÉ PREVISTA LA POSIBILIDAD DE


ASOCIAR UNA ENTIDAD CON UNA RELACIÓN Y POR LO TANTO
ASOCIAR DOS RELACIONES ENTRE SÍ.

MÉDICO N CONSULTA
M PACIENTE

• MODIFICAR EL DIAGRAMA CON LA ADICIÓN DE LA INFORMACIÓN


EN QUE CADA CONSULTA UNO O MÁS MEDICAMENTOS PUEDE
SER RECETADO A UN PACIENTE
– SE DEBE CREAR UNA NUEVA ENTIDAD „MEDICAMENTO‟
» PROBLEMA : ¿ CON QUE ENTIDAD DEBE ESTAR
RELACIONADA LA NUEVA ENTIDAD?
• CREANDO EL CONCEPTO DE “ENTIDAD ASOCIATIVA” QUE ES LA
REDEFINICIÓN DE UNA RELACIÓN QUE PASA A SER TRATADA
COMO SI FUERA TAMBIÉN UNA ENTIDAD.
46

ENTIDAD ASOCIATIVA

N M
MEDICO CONSULTA PACIENTE

N
ENTIDAD
ASOCIATIVA
RECETA

MEDICAMENTO
47
DIAGRAMA EQUIVALENTE

• EN CASO QUE NO SE DESEE USAR EL CONCEPTO DE


“ENTIDAD ASOCIATIVA” , SERÁ NECESARIO TRANSFORMAR
LA RELACIÓN „CONSULTA‟ EN UNA ENTIDAD.

MEDICO PACIENTE

1 1

N CONSULTA N

N
NUEVA
ENTIDAD
RECETA

MEDICAMENTO
48

SIMBOLOS GRÁFICOS USADOS EN EL DERE

SIGNIFICADO SIMBOLO

GRADO

UNARIA E1 R

BINARIA E1 R E2

TERNARIA E1 E2

E3
49

CONECTIVIDAD

1 1
1:1

1 N
1:N

N M
N:M
50
PARTICIPACION

1 N
Obligatoria

1 N
No obligatoria
SIGNIFICADO SIMBOLO 51
ENTIDAD REGULAR

ENTIDAD DEBIL

RELACION

RELACION DEBIL

ATRIBUTO

ATRIBUTO IDENTIFICADOR

ATRIBUTO MULTIVALUADO

ATRIBUTO COMPUESTO
.... SIMBOLOS GRAFICOS USADOS EN EL DERE 52

SIGNIFICADO SIMBOLO

ATRIBUTO COMPUESTO

PARTICIPACION OBLIGATORIA E1 R E2
DE E2 EN R

1 R N
CONECTIVIDAD 1:N E1 E2
53
.... SIMBOLOS GRAFICOS USADOS EN EL DERE

SIGNIFICADO SIMBOLO

GENERALIZACION / ESPECIALIZACION

CONJUNTO DE ENTIDADES ASOCIATIVAS


54

REGLAS DE TRANSFORMACION DEL MODELO “ERE” A


TABLAS RELACIONALES

Entidades regulares :
A

Atributo Atributo
Llave Simples

Tabla: A(a#, .. .. ..............)

Tabla: D(d#, a# .... . . . . . . . . . . . . . . )


55
REGLAS DE TRANSFORMACION DEL MODELO “ERE” A
TABLAS RELACIONALES

- Dos entidades una relacion binaria “una” a “una” (1:1)


- Ambas participaciones obligatorias (total)

1 1
A R B

A) Tablas : A(a# ,........) B (b# ,..........a#)


FK
valores nulos de a#, “NO” permitidos en la tabla B
B) Tablas : A (a# ,..........b#) B (b# ,..........)
FK
valores nulos de b#, “NO” permitidos en la tabla A
C) Tabla : A (a# ,...............,b#,..............)
Una sola tabla
56

REGLAS DE TRANSFORMACION DEL MODELO


“ERE” A TABLAS RELACIONALES

• - Una sola participación obligatoria

1 1
A R B

A) Tablas : A (a# ,..........)


B (b# ,.................a#)
FK
Valores nulos de a#, “NO” permitidos en la tabla B

B) Tablas : A ( a# ,....................b#,.....................)

Valores nulos permitidos en la tabla A


57

• - Ambas participaciones no obligatorias

1 1
A R B

A) Tablas : A (a# ,.............)


B (b# ,............,a#)
FK
Valores nulos permitidos en la tabla B

B) Tablas : A (a# ,............) B (b# ,......) R (a# ,b#,.....)

Valores nulos no permitidos en la tabla R


58

REGLAS DE TRANSFORMACION DEL MODELO “ERE” A


TABLAS RELACIONALES

• - Entidad con participación no obligatoria en el lado


“muchos” (N) y no obligatoria en el lado “uno” (1)

1 N
A R B

A) Tablas : A (a # ,..........)
B ( b # ,.............,a #)
FK
Valores nulos de a# permitidos en la tabla A

B) Tablas : A (a # ,.......) B(b# ,......) R(b#, a #,.......)

Valores nulos no permitidos en la tabla R


59

- Entidad con participación no obligatoria en el lado


“muchos” (N) y obligatoria en el lado “uno” (1)

1 N
A R B

A) Tablas : A (a# ,.............)


B (b# ,..........,a#)
FK
Valores nulos de a# “NO” permitidos en la tabla B
60
- Dos entidades - una relacion binaria “una” a “muchas” (1:N)

- Entidad con participación obligatoria en lado “muchos”(N) y no


obligatoria en el lado “uno” (1)

1 N
A R B

a) Tablas: A(a#,..... ) B(b#,........ a#)


FK
Valores nulos de a# “NO” permitidos en la tabla B
61
• - Entidad con participación obligatoria en lado “muchos” (N)
y obligatoria en el lado “uno”(1)

1 N
A R B

a) Tablas: A(a#,....... ) B(b#,.......... a#)


Fk

Valores nulos de a# “NO” permitidos en la tabla B


62
- Dos entidades - Una relación Binaria “Muchas” a “Muchas”
(M:N)

A N M B
A R B

a) Caso Obligatorio

A N M B
A R B

b) Caso ¨No¨ Obligatorio


63

A N M B
A R B

c) Participación ¨no¨ obligatoria en el lado (N) y


participación obligatoria en el lado (M)

A N M B
A R B

d) Participación obligatoria en el lado (N) y participación


¨no¨ obligatoria en el lado (M)

Tablas : A(a#,.....) B(b#,.....) R(a#,b#,......)


Pk
64

- Una entidad - una relación unaria (Recursiva)


- Relación ¨uno¨ a ¨uno¨ (1:1)
Ambas participaciones de la entidad en la relación
son ¨obligatorias¨

1 1
R

A) Tablas: A(a#, ..........., rol_a#)


Valores nulos del rol_a#, “NO” permitidos en la tabla A
A) Tablas : A(a#,.............,rol_a#) 65

- Ambas participaciones de la entidad en la


relación son ¨NO¨ obligatorias

1 1
R

a) Tablas : A(a#,.......,rol_a#)
Valores nulos de rol_a#, permitidos en la tabla A
- Relación ¨una¨ a ¨muchas¨ (1:N)
66
Ambas participaciones de la entidad en la
relación son ¨Obligatorias¨

1 N
R

a) Tablas : A(a#,.......,rol_a#)
Valores nulos de rol_a#, ¨No¨ permitidos en la tabla A
- Ambas participaciones de la entidad en la 67
relación son ¨ NO¨ obligatorias

1 N
R

a) Tablas : A(a#,.......,rol_a#)
Valores nulos de rol_a#, permitidos en la tabla A
- Relación ¨muchas¨ a ¨muchas¨ (N:M)
Ambas participaciones de la entidad en la 68
relación son ¨Obligatorias¨

N M
R

a) Tablas : A(a#,...............)
R(rol1_a#,rol2_a#,.............)
- Ambas participaciones de la entidad en la 69
relación son ¨ NO¨ obligatorias

N M
R

a) Tablas : A(a#,...............)
R(rol1_a#,rol2_a#,.............)
- Tres entidades-una relación ternaria con
conectividad (1:1:1) 70

1 1

A B
71
Tablas :
A(a#,...................)
B(b#,...................)
C(c#,...................)
R(a#,b#,c#,.........)
o
R(a#,b#,c#,.........)
o
R(a#,b#,c#,.........)
DF primarias :
a#,b# -------> c#
b#,c# -------> a#
a#,c# -------> b#
Tres entidades-una relación ternaria con
conectividad (1:1:N) 72

1 1

A B
Tablas : 73

A(a#,...................)
B(b#,...................)
C(c#,...................)
R(a#,b#,c#,.........)
o
R(a#,b#,c#,.........)

DF primarias :
a#,c# -------> b#
b#,c# -------> a#
Tres entidades-una relación ternaria
coneconectividad (1:N:M) 74

1 M

A B
Tablas : 75
A(a#,...................)
B(b#,...................)
C(c#,...................)
R(b#,c#,a#,.........)

DF primarias :
b#,c# -------> a#
Tres entidades-una relación ternaria con
conectividad (M:N:P) 76

N P

A B
Tablas : 77
A(a#,...................)
B(b#,...................)
C(c#,...................)
R(a#,b#,c#,.........)

DF primarias :
a#,b#,c# -------> 0
(Todas las llaves)
MAPEO DE ESPECIALIZACIONES/GENERALIZACIONES 78
Relación superclase / subclase - Especialización /
Generalización
a)

SUPERCLASE C

...
. d = Disjunta
. o = Sobrepuesta
...
.
.
.
.
.
.
.

N SUBCLASES S1 S2 ............. SM
b) Tablas :
79
C(C#,C1,.....)
S1(C#,S11,S12,.....)
Atributos específicos de S1
S2(C#,S21,S22,.....)
Atributos específicos de S2
S3(C#,S31,S32,.....)
Atributos específicos de S3
SN(C#,Sn1,Sn2,.....)
Atributos específicos de SN
Aplicable para cada restricción en la
Especialización / Generalización
. Disjunta
o
. Sobrepuesta
. Total
o
. Parcial
Mapeo Especializaciones/Generalizaciones 80
a)

d
N SUCLASES

S1 S2 ............... S3
81
b)
Tablas
S1 (C#,C1.............,S11,S12....... )
Atributos Específicos de S1
S2 (C#,C1...............,S21,S22........ )
Atributos Específicos de S2
SN (C#,C1,............,Sn1,Sn2....... )
Atributos Específicos de Sn
Solo aplicable si las restricciones en la
especialización/genera-
lización son:
•Disjuntas
•Total
82
PASO 1
MODELANDO LOS REQUERIMIENTOS USANDO
EL MODELO “ERE”

PASO 1.1 IDENTIFICAR ENTIDADES

PASO 1.2 IDENTIFICAR JERARQUIAS DE GENERALIZACION


Y/O ESPECIALIZACIÓN

PASO 1.3 DEFINIR ATRIBUTOS

PASO 1.4 IDENTIFICAR Y DEFINIR LAS RELACIONES ENTRE


ENTIDADES

PASO 1.5 INTEGRAR MULTIPLES VISTAS

PASO 1.6 DISEÑAR EL DIAGRAMA DERE


83
PASO 2
REGLAS DE TRANSFORMACION DEL MODELO
ERE A TABLAS RELACIONALES

PASO 2.1
– ENTIDADES REGULARES Y DÉBILES
– RELACIONES BINARIAS Y UNARIAS “UNA” A “MUCHAS” (1:N)
– RELACIONES BINARIAS Y UNARIAS “UNA” A “UNA” (1:1)
– JERARQUIAS DE GENERALIZACION
– JERARQUIAS DE ESPECIALIZACION

PASO 2.2
– RELACIONES UNARIAS Y BINARIAS “MUCHAS” A
“MUCHAS” (N:M)
– ATRIBUTOS MULTIVALUADOS
PASO 2.3
– RELACIONES TERNARIAS
84

MODELO DE DATOS ORIENTADO A OBJETOS

OBJETO

• UN OBJETO TIENE ASOCIADO:

 Conjuntode variables que contienen los datos del objeto.


- El valor de cada variable es un “OBJETO”.

Conjunto de mensajes a los que el objeto responde.

Un método que es un pedazo de código para implantar


cada mensaje.
- Un método devuelve un valor como “respuesta” al mensaje.
85

CLASE DE OBJETOS

• Agrupación de objetos similares.

• A cada uno de estos objetos se les llama una

instancia de su clase.
86
MECANISMOS BASICOS

PROCEDIMIENTO 1

PROCEDIMIENTO 2 DATOS

PROCEDIMIENTO 3

PARADIGMA TRADICIONAL
87

DATOS OBJETO
MENSAJE
MÉTODO

OBJETO DATOS
MENSAJE
MÉTODO

MENSAJE

DATOS OBJETO

MÉTODO

PARADIGMA ORIENTADO A OBJETOS


88

MODELO DE DATOS ORIENTADO A OBJETOS

ESPECIFICACION DE CLASES

CLASS < nombre clase >


PROPERTIES
{ Porpiedades visibles de la clase}
OPERATIONS

{ Operaciones en objetos de esta clase


que son visibles al usuario}
END < nombre clase >
89

EJEMPLO DE DEFINICION DE LA “CLASE LIBRO”

class Libro
properties
titulo: string;
fecha_de_publicacion: date;
publicado_por: editor;
escrito_por: autor;
operations
crear ( ) --> libro;
prestamo (libro,lector,fecha_préstamo);
reserva (libro, lector, fecha_reservación);
en_préstamo (libro) --> Boolean;
......
end Libro
• MECANISMO PARA DEFINIR UNA “CLASE” PERMITE: 90

„ Definir propiedades de entidades en términos de otras entidades‟

Por Ejemplo, la propiedad “publicado_por” está definida en tér-


minos de la clase “editor”.

class editor
properties
nombre: string;
localidad: city;
operations
create ( ) -->editor
.......

end editor
91

EL ROL DE LA HERENCIA
Generación / Especialización

• Permite definir nuevas clases a partir de clases


- SUPERCLASE
- SUBCLASE

• En sistemas orientados a objetos el concepto de “herencia”


donde objetos “especializados” heredan las propiedades y
operaciones (métodos) de objetos más “generalizados”

•Por ejemplo: --> SUPERCLASE: VEHÍCULO


SUBCLASES : AUTO,CAMION
92
CLASS Auto

INHERIT Vehículo

PROPERTIES
#pasajeros: integer;
velocidad_max: integer;
tipo_gas: (extra,premiun);
CONSTRAINS
if año>1990 then tipo_gas:=premiun;

OPERATIONS
nuevo_auto ( );
valor_auto ( );
END Auto
93

MODELAR EN BDO2

1.- Identificar Entidades/Objetos


2.- Identificar los Atributos
3.- Identificar las Funciones que se aplican
sobre cada objeto (metodos)
4.- Establecer la interface que cada objeto
presenta con otros objetos
5.- Implantar los objetos
94

CARACTERISTICAS ADICIONALES DE LAS


BDO2

* No hay fraccionamiento de las entidades modeladas. (no se


normaliza)
* Pueden representarse atributos multivaluados (evita
descomposición)
* Las restricciones de integridad vienen dentro de la clase
*Inclusión de disparadores.
95

CASO DE ESTUDIO
MODELO ENTIDAD-RELACION-EXTENDIDO

nominst nomautor
direccion nacionalidad

INSTITUTO
DHFHL AUTOR fecha-nac

1 N
tipo
escribe
produce #art #vol

N M
N
titulo
ARTICULO refiere
journal M
N
año #contrato monto
contiene
nom-virus (IS-A)
M fecha-f
N 1
descripcion ARTICULO- financiado
VIRUS CONTRATO fecha-i
INTERNO
96

ESQUEMA RELACIONAL NORMALIZADO

* Esquema relaciónal normalizado completo aplicando las


reglas de mapeo.
ARTICULO(#art, título, journal, #vol, año, nominst)
PK FK
AUTOR(nomautor, nacionalidad, fechanac)
PK
INSTITUTO(nominst, dirección, tipo)
PK
VIRUS(nomvirus, descripcion)
PK
CONTRATO(#contrato, monto, fecha-i, fecha-f)
PK
97

ARTICULO-INTERNO(#art, #contrato)
PK FK
ESCRIBE(#art, nomautor)
FK FK
Pk
REFIERE(#art, #artref)
FK FK
PK
CONCIERNE(#art, nomvirus)
FK FK
PK
98

ESQUEMA B.D. ORIENTADO A OBJETOS


Lista de definiciones de clases

Class Artículo
Properties
título : string
pubicación : Tipo journal
instituto : Instituto
escribe : Set (autor)
inverse is Autor.articulos
concierne : Set (virus)
inverse is Virus.cubierto_por
refiere : Set (Articulo)
Operations
create(......)
End Articulo
99

Class Articulo_Interno
inherit Articulo
Properties
contrato_asociado : Contrato
inverse is Contrato.reportes;
Operations
create (..........)
................
End Articulo_Interno
100

Class Autor
Properties
nombre : String;
nacionalidad : Tipo Nacionalidad;
fecha nac : Date;
...........
Operations
create (.........)
..................
End Autor
101

Class Instituto
Properties
nombre, dirección: String;
tipo : Tipo Instituto;
..............
Operations
create (..........)
............
End Instituto
102

Class Virus
Properties
nombre : String;
descripción : String ;
cubierto_por : Set (Articulo)
inverse is Articulo.Concierne;
Operations
create (..........)
...........
End Virus
103

Class Contrato
Properties
#contrato,monto : Integer;
fecha-i, fecha-f : Date;
reportes : Set (Articulo_Interno)
inverse is
Articulo_Interno.Contrato_asociado
Operations
create (...........)
...........
End Contrato

Vous aimerez peut-être aussi