Unidad I Clase1

44
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 1

Transcript of Unidad I Clase1

Page 1: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 1

Page 2: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe

UNIDAD II Parte II

Capitulo 4

Modelo Entidad Relación Extendido

(EER)

Page 3: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 3

Esquema del Capitulo

EER representación mejorada del ER o ER extendido.

EER Conceptos Modelo Incluye todos los conceptos básicos de modelado de ER

Conceptos adicionales: subclases / superclases

especialización / generalización

categorías (tipos de unión)

atributo y relación de herencia

Estos son fundamentales para el modelado conceptual Los conceptos EER adicionales se utilizan para modelar

aplicaciones más completa y con mayor precisión

EER incluye algunos conceptos orientados a objetos, tales como la herencia

Page 4: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 4

Subclase y Superclase (1) Un tipo de entidad puede tener otros subgrupos

significativos de sus entidades

Ejemplo: empleado puede estar más agrupados en:

SECRETARIO, ingeniero, técnico, ...

Basado en el trabajo del empleado

GERENTE

Los empleados que son los gerentes

EMPLEADO ASALARIADO

«SALARIED_EMPLOYEE», EMPLEADO POR

HORA «HOURLY_EMPLOYEE»

Basado en el método de pago del empleado

Diagramas EER amplia diagramas ER para representar

estos subgrupos adicionales, llamados subclases o

subtipos.

Page 5: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 5

Superclase y Subclase

Page 6: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 6

Subclase y Superclase (2)

Cada uno de estos subgrupos es un subconjunto de

entidad EMPLEADO

Cada uno es llamado una subclase de EMPLEADO.

EMPLEADO es superclase para cada una de estas

subclases

Estos son llamados superclase / subclase relaciones:

EMPLEADO / SECRETARIA

EMPLEADO / TÉCNICO

EMPLEADO / ADMINISTRADOR

Page 7: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 7

Subclase y Superclase (3)

Éstos también se llaman relaciones IS-A «es un»

SECRETARIO ES-UN EMPLEADO, TÉCNICO ES-UN EMPLEADO, ....

Nota: Una entidad que sea miembro de una subclase representa la misma entidad del mundo real como algún miembro de la superclase:

El miembro de la subclase es la misma entidad en una función específica y diferenciada

Una entidad no puede existir en la base de datos sólo por ser miembro de una subclase, sino que también debe ser un miembro de la superclase

Un miembro de la superclase puede incluir opcionalmente como miembro de cualquier número de sus subclases

Page 8: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 8

Subclase y Superclase (4)

Ejemplos:

Un asalariado que también es un ingeniero pertenece a las

dos subclases:

INGENIERO, y

Empleado Asalariado «SALARIED_EMPLOYEE»

Un asalariado que también es director de ingeniería

pertenece a las tres subclases:

GERENTE,

INGENIERO, y

SALARIED_EMPLOYEE «empleado asalariado»

No es necesario que cada entidad en una superclase ser

miembro de alguna subclase.

Page 9: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 9

Representación de Especialización en

Diagrama EER

Page 10: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 10

Herencia de Atributo en la Relación

SuperClase/Subclase

Una entidad que es miembro de una subclase hereda.

Todos los atributos de la entidad como miembro de la superclase

Todas las relaciones de la entidad como miembro de la superclase.

Ejemplo:

En la diapositiva anterior, SECRETARIO (así como el técnico y el ingeniero) heredan el nombre de los atributos, número de seguro social, ..., de EMPLEADO.

Cada entidad SECRETARIO tendrán valores de los atributos heredados.

Page 11: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 11

Especialización (1)

La especialización es el proceso de definir un

conjunto de subclases de una superclase.

El conjunto de subclases se basa en algunas de

las características distintivas de las entidades en

la superclase.

Ejemplo: {SECRETARIA, INGENIERO, TECNICO}

es una especialización de base EMPLEADO al

tipo de trabajo.

Puede tener varias especializaciones de la misma

superclase

Page 12: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 12

Especialización (2)

Ejemplo: Otra especialización de EMPLEADO basado en

