Está en la página 1de 50

abr-06 Tema 3: Bases de Datos Orientadas a Objetos

- 1
Tema 3: Bases de Datos Orientadas
Tema 3: Bases de Datos Orientadas
a Objetos
a Objetos
1. Introduccin a las BDOO
2. Conceptos de las BDOO
3. Estndares y Sistemas
4. Diseo de BDOO
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 2
Tema 3: BDOO. Introducci
Tema 3: BDOO. Introducci

n
n
OO => Tcnica de desarrollo de sw que permite resolver
algunos problemas clsicos de la IS
IS => aspectos dinmicos del sw
BD =>aspectos estticos del almacenamiento de
informacin
CONCEPTOS DISTINTOS
Con la aparicin de la tercera generacin de SGBD:
SGBDOO y SGBOR, las dos disciplinas se anan
permitiendo el modelado concurrente (datos + procesos)
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 3
Tema 3: BDOO. Introducci
Tema 3: BDOO. Introducci

n
n
SGBD tradicionales buenos para: aplicaciones bancarias,
sistemas de gestin de billetes electrnicos, productos de
almacn, .
Inconvenientes:
* Aplicaciones CAD, CAM
* Aplicaciones CASE
* Sistemas de gestin de red
* Sistemas multimedia
* Autoedicin digital
* Sistemas GIS
* Web sites dinmicos
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 4
Tema 3: BDOO. Introducci
Tema 3: BDOO. Introducci

n
n
Los SGBDR adolecen de:
* Pobre representacin del mundo real. El proceso de
normalizacin hace que se produzca prdida de
semntica y se ralentice la recuperacin
* Sobrecarga semntica. Un nico constructor para
todo (relacin)
* Soporte inadecuado para restricciones. Deben ser
incluidas en las aplicaciones
* Estructura de datos homognea. Modelo de datos
plano y restringido horizontal y verticalmente
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 5
Tema 3: BDOO. Introducci
Tema 3: BDOO. Introducci

n
n
Los SGBDR adolecen de:
* Operaciones limitadas. SQL permite solo un conjunto
finito de operaciones y recursividad limitada en
consultas
SQL3 trata de incluir operaciones para resolver las
deficiencias anteriores, tratando de incluir nuevas
funcionalidades.
SGBDOO tratan de hacer lo mismo, pero de manera
integrada entre el lenguaje de programacin y el modelo
de datos del SGBD.
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 6
Tema 3: BDOO. Introducci
Tema 3: BDOO. Introducci

n
n
Generaciones de sistemas de bases de datos
M.D. Jerrquico
M.D. ER
M.D. Relacional
M.D. en Red
M.D. Semnticos
M.D. Objeto-Relacionales M.D. Orientados a Objetos
1960-1970
Cod, E.1970
Chen, P.1976
Hammer y McLeod, 1981, Su, 1983
1 Generacin
2 Generacin
3 Generacin
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 7
Tema 3: BDOO. Introducci
Tema 3: BDOO. Introducci

n
n
Almacenamiento de objetos en BDR
SGBDR, un mecanismo para conseguir la persistencia de los objetos
correspondencias o mapping entre objetos y tuplas
Mecanismos de transformacin M. Conceptual => M. Lgico
clases => relaciones
objetos => tuplas
Cdigo de descomposicin
+
cdigo de recomposicin
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 8
Tema 3: BDOO. Introducci
Tema 3: BDOO. Introducci

