Sie sind auf Seite 1von 6

ESPECIALIZACIN

Es el proceso de definir un conjunto de subclases a partir de una entidad tipo


(superclase). As el conjunto de subclases {ANALISTA, PROGRAMADOR,
CONSULTOR} es una especializacin de la superclase TCNICO.

Pueden existir varias especializaciones de una misma entidad tipo.

La especializacin permite

Asociar atributos especficos a cada subclase.

Establecer interrelaciones adicionales entre las subclases y otras entidades.

GENERALIZACIN
Es el proceso de abstraccin inverso a la especializacin.

Se suprimen las diferencias entre varios tipos de entidades y generalizamos sus


caractersticas comunes para formar una entidad superclase.

Ej. Tenemos las entidades COCHE y CAMIN.

Mediante un proceso de generalizacin obtenemos la entidad VEHCULO.


El proceso inverso consiste en ver COCHE y CAMIN como una especializacin de
la superclase VEHCULO.

CARACTERIZACIN DE LA ESPECIFICACIN/GENERALIZACIN
Dependiendo de que las ocurrencias de alguna subclase puedan aparecer o no en
ms de una subclase podemos diferenciar entre:

Subclases disjuntas.

Subclases solapadas.

Cuando una ocurrencia de la superclase puede aparecer en ms de una subclase


decimos que las subclases son solapadas.

Se representa por la letra o (overlapping) :

Cuando una ocurrencia de la superclase solo aparece en una nica subclase


decimos que las subclases son disjuntas.

Se representa por la letra d(disjoint) :

Atendiendo al nivel de recubrimiento de la poblacin (ejemplares/ocurrencias) de


la superclase respecto a la poblacin de las superclases pueden representarse dos
tipos de jerarquas:

Jerarqua total

Jerarqua parcial

Cuando toda ocurrencia de la superclase aparece al menos en una subclase se


dice que la jearqua es total.

Se representa por:
Cuando en la superclase existen ocurrencias que no aparecen en ninguna de las
subclases se dice que la jerarqua es parcial.

Se representa por:

Ej. Todas las piezas se compran o fabrican y una pieza puede ser
comprada y fabricada

Existen dos razones principales que aconsejan la definicin de superclases y


subclases:

Hay atributos que no pueden ser aplicables a todas las ocurrencias de la entidad.
Por ej. slo nos interesa saber los aos de experiencia de los consultores y no de
los analistas y programadores.

Algunas ocurrencias de la entidad tienen interrelaciones adicionales con otras


entidades. Por ej. slo los analistas dirigen proyectos (slo los analistas se
interrelacionan con los proyectos).

JERARQUA DE GENERALIZACIN/ESPECIALIZACIN
Es posible especificar subclases de una subclase formando una jerarqua de
generalizacin/especializacin:
EMPLEADO es una subclase de PERSONA y es tambin una superclase de
{ADMINISTRATIVO, PROFESOR}. Esto implica la restriccin de que todo profesor ha
de ser un empleado.

Una subclase puede ser subclase en ms de un vnculo clase/subclase.

Ej. JEFE_PROYECTO es una subclase de CONSULTOR y de ASALARIADO. Por tanto


para ser JEFE_PROYECTO es necesario ser CONSULTOR y ASALARIADO.
JEFE_PROYECTO es una subclase compartida.

HERENCIA DE ATRIBUTOS
Una entidad que es miembro de una subclase hereda todos los atributos de la
superclase. Por tanto la subclase posee sus atributos especficos ms los que
hereda como miembro de la superclase.

La herencia es un intento de adaptacin de estos diagramas al paradigma


orientado a objetos. La herencia es un tipo de relacin entre una entidad "padre" y
una entidad "hijo". La entidad "hijo" hereda todos los atributos y relaciones de la
entidad "padre". Por tanto, no necesitan ser representadas dos veces en el
diagrama. La relacin de herencia se representa mediante un tringulo
interconectado por lneas a las entidades. La entidad conectada por el vrtice
superior del tringulo es la entidad "padre". Solamente puede existir una entidad
"padre" (herencia simple). Las entidades "hijo" se conectan por la base del
tringulo.

La herencia puede hallarse en el nivel de los tipos o en el nivel de las tablas.

Herencia de tipos.- Los tipos derivados heredan los atributos de superclase; los
mtodos tambin se heredan por sus subtipos, al igual que los atributos. Sin
embargo, un subtipo puede redefinir el efecto de un mtodo declarndolo de
nuevo, y esto ser lo que se conoce como sobre-escritura (overriding) del mtodo.
Ejemplo
CREATE TYPE Persona (nombre VARCHAR(20), direccion VARCHAR(20))

Con esto se necesita definir varios tipos de personas:

CREATE TYPE Estudiante UNDER Persona (curso VARCHAR(20), departamento


VARCHAR(20));
CREATE TYPE Profesor UNDER Persona (sueldo INTEGER, departamento
VARCHAR(20)) ;

Herencia de tablas.- Cada tabla almacena la clave primaria, que se puede


heredar de una tabla padre; y los atributos definidos localmente. Los atributos
heredados, aparte de la clave primaria, no ser necesario guardarlos, podrn
obtenerse mediante una reunin con la supertabla basada en la clave primaria. Por
lo que cada tabla almacena todos los atributos heredados y definidos localmente.

Cuando se inserta una tupla, se almacena slo en la subtabla en la que se inserta y


su presencia se infiere en cada supertabla. El acceso a todos los atributos de una
tupla es ms rpido, dado que no se requiere una reunin:

Ejemplo
CREATE TABLE estudiantes OF Estudiante UNDER persona;

AGREGACIN

La agregacin es un concepto de abstraccin para construir objetos compuestos a


partir de sus objetos componentes.

Permite combinar entidades entre las que existe una interrelacin y formar una
entidad de ms alto nivel. Es til cuando la entidad de ms alto nivel se tiene que
interrelacionar con otra entidad. En la agregacin si se elimina la entidad agregada
se eliminan adems las entidades que la forman

Ej. Un tcnico puede trabajar en varios proyectos y en un proyecto trabajan varios


tcnicos. Como consecuencia del trabajo de un tcnico en un proyecto puede
publicar uno o varios artculos.

Das könnte Ihnen auch gefallen