el método de pago es {SALARIED_EMPLOYEE,

HOURLY_EMPLOYEE}.

Superclase / subclase relaciones y la especialización puede

ser representado esquemáticamente en los diagramas EER

Los atributos de una subclase se denominan atributos

específicos o locales.

Por ejemplo, el atributo Velocidad de Tipeo

«TypingSpeed» SECRETARIO

La subclase también pueden participar en los tipos de

relación específica.

Por ejemplo, una relación de PERTENECE A

«BELONGS_TO» Empleado por

Hora«HOURLY_EMPLOYEE»

Page 13: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 13

Especialización (3)

Page 14: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 14

Generalización

La generalización es el reverso del proceso de

especialización

Varias clases con características comunes son

generalizadas en una superclase;

clases originales se convierten en sus subclases

Ejemplo: coche, camión generalizado en el vehículo;

tanto en coche, camión convertido en subclases de la

superclase VEHÍCULO.

Podemos ver {COCHE, CAMION} como una

especialización de VEHICULO

Alternativamente, podemos ver VEHÍCULO como una

generalización de Automóviles y Camiones

Page 15: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 15

Generalización (2)

Page 16: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 16

Generalización y Especialización (1)

Notación diagramática se utiliza a veces para distinguir entre la generalización y la especialización

Flecha que apunta a la superclase generalizada representa una generalización

Las flechas apuntan a las subclases especializadas representan una especialización

No usamos esta notación, ya que es a menudo subjetiva en cuanto a qué proceso es más apropiado para una situación particular

Page 17: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 17

Generalización y Especialización(2)

Modelado de datos con Especialización y

generalización

Un superclase o subclase representa una

colección (o un conjunto o agrupación) de las

entidades

También representa un tipo particular de entidad

Se muestra en rectángulos en diagramas EER

(como lo son los tipos de entidad)

Podemos llamar a todos los tipos de entidad (y

sus colecciones correspondientes) clases, ya sean

los tipos de entidad, superclases, o subclases.

Page 18: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 18

Constraints sobre Generalización y

Especialización (1)

Si podemos determinar con exactitud las

entidades que se convertirán en miembros de

cada subclase de una condición, las subclases

se llaman subclases de predicados definidos

(o condición definida)

La condición es una restricción que determina los

miembros de la subclase

Mostrar una subclase predicado definido por

escrito la condición determinante junto a la línea

de fijar la subclase de su superclase

Page 19: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 19

Constraints sobre Generalización y

Especialización(2)

Si todas las subclases de una especialización tienen condición de pertenencia en el mismo atributo de la superclase, la especialización se llama una especialización definida por atributo. Atributo que se llama el atributo definitorio de la

especialización.

Ejemplo: JobType es la característica definitoria de la especialización {SECRETARIO TÉCNICO, INGENIERO} de EMPLEADO

Si ninguna condición determina la pertenencia, la subclase se llama definida por el usuario La pertenencia a una subclase está determinada por los

usuarios de bases de datos mediante la aplicación de una operación para añadir una entidad a la subclase

La pertenencia a la subclase se especifica de forma individual para cada entidad en la superclase por el usuario

Page 20: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 20

Mostrando una especialización definida

por un Atributo en Diagramas Entidad-

Relación Extendido.

Page 21: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 21

Constraints sobre Generalización y

Especialización (3)

Dos restricciones básicas se pueden aplicar a

una especialización / generalización:

Disjunción de restricciones.

Restricción de integridad .

Page 22: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 22

Constraints sobre Generalización y

Especialización(4)

Disjunción de restricciones:

Especifica que las subclases de la especialización

debe ser disjuntos:

una entidad puede ser miembro de la mayoría en

una de las subclases de la especialización

Especificado por d en el diagrama EER

Si no disjuntos, la especialización es la traslapada

o solapada de:

que es la misma entidad puede ser miembro de

más de una subclase de la especialización

Especificada por o en el diagrama EER

Page 23: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 23

Constraints sobre Generalización y

Especialización (5)

Restricción de integridad:

Total : especifica que todas las entidades en la

superclase debe ser miembro de alguna subclase