n
n
Beneficios potenciales de las BDOO:
Mejora la calidad del sw
Disminuye los tiempos y costes de desarrollo y
mantenimiento
Incrementa la reutilizacin del sw
Facilita la integracin del sistema
Facilita la representacin de datos multimedia
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 9
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
Conceptos de la Orientacin a Objetos
1) Abstraccin y encapsulacin
2) Objetos y Atributos
3) Identidad de los objetos
4) Mtodos y paso de mensajes
5) Clases
6) Subclases, superclases y herencia
7) Anulacin y sobrecarga
8) Polimorfismo y enlace dinmico
9) Objetos complejos
Mundo Real = Objetos que tienen un IDO
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 10
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
1) Abstraccin y encapsulacin
Abstraccin: proceso mediante el que identifican los aspectos
esenciales de un objeto o entidad, separando el diseo de los
detalles de implementacin
=> encapsulacin y ocultacin de la informacin
Encapsulacin: cada objeto contiene, tanto la estructura de
los datos, como las operaciones para manipularlo (TAD)
Ocultacin de informacin: proporciona independencia de los
datos al ocultar los detalles internos de cada objeto
Objeto = caja negra
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 11
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
2) Objetos y Atributos
Objeto: entidad unvocamente identificable que contiene
tanto a los atributos que describen el estado de un objeto del
mundo real, como las acciones asociadas con l.
Estado + Comportamiento
Estado: coleccin de atributos que definen a un objeto
(variables de instancia) = ENTIDAD
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 12
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
2) Objetos y Atributos
Simples
Colecciones (atributos complejos)
Referencias
Atributos
Yolanda Surez, Antonio Garca Plantilla
Pilar Gonzlez Directora
28911 Cdigo postal
Legans Ciudad
Butarque, 15 Calle
6172 Cod_sucursal
Valor Atributo
Referencias a objetos
plantilla (FKs)
Coleccin (att. multivaluado)
SucursalObject.Calle
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 13
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
3) Identidad de los objetos
Todo objeto se identifica unvocamente a travs de su OID
.
Propiedades de un OID:
Creado por el sistema
Exclusivo de cada objeto y por sistema
Invariante en el tiempo y no reutilizable
Independiente del estado del objeto
Invisible al usuario
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 14
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
3) Identidad de los objetos
OID ms restrictivo que pk (nica por cada relacin)
Ventajas de los OID:
Eficientes Mnimo espacio de almacenamiento
Rpidos direccin real
No modificables se mantiene la integridad
Independientes del contenido
Redundancia de objetos?
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 15
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
3) Identidad de los objetos
Objetos idnticos <=> OIDs iguales (BDD) (=)
Objetos iguales <=> estados iguales (= =)
igualdad profunda mismos valores en a. ref
igualdad somera distintos valores en a.ref
Necesidad de clave primaria
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 16
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
4) Mtodos y mensajes
Mtodo: define el comportamiento de un objeto
cambio de estado de un objeto => update (attributos)
consulta de estado de un objeto
method void updateSalario (float inc)
{
salario = salario + inc;
}
Mensaje: comunicacin entre objetos. Peticiones
empleadosObject.updateSalario(1000)
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 17
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
5) Clases
Patrones que agrupan objetos con los mismos atributos y que
responden a los mismos mensajes.
Sucursal
Atributos:
Cod_sucursal
Calle
Ciudad
Codpostal
Mtodos:
print()
getCodpostal()
numeroSucursales()
Cod_sucursal = 006
Calle = Alcala, 27
Ciudad = Madrid
.
Cod_sucursal = 005
Calle = Rosas, 3
Ciudad = Madrid
.
Cod_sucursal = 007
Calle = Butarque, 15
Ciudad = Legans
.
CLASE INSTANCIAS DE CLASE
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 18
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
6) Subclases, superclases y herencia
Herencia: permite definir una clase (SUBCLASE) como un
caso especial de otra clase ms general (SUPERCLASE)
SUPERCLASE
SUBCLASE
Especializacin
Generalizacin
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 19
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
6) Subclases, superclases y herencia
Por defecto las subclases heredan todas las propiedades
(estado y comportamiento) de sus superclases.
Una herencia selectiva servira como mecanismo de VISTAS
Las subclases pueden tener propiedades propias
Tipos de herencia:
Herencia Simple
Herencia Mltiple (difcil implementacin)
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 20
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
6) Subclases, superclases y herencia
PERSONA
DIRECTOR
EMPLEADO
COMERCIAL
DIRECTOR COMERCIAL
DIRECTOR DE VENTAS
Herencia simple
Herencia mltiple
SUBCL hereda de SUPCL
SUPCL
SUBCL
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 21
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
6) Subclases, superclases y herencia
Caso especial de herencia mltiple => Herencia Repetida
DIRECTOR COMERCIAL
DIRECTOR DE VENTAS
PLANTILLA
Habra que asegurarnos de que la clase director de ventas, no herede las propiedades de PLANTILLA dos veces
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 22
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
7) Anulacin y sobrecarga
Anulacin: proceso de redefinir propiedades de manera que
pasen de ser de las subclases a las superclases y puedan ser
utilizadas por las primeras
Ventaja: eliminacin de redundancias
Sobrecarga: utilizacin de un mismo nombre de mtodo
dentro de una clase o entre varias definiciones de clase.
Ej: mtodo print
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 23
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
8) Polimorfismo y enlace dinmico
Polimorfismo: mltiples formas
Polimorfismo de operacin (ad hoc)
Polimorfismo de inclusin
Polimorfismo paramtrico o de genericidad
Enlace dinmico: mecanismo por el que se difiere la seleccin
del mtodo apropiado basndose en el tipo de objeto, hasta el
momento de la ejecucin. (se evitan recompilaciones)
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 24
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
8) Polimorfismo y enlace dinmico
Polimorfismo de operacin (ad hoc) : sobrecarga
Polimorfismo de inclusin : mtodo definido en una superclase y
heredado por sus subclases
Polimorfismo paramtrico o de genericidad: utiliza tipos como
parmetros dentro de la declaracin genrica de tipos o de clases.
Ej:
template <Type T>
T max (x:T, y:T)
{
if (x>y) return x;
else return y;
}
int max (int, int) // instanciacin de la f. max para dos enteros
real max (real, real) // instanciacin de la f. max para dos reales
Enlace
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 25
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
9) Objetos complejos
Objeto complejo = objeto nico en el mundo real, pero
combinado con otros objetos mediante la relacin
ES PARTE DE
.
Dos formas de considerar los objetos contenidos:
Encapsulados dentro del objeto complejo: el acceso al OC se
realiza utilizando los mtodos del OC.
Con existencia independiente: solo se almacena su OID en el OC
=> COMPARTICIN REFERENCIAL.
Tiene su propia estructura y sus propios mtodos y puede ser
propiedad de varios padres.
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 26
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
9) Objetos complejos
tomo Valor atmico
set Multivaluados sin orden sin
repeticin
list Multivaluados ordenados sin
repeticin
bag Multivaluados sin orden con
repeticin
tupla Propiedades del objeto
(ido, tupla, <prop1:i5, prop2:i3>)
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 27
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
Diseo de bases de datos orientadas a objetos
No hay concepto equivalente en MDC Encapsulacin
Ninguna Entidad Instancia
Ninguna Tipo de
entidad/Supertipo
Clase
No hay concepto equivalente en MDC Mensaje
Las asociaciones son guales, pero la
herencia en MDOO incluye tanto el
estado como el comportamiento
Interrelacin Asociacin
Ninguna Atributo Atributo
El objeto incluye el comportamiento Entidad Objeto
Dferencia MDC M.D. OO
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 28
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
Diseo de bases de datos orientadas a objetos
Anlisis de la redundancia : 2FN y 3FN todo atributo de un
objeto depende de la identidad del objeto
Relaciones : atributos de referencia implementados mediante
identificadores OID
1. Relaciones 1:1:
Sucursal: OID1
Cod_sucursal: B003
Calle: Butarque, 15
Ciudad: Leganes
Codpostal: 28911
Director: OID6
Director: OID6
Cod_empleado: SG5
Nombre: Pilar
Apellido: Castro
Salario: 24000
Sucursal: OID1
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 29
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
Diseo de bases de datos orientadas a objetos
2. Relaciones 1:*:
Sucursal: OID1
Cod_sucursal: B003
Calle: Butarque, 15
Ciudad: Leganes
Codpostal: 28911
Director: OID6
Plantilla {OID4, OID5, }
Plantilla: OID4
Cod_empleado: SG14
Nombre: Raul
Apellido: Pineda
Categoria: supervisor
Salario: 18000
Sucursal: OID1
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 30
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
Diseo de bases de datos orientadas a objetos
3. Relaciones *:*:
Cliente: OID9
Cod_clie: CR56
Nombre: Elena
Apellido: Perez
Tf: 123456789
Tipopref: piso
Maxrent: 400
Visitas
propiedad: OID7
fecha: 26/04/2004
observaciones:
propiedad: OID2
fecha: 28/05/2004
observaciones:
Propiedad: OID2
Cod_prop: PG4
Ciudad: Valdemorillo
Tipo: piso
Habitaciones: 3
..
Visitantes: {OID9, OID10}
Cliente: OID10
Cod_clie: CR74
Nombre: Pepe
Apellido: Garcia
Tf: 678912345
Tipopref: piso
Maxrent: 750
Visitas
propiedad: OID2
fecha: 26/04/2004
observaciones:
Propiedad: OID7
Cod_prop: PG36
Ciudad: Colmenarejo
Tipo: piso
Habitaciones: 3
..
Visitantes: OID9
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 31
Tema 3: BDOO. Conceptos
Tema 3: BDOO. Conceptos
Diseo de bases de datos orientadas a objetos
Integridad referencial :
1. No permitir que el usuario borre explcitamente objetos
2. Permitir al usuario borrar objetos cuando ya no sean necesarios
3. Permitir al usuario modificar y borrar objetos y relaciones cuando
ya no sean requeridas
(Cada SGBDOO implementa una o varias tcnicas)
Diseo comportamental : utilizacin de mtodos pblicos (m.
visibles al usuario y otros objetos) y privados (m. internos de clase)
1. M. constructores y destructores: generan/borran instancias
2. M. de acceso: getAtt. getMediaSalario, .
3. M. transformacin: cambio de estado (incrementoSalario)
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 32
Tema 3: BDOO. Est
Tema 3: BDOO. Est

