Bases de Datos Orientadas a Objetos (BDOO)
Es una base de datos inteligente. Soporta el paradigma orientado a objetos
almacenando datos y métodos, y no sólo datos. Está diseñada para ser eficaz,
desde el punto de vista físico, para almacenar objetos complejos. Evita el
acceso a los datos; esto es mediante los métodos almacenados en ella. Es más
segura ya que no permite tener acceso a los datos (objetos); esto debido a que
para poder entrar se tiene que hacer por los métodos que haya utilizado el
programador.
Un SGBDOO es un SGBD que almacena objetos y por tanto posee todas las
ventajas de la orientación a objetos
Las bases de datos orientadas a objetos se diseñan para trabajar bien en
conjunción con lenguajes de programación orientados a objetos como Java, C#,
Visual Basic.NET y C++.
CARACTERISTICAS
propone 13 características obligatorias para los SGBDOO, basado en dos
criterios: debe ser un sistema orientado a objetos y debe ser un SGBD
(Atkinson et al., 1989). Características:
1. Debe soportar objetos complejos: Debe ser posible construir objetos
complejos aplicando constructores a objetos básicos.
2. Identidad del objeto: Todos los objetos deben tener un identificador que es
independiente de los valores de sus atributos.
3. Encapsulamiento: Los programadores solo tienen acceso a la especificación de
interfaz de los métodos, y los datos e implementación de estos métodos están
ocultos en los objetos.
4. Tipos o clases : El esquema de una BBOO contiene un conjunto de clases o
tipos.
5. Tipos o clases deben ser capaz de heredar de sus supertipos o superclases:
los atributos y métodos.
6. Sobrecarga debe ser soportada: Los métodos deben poder aplicarse a
diferentes tipos.
7. El LMD debe ser completo : El LMD en los SGBDOO debe ser un lenguaje de
programación de propósito general.
8. El conjunto de tipos de datos debe ser extensible: No habrá distinción entre
tipos definidos por el usuario y tipos definidos por el sistema.
9. Persistencia de datos: los datos deben mantenerse después de que la
aplicación que los creó haya finalizado. El usuario no tiene que hacer copia
explícitamente.
10. El SGBD debe ser capaz de manejar grandes BD
11. El SGBD debe soportar Concurrencia : Debe disponer de mecanismos para el
control de concurrencia.
12. Recuperación: el SGBD debe proveer mecanismos de recuperación de la
información en caso de fallo del sistema.
13. El SGBD debe proveer un manera fácil de hacer consultas.
BASES DE DATOS ORIENTADA A OBJETOS CON UML
Lenguaje Unificado de Modelado (LUM) o (UML, por sus siglas en inglés,
Unified Modeling Language) es el lenguaje de modelado de sistemas de software
más conocido y utilizado en la actualidad.
Es importante resaltar que UML es un "lenguaje de modelado" para especificar
o para describir métodos o procesos. Se utiliza para definir un sistema, para
detallar los artefactos en el sistema y para documentar y construir.
UML combina notaciones provenientes desde:
• Modelado Orientado a Objetos
• Modelado de Datos
• Modelado de Componentes
• Modelado de Flujos de Trabajo (Workflows)
DI
Análisis y diseño orientados a objetos con UML
Metodología de diseño de BD:
1. Generar diagramas de casos de uso a partir de la especificación de requisitos
para representar las principales funciones requeridas por el sistema.
2. Generar un diagrama de clases (E/R).
3. Generar un diagrama de secuencias para cada caso de uso o para cada grupo
de casos de uso (interacción entre clases).
4. Actualizar el diagrama de clases para mostrar los métodos requeridos en cada
una.
5. Crear un diagrama de estados para cada clase que muestre como cambia de
estado.
VENTAJAS
• Se desarrolla un único modelo al que acceden directamente las aplicaciones.
• Simplifica la conceptualización La utilización de objetos permite representar de
una forma más natural los datos que se necesitan guardar.
• Mejora la comunicación entre los usuarios, los diseñadores y los analistas.
• Extensibilidad: Los SGBDOO permiten construir nuevos tipos de datos a partir
de tipos existentes.
• Existe una única interfaz entre el LMD y el lenguaje de programación lo que
elimina lo que elimina el problema de tener incrustar un lenguaje declarativo
como SQL en un lenguaje imperativo como C.
• Lenguaje de consultas más expresivo : El acceso navegacional es más adecuado
para manipular despliegue de partes, consultas recursivas, etc.
• Soporte a esquema evolutivo : el estrecho acoplamiento entre datos y
aplicaciones en un SGBDOO hace más abordable el esquema evolutivo
DESVENTAJAS
• La optimización de consultas compromete la encapsulación: optimizar
consultas requiere conocer la implementación para acceder a la BD
eficientemente.
• Los bloqueos a nivel de objeto, utilizados en protocolos de control de
concurrencia pueden afectar al rendimiento.
• Complejidad: el incremento de funcionalidad provisto por un SGBDOO, como
un único nivel de modelo de almacenamiento o soporte a transacciones largas.
La complejidad con lleva productos más caros y difíciles de usar.
• Falta de soporte a las vistas: la mayoría de SGBDOO no
proveen mecanismos de vistas.
• Falta de soporte a la seguridad: Actualmente los SGBDOO no proveen un
mecanismo adecuado de seguridad. La mayoría de mecanismos están basados
en un nivel de granularidad alto y los usuarios no pueden conceder derechos de
acceso a objetos o clases individuales.
CONCLUSIONES
En Conclusión sabemos que las BDOO representan el siguiente paso en la evolución
de las bases de datos, para soportar el Análisis, Diseño y Programación OO. Las BDOO
permiten el desarrollo y mantenimiento de aplicaciones complejas con un costo
Significativamente menor.
Permiten que el mismo modelo conceptual se aplique al Análisis, diseño,
programación, definición y acceso a la base de datos.
Esto reduce el problema del
operador de traducción entre los diferentes modelos a través de todo el ciclo de vida.
El modelo conceptual debe ser la base de las herramientas CASE OO totalmente
integradas, las cuales ayudan a generar la estructura de datos y los métodos.
Las BDOO ofrecen un mucho mejor rendimiento de la máquina que las bases de datos
por relación, para aplicaciones o clases con estructuras complejas de datos. Sin
embargo, Las BDOO coexistirán con las bases de datos por relación durante los
próximos años, puesto que a menudo se utilizará un modelo por relación como una
forma de estructura de datos dentro de una BDOO.
Sacado de:
http://uvirtual.ufps.edu.co/ufpsvirtual/pluginfile.php/5361/mod_resource/content/1/Bases%20de%20Datos%20OO.pdf
No hay comentarios:
Publicar un comentario