de la especialización / generalización

Se muestra en diagramas EER por una doble

línea

Parcial :permite a una entidad que no

necesariamente pertenezca a ninguna de las

subclases

Se muestra en diagramas EER por una sola línea

Page 24: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 24

Constraints sobre Generalización y

Especialización (6)

Por lo tanto, tenemos cuatro tipos de

especialización / generalización:

Disjunta, Total

Disjunta, parcial

Traslapada, total

Traslapada , Parcial

Nota: La generalización suele ser total, porque la

superclase se deriva de las subclases.

Page 25: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 25

Ejemplo de una Especialización

disjunción parcial

Page 26: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 26

Ejemplo de Especialización Traslapada Total

Page 27: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 27

Especialización / Generalización Jerarquías ,

Redes y subclases compartidas(1)

Una subclase puede tener subclases que se

indicarán sobre este

forma una jerarquía o un red

La jerarquía tiene una restricción que cada

subclase tiene sólo un superclase (llamada

herencia simple), lo que es básicamente una

estructura de árbol.

En una red, una subclase puede ser subclase de

más de una superclase (llamada herencia

múltiple)

Page 28: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 28

Subclase Compartida “Engineering Manager”

Page 29: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 29

Especialización / Generalización Jerarquías

, Redes y subclases compartidas(2)

En una red o jerarquía, una subclase hereda los atributos,

no sólo de su superclase directa, sino también de todos

sus superclases predecesores

Una subclase con más de una superclase se denomina

subclase compartida (herencia múltiple)

Puede tener:

jerarquías de especialización o red, o

jerarquías de generalización o red,

dependiendo de cómo se derivaron

Nos limitamos a usar la especialización (para representar

el resultado final de cualquiera de especialización o

generalización)

Page 30: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 30

Especialización / Generalización Jerarquías ,

Redes y subclases compartidas(3)

En la especialización, comience con un tipo de entidad y

luego defina las subclases de la especialización por tipo

de entidades sucesivas. llamado de arriba hacia abajo proceso de refinamiento conceptual

En la generalización, comience con muchos tipos de

entidad y generalice los que tienen propiedades comunes

Llamado un proceso ascendente síntesis conceptual

En la práctica, una combinación de ambos procesos se

suele utilizar

Page 31: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 31

Ejemplo de Red Especialización /

Generalización Universidad (UNIVERSITY)

Page 32: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 32

Categorias (TIPOS UNION ) (1)

Todos las relaciones superclase / subclase que hemos

visto hasta el momento tienen una superclase única.

Una subclase compartida es una subclase en:

más de una distinta superclase /subclase relación

cada relación tiene una singular superclase

subclase compartida conduce a la herencia múltiple

En algunos casos, necesitamos un modelo único de

relación superclase / subclase con más de una

superclase

Superclases puede representar diferentes tipos de

entidad

Esta subclase se llama categoría o tipo UNIÓN

Page 33: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 33

Categorias (TIPOS UNION ) (2)

Ejemplo: En una base de datos de registro del vehículo,

propietario de un vehículo puede ser una persona, un

banco (la asignación de un gravamen sobre un vehículo o

una empresa).

Una categoría (tipo de unión) llamado PROPIETARIO se

crea para representar a un subconjunto de la unión de las

tres superclases EMPRESA, BANCO y PERSONA.

Un miembro de la categoría debe existir por lo menos en

una de sus superclases

Diferencia con la subclase compartida, que es un:

subconjunto de la intersección de sus superclases

miembro compartido subclase debe existir en todas sus

superclases

Page 34: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 34

Dos Categorias(tipos UNION ):

OWNER “DUEÑO”, “REGISTRO

VEHICULO” REGISTERED_VEHICLE

Page 35: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 35

Definición Formal de un modelo

Entidad Relación Extendido(ERE) (1) Clase C

Un tipo de entidad con un conjunto correspondiente de las entidades:

podría ser el tipo de entidad, subclase, superclase, o categoría

Nota: La definición del tipo de relación en ER / EER deben tener «tipo de entidad» sustituido con la «clase» para permitir las relaciones entre las clases en general