ndares
ndares
Estandarizacin de OODBMS
OMG = Object Management Group
www.omg.com
ODMG= Object Database Management Group
www.odmg.com
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 33
Tema 3: BDOO. Est
Tema 3: BDOO. Est

ndares
ndares
OMG: consorcio Object Management Group
Sun Microsystems, Borland, AT&T/NCR, HP, Hitachi, Computer
Associates, Unisys y Oracle
Creacin de estndares de facto, promocin de tcnicas OO,
ODMG, 2001 (Object Data Management Group)
Arquitectura:
1) Modelo de objetos (OM)
2) Lenguaje de definicin de objetos (ODL)
3) Lenguaje de consulta de objetos (OQL)
4) Enlaces con los lenguajes C++, Java y Smalltalk
Extensin:
5) estndar para la interoperabilidad (intercambio de datos entre BD)
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 34
Tema 3: BDOO. Est
Tema 3: BDOO. Est

ndares
ndares
Modelo de Objetos (OM):
Primitivas de modelado: objeto (identificadores nicos) y literal
Los objetos y literales pueden clasificarse en tipos. Todos los objetos
y literales de un mismo tipo exhiben un estado y comportamiento
comunes.
El estado de un objeto est definido por los valores de sus
propiedades (atributos y relaciones). Estas propiedades suelen
cambiar en el tiempo.
Propiedad = atributo o relacin (1:1, 1: N, N:M) entre
objetos
Los valores pueden cambiar a lo largo del tiempo.
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 35
Tema 3: BDOO. Est
Tema 3: BDOO. Est

ndares
ndares
Modelo de Objetos (OM):
El comportamiento de un objeto est definido por las operaciones
ejecutadas por o en el objeto. Las operaciones pueden tener una lista
de parmetros de entrada/salida con un tipo especfico y puede
devolver un resultado tipado.
Una DB almacena OBJETOS que pueden ser compartidos por
mltiples usuarios y aplicaciones. El esquema de la BD se define en
ODL y contiene instancias de los tipos definidos por su esquema.
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 36
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
Modelo de Objetos (OM):
Diseo Conceptual
Notacin UML
Diseo de
Implementacin
ODBMS
Diseo Estndar
ODL
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 37
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
EXTENDS (relacin que soporta la herencia)
EXTENTS (todas las instancias de un tipo)
KEYS (clave)
class profesor (extent profesores key DNI)
{
atributos;
operaciones;
};
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 38
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
Relaciones con multiplicidad 1
Empleado Departamento
Trabaja 1..1
1..* tiene
class Empleado (extent empleados)
{ atributos;
relationship Departamento trabaja
inverse tiene::Departamento;
};
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 39
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
Relaciones con multiplicidad *
Empleado Departamento
Trabaja 1..1
1..* tiene
class Departamento (extent Departamentos)
{ atributos;
relationship list <Empleado> tiene
inverse trabaja::Empleado;
};
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 40
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
Relaciones n-arias
No se soportan directamente.
1.- Se crea una clase asociacin
2.- Se crean tantas relaciones binarias como sean necesarias entre
la clase asociacin y las clases que componen la asociacin
n-aria
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 41
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
class juega (extent juegan)
{ atributos;
relaciones entre Juega Persona;
relaciones entre Juega Rol;
relaciones entre Juega Organizacin;
};
class Persona (extent Personas)
{ atributos;
relaciones entre Persona Juega;
};
class Organizacin (extent Organizaciones)
{ atributos;
relaciones entre Organizacin Juega;
};
class Rol (extent Roles)
{ atributos;
relaciones entre Rol Juega;
};
Persona
Rol
Organizacin
Juega
Papeles
*
Ocupan *
Pertenecen *
Juega
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 42
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
Agregaciones. Se representan de 2 formas:
1.- Verdadera composicin
class Persona (extent Personas)
{
attribute set <Alias> lista-alias;
};
Persona
Alias
1..1
0..*
tiene
identifica
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 43
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
Agregaciones
2.- Relacin
class Persona (extent Personas)
{
relationship set <Alia> tiene inverse:: identifica Alias
};
class Alia (extent Alias)
{
relationship Persona identifica inverse:: tiene Persona
};
Persona
Alias
1..1
0..*
tiene
identifica
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 44
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Definition Language):
Generalizaciones parcial y sin solapamiento
Cassette CD
{disjoint}
{parcial}
class Soporte
(extent Soportes)
{
};
class CD extends Soporte (extent CDs)
{
};
class Cassette extends Soporte (extent Casse
{
};
Soporte
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 45
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Fdefinition Language):
Generalizaciones total y sin solapamiento
Cassette CD
{disjoint}
{total}
Se crea la clase A como clase abstracta.
abstract class Soporte (extent Soportes)
{
};
class CD extends Soporte (extent CDs)
{
};
class Cassette extends Soporte (extent Cassettes)
{
};
Soporte
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 46
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Fdefinition Language):
Generalizaciones total y con solapamiento
abstract class Vehiculos
(extent Vehiculos)
{ };
class Tierra extends Vehiculo
(extent Tierras)
{ };
class Mar extends Vehiculo
(extent Mares)
{ };
class Anfibio extends Tierra, Mar
(extent Afibios)
{ };
Mar Tierra
{overlapped}
{total}
Vehiculos
Anfibio
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 47
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
ODL (Object Fdefinition Language):
Generalizaciones parcial y con solapamiento
class Vehiculos
(extent Vehiculos)
{ };
class Tierra extends Vehiculo
(extent Tierras)
{ };
class Mar extends Vehiculo
(extent Mares)
{ };
class Anfibio extends Tierra, Mar
(extent Afibios)
{ };
Mar Tierra
{overlapped}
{parcial}
Vehiculos
Anfibio
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 48
Tema 3: BDOO. Dise
Tema 3: BDOO. Dise