Subclase S es una clase que:

Tipo hereda todos los atributos y la relación de una clase C

Conjunto de entidades debe ser siempre un subconjunto del conjunto de entidades de la otra clase C

S ⊆ C

C es llamada la superclase de S

Una Relación Superclase/Subclase existe entre S y C

Page 36: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 36

Definición Formal de un modelo

Entidad Relación Extendido(ERE)(2)

Especialización Z: Z = {S1, S2,…, Sn} es un conjunto de subclases com la misma superclase G; por lo tanto, G/ Si es una relación para i = 1, …., n. G es llamado una generalización de las subclases

{S1, S2,…, Sn}

Z es total si Nosotros siempre tenemos: S1 ∪ S2 ∪ … ∪ Sn = G;

Caso contrario, Z is parcial.

Z es disjunta si nosotros siempre tenemos: Si ∩ S2 Conjunto Vacio for i ≠ j;

Caso Contrario, Z es traslapada.

Page 37: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 37

Definición Formal del modelo ERE(3)

Subclase S de C es predicado definido si predicado ( condición) p sobre atributos de C es usado para especificar la pertenencia en S;

Esto es, S = C[p], donde C[p] es el conjunto de entidades en C que satisface condición p.

Una subclase no definida por un predicado es llamado usuario definido

Especialización Atributo-definido: Si un predicado A= ci( Donde A es un atributo de G and ci es un valor constante para el dominio de A) es usado para especificar pertenencia en cada subclase Si en Z Nota: Si ci ≠ cj para for i ≠ j, y A es valor-singular , entonces la

especialización atributo-definido será disjunta.

Page 38: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 38

Definición Formal del módelo ERE(4)

Categoria o tipo UNION T

Una clase que es un subconjunto de la union de n

definiendo superclases D1, D2,…Dn, n>1:

T ⊆ (D1 ∪ D2 ∪ … ∪ Dn)

Puede tener un predicado pi sobre los atributos de

Di para especificar entidades de Di que son

miembros de T.

Si un predicado es especificado sobre cada Di: T

= (D1[p1] ∪ D2[p2] ∪…∪ Dn[pn])

Page 39: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 39

Alternativas de notaciones diagramaticas

Diagramas de ER / EER son una notación

específica para la visualización de los conceptos

del modelo de diagrama

Herramientas de diseño de base de datos utilizan

muchas notaciones alternativas para los mismos

conceptos o similares.

Una notación alternativa popular utiliza

diagramas de clases UML.

Ver diapositivas siguientes para los diagramas de

clases UML y otras notaciones alternativas.

Page 40: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 40

Ejemplo de Despliegue Especialización

/Generalización en UML

Page 41: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 41

Notaciones Alternativas

Page 42: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 42

Conceptos Generales de Modelo Conceptual

Abstración General de Datos

CLASIFICACIÓN E INSTANCIACION

AGREGACION Y ASOCIACION(relaciones)

GENERALIZACION Y ESPECIALIZACION

IDENTIFICACION

CONSTRAINTS ( RESTRICCIONES)

CARDINALIDAD (Min y Max)

COBERTURA (Total vs. Parcial, Exclusiva (disjunta vs. Traslapada)

Page 43: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 43

Ontologias

El uso de modelado conceptual y otras herramientas para desarrollar «una especificación de una

conceptualización» Determinación se refiere a la lengua y el vocabulario (conceptos

de modelo de datos) utilizados.

Conceptualización se refiere a la descripción (esquema) de los conceptos de un determinado campo del conocimiento y las relaciones entre estos conceptos

Ontologías Muchos médicos, científicos y de ingeniería se están desarrollando como un medio para la normalización de conceptos y la terminología

Page 44: Unidad I Clase1

Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4- 44

Resumen

Introducción a Conceptos del Modelo Entidad

Relación Extendido(ERE).

Clase/subclase

Especialización y Generalización

Herencia

Estos aumentan los conceptos básicos del

modelo Entidad-Relación introducidos en el

Capítulo 3.

Diagramas ERE y notaciones alternativas que

fueron presentadas.