o
o
Manifiesto de los SGBDOO (Atkinson et al., 1989)
(1) Deben soportarse objetos complejos aplicando una serie de
constructores a los objetos bsicos (SET, TUPLE, LIST/ARRAY)
(2) Deben soportarse mecanismos de identidad de objetos
(3) Debe soportarse la encapsulacin
Acceso a la especificacin de la interfaz de los mtodos
(4) Deben soportarse los tipos o clases
(5) Los tipos o clases deben ser capaces de heredar de sus ancestros
(6) Debe soportarse el enlace dinmico
Anulacin y sobrecarga
(7) El DML debe ser computacionalmente completo
Lenguaje de programacin de propsito general
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 49
Tema 3: BDOO.
Tema 3: BDOO.
Dise
Dise

o
o
Manifiesto de los SGBDOO (Atkinson et al., 1989)
(8) El conjunto de todos los tipos de datos debe ser ampliable
(9) Debe proporcionarse persistencia a los datos
(10) El SGBD debe ser capaz de gestionar BD de gran tamao
ndices y buffers
(11) El SGBD debe soportar usuarios concurrentes
(12) El SGBD debe ser capaz de recuperarse de fallos hw y sw
(13) El SGBD debe proporcionar una forma simple de consultar los datos
Mecanismo de consulta ad hoc que sea de alto nivel
Caractersticas opcionales: herencia mltiple, comprobacin de tipos, ..
abr-06 Tema 3: Bases de Datos Orientadas a Objetos
- 50
Tema 3: BDOO. Bibliograf
Tema 3: BDOO. Bibliograf

a
a
Sistemas de Bases de Datos Orientadas a Objeto.
E. Bertino, L. Martino. 1995
Advanced Database Technology and Design
Ed. Artech House. 2000
Introduccin a los sistemas de BD.
J. Ullman, J. Widom. 1999

También podría gustarte