Está en la página 1de 68

UNIVERSIDAD NACIONAL DE INGENIERIA FACULTAD DE CIENCIAS Y SISTEMAS Bases de Datos II

I UNIDAD: BASE DE DATOS ORIENTADOS A OBJETOS


Elaborador por: Ing. Patricia Lacayo Cruz

Objetos
Desde la perspectiva de la cognicin humana, un objeto es algo de lo siguiente:
Una cosa tangible y/o visible Cualquier cosa que pueda ser aprendida intelectualmente Cualquier cosa hacia la cual la atencin o el pensamiento es dirigido

Objetos
Los objetos del mundo real no son los nicos tipos de objetos que son de inters para el diseo de software. Otros tipos importantes de objetos son los inventos y resultados de los procesos de diseo, cuya colaboracin con otros objetos constituye el mecanismo que proporciona algn comportamiento de nivel elevado.

Objetos
Lo anterior hace posible proporcionar una definicin ms refinada de objeto:
"Un objeto representa un individuo, un trmino, unidad o entidad identificable, del mundo real o abstracto, con un rol bien definido en el dominio del problema". En trminos ms generales: "un objeto es cualquier cosa con lmites definidos ya sean fsicos o conceptuales".

Objetos
DEFINICIN DE OBJETO: "Un objeto es una entidad que tiene estado, exhibe un comportamiento y posee una identidad; la estructura y comportamiento de objetos similares son definidos en su clase comn; los trminos instancia y objeto son intercambiables".

Comportamiento de Objetos
En los lenguajes de programacin orientados a objetos, las operaciones que los clientes ejecutan sobre un objeto son declaradas tpicamente como mtodos, los cuales son parte de la declaracin de la clase de un objeto. En C++ se utiliza el trmino funcin miembro para denotar el mismo concepto.

Comportamiento de Objetos
En la prctica, se puede encontrar que un cliente tpicamente ejecuta cinco tipo de operaciones sobre un objeto. Estos tipos de operaciones son los siguientes:
Modificacin: una operacin que altera el estado de un objeto, una operacin de escritura. Seleccin: una operacin que accesa el estado de un objeto pero no altera su estado, una operacin de lectura. Iteracin: una operacin que permite que todas las partes de un objeto sean accesadas en un orden bien definido. Construccin: una operacin que crea un objeto y/o inicializa su estado. Destruccin: una operacin que libera el estado de un objeto y/o destruye el objeto en s.

Que es un Objeto?
Es un tem o entidad individual (conceptual o real ), con un rol bien definido en el dominio del problema. Tambin llamado instancia.

Estado: abarca todas las propiedades (normalmente estticas del objeto, ms los valores actuales (normalmente dinmicos) de cada una de esas propiedades Comportamiento: cmo acta y reacciona un objeto en trminos de sus cambios de estado y sus pasos de mensaje.

Identidad: es la propiedad del objeto que lo distingue de todo lo dems

Sirve para visualizar las relaciones entre las clases que involucran el sistema.

Clase Elementos Relaciones

Atributos y Mtodos

Herencia, Asociacin Ensamblado Dependencia

CLASE
Es la unidad bsica que encapsula toda la informacin de un Objeto (un objeto es una instancia de una clase). A travs de ella podemos modelar el entorno en estudio (una Casa, un Auto, una Cuenta Corriente, etc.).

Una Cuenta Corriente que posee como caracterstica Balance Puede realizar las operaciones de: Depositar Girar y Balance

Atributos
representa alguna propiedad de la clase, que se encuentra en todas las instancias de la clase. definen la estructura de una clase y de sus correspondientes objetos. Los atributos corresponden a sustantivos y sus valores pueden ser sustantivos o adjetivos.

Dentro de una clase, los nombre de los atributos deben ser nicos (aunque puede aparecer el mismo nombre de atributo en diferentes clases).

Tipos de Atributos
Los atributos pueden representarse solo mostrando su nombre, mostrando su nombre y su tipo,e incluso su valor por defecto.

Public: Indica que el atributo ser visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados
Private: Indica que el atributo slo ser accedible desde dentro de la clase (slo sus mtodos lo pueden accesar)

Protected: Indica que el atributo no ser accedible desde fuera de la clase, pero si podr ser accesado por mtodos de la clase adems de las subclases que se deriven

Notacin extendida

Identificadores
En el momento de incluir atributos en la descripcin de una clase se debe distinguir entre los atributos los cuales reflejan las caractersticas de los objetos en el mundo real, y los identificadores los cuales son utilizados exclusivamente por razones de implementacin. Estos identificadores internos del sistema no deben ser incluidos como atributos.

Atributos Derivados
Los atributos bsicos son atributos independientes dentro del objeto. En contraste, los atributos derivados son atributos que dependen de otros atributos. Los atributos derivados dependen de otros atributos del objeto, los cuales pueden ser bsicos o derivados.

Notacin para atributos derivados.

Ejemplo

Restricciones de Atributos

Los valores de los atributos de una clase pueden restringirse.

Operaciones (Mtodos)
Las operaciones son funciones o transformaciones que se aplican a todos los objetos de una clase particular. La operacin puede ser una accin ejecutada por el objeto o sobre el objeto.

Tipos de Mtodo

Notacin extendida

Sirve para visualizar las relaciones entre las clases que involucran el sistema.

Clase Elementos Relaciones

Atributos y Mtodos

Herencia, Asociacin Ensamblado Dependencia

RELACIONES
ENTRE CLASES
uno-uno uno-muchos muchos-muchos

Generalizacin

Clasificacin

Asociacin Ensamblados

Cardinalidad de relaciones especifica cuantas instancias de una clase se pueden relacionar a una sola instancia de otra clase.

Especializacin/Generalizacin (Herencia):
Indica que una subclase hereda los mtodos y atributos especificados por una Super Clase, por ende la Subclase adems de poseer sus propios mtodos y atributos, poseer las caractersticas y atributos visibles de la Super Clase.
Util para el modelo conceptual al igual que para la implementacin.

Como modelo conceptual da buena estructuracin a las clases. Como modelo de implementacin es un buen vehculo para no replicar innecesariamente el cdigo.

Asociacin: permite asociar objetos que colaboran entre si.


Ejemplo: Los objetos Juan Prez y UNLaR estn relacionadas por la liga estudia-en que describe que "Juan Prez estudia en la UNLaR".

Por lo general en una asociacin cada clase juega un papel, Puede representar tales papeles en el diagrama

Puede aparecer dos asociaciones entre clase en el mismo diagrama

Puede asociarse diversas clases con una en particular

Grado de la Asociacin
El grado de una asociacin se determina por el nmero de clases conectadas por la misma asociacin. Las asociaciones pueden ser binarias, ternarias, o de mayor grado.
Asociacin Ternaria que es adems una asociacin de clase.

Asociaciones Reflexivas
Las asociaciones pueden ser reflexivas, relacionando distintos objetos de una misma clase. Ejemplo: Para una clase persona puede existir una asociacin pariente que describe que dos objetos de tipo persona, como Juan Prez y Laura Prez son parientes.

Atributos de Liga (o Asociacin)


Al igual que un atributo de clase es propiedad de la clase, un atributo de asociacin (o atributo de liga) es propiedad de una asociacin. La notacin es similar a la usada para los atributos de clases, excepto que se aade a la asociacin, y no se incorpora un nombre de clase.

UNLAR

Asociacin con operaciones

Asociacin como clase

Dependencia. Una dependencia indica una relacin semntica entre 2 (o ms) elementos del modelo. Esto relaciona los elementos del modelo en s y no requiere un conjunto de instancias para que tenga significado. Esto indica una situacin en la cual un cambio del elemento destino puede implicar un cambio en el elemento fuente en la dependencia. Notacin. Una dependencia se muestra a travs de una flecha discontinua desde un elemento del modelo a otro elemento del modelo, donde el primer elemento es el dependiente. La flecha puede ser etiquetada con un estereotipo opcional y un nombre opcional. Opciones de presentacin. Si uno de los elementos es una nota o una restriccin, entonces la flecha puede ser suprimida (la nota o la restriccin es la fuente de la flecha).

Dependencia or Instantiates

Dependencia or Instantiates
Suponga que diseara un sistema que muestra formularios corporativos en pantalla para que los empleados los llenen. El empleado utiliza un men para seleccionar el formulario por llenar. En su diseo, tiene una clase Sistema y una clase Formulario. Entre sus muchas operaciones, la clase Sistema tiene mostrarFormulario(f:Form). El formulario que el sistema desplegar, depender, obviamente, del que elija el usuario. La notacin de UML para ello es una lnea discontinua con una punta de flecha en forma de triangulo sin relleno que apunta a la clase de la que depende.

Varias dependencias entre clases.

Dependencias entre los paquetes.

Ensamblados: Agregacin y Composicin


son formas especiales de asociacin entre un todo y sus partes, en donde el ensamblado est compuesto por sus componentes. Composicin (el Objeto base se contruye a partir del objeto incluido). El tiempo de vida del objeto incluido est condicionado por el tiempo de vida del que lo incluye.(no puede ser compartido entre ensamblados) Agregacin (el objeto base utiliza al incluido para su funcionamiento). El tiempo de vida del objeto incluido es independiente del que lo incluye. (puede
aparecer en varios ensamblados)

El ensamblado es antisimtrico

El ensamblado es transitivo

Diferentes maneras de presentar la composicin.

En ciertos restaurantes, una comida consta de sopa o ensalada, el plato fuerte y el postre. Para modelar esto, utilizara una restriccin: La palabra O dentro de llaves con una lnea discontinua que conecte las dos lneas que conforman el todo.

Diagrama de Contexto de Composicin


Muestra los componentes de una clase como un diagrama anidado dentro de un enorme rectngulo de clase

Realize
La relacin entre una clase una interfaz se conoce como realizacin. En cierto sentido en el ejemplo, es como si el teclado de la computadora garantizara que esta parte de su funcionalidad hara las veces del teclado de una maquina de escribir. Se representa con una lnea discontinua con una punta de flecha sin rellenar

Diagramas de Clases

Ejercicios y Tareas

Ej 1 ) Considere la siguiente jerarqua: Hay clases abstractas? cuales?

CuentaBancaria

CuentaCorriente

CajaAhorro

CajaAhorroComn

CajaAhorroEspecial

Ej. 2 ) Para cada uno de los siguientes pares de Objetos analice si los vincula una relacin de tipo ES UN o ES PARTE DE perro - mamfero

ES UN
ES PARTE DE ES UN

casa - techo
conserje - empleado

mouse - dispositivo de entrada

men - ventana conjunto coleccin punto - crculo

ES UN ES PARTE DE ES PARTE DE ES PARTE DE

Tarea 1) Construir la jerarqua de clases a partir de los siguientes objetos ( de ser necesario crear clases abstractas).
Perro - plancha - martillo - velero - jazmn - rosal - pingino eucaliptos - avin - pinza - auto-bicicleta - moto - cuadriciclo batidora

Tarea 2) Identificar los OBJETOS y los atributos necesarios para llevar un control de los libros prestados compaeros o amigos.

Tarea 3) Identificar los OBJETOS y sus Atributos necesarios para conocer los cassettes y compacts que tens o que prestaste a tus amigos.

Tarea 4 ) modelar un sistema que permita definir cursos, asignar docentes para dictar las materias que correspondan, emitir lista de alumnos, controlar asistencia y llevar estadsticas.

Ej. 3) Control de los turnos de un consultorio odontolgico. (resuelto)


Descripcin: El paciente solicita el turno, la secretaria verifica la planilla de horarios disponibles para el odontlogo solicitado. Si el horario est disponible, se le otorga el turno junto con el comprobante y se anota dicho turno en la planilla. Cuando el paciente concurre a la consulta en la fecha indicada, se verifica la planilla de turnos y se informa al mdico de su presencia. Se pide: * Identificar los objetos del dominio.

* Definir atributos.
* Marcar relaciones.

Solucin del Ejercicion No. 3 Control de turno en un consultorio odontolgico


Objetos: Paciente - Odontlogo - Planilla de horarios - Secretaria - Turno Atributos:
Paciente nombre direccin nro-histClin telef. Odontlogo Nombre Direccin Matrcula Telef. Pl de horario nom-odonto Mes Dia Hora turno nom-odonto nom-paciente secret Mes Dia Secretaria nombre direccin telef. horario-trab

Hora
atendido

Relaciones:

Odontlogo

Paciente
1+

1+

Planilla

Turno
1+

1+

Secretaria

Realizar el Diagrama de Clases


Caso 1: Se trata de automatizar el seguimiento y control de los trmites en un ministerio. Sobre cada trmite se puede realizar una serie de actos administrativos por lo cual existe un almacn que contiene la siguiente informacin: cdigo de acto, nombre de acto, descripcin de acto. El sistema debe permitir: Registrar el ingreso de un trmite al ministerio para su posterior seguimiento. Algunos datos relevantes acerca del trmite pueden ser nro. de entrada, fecha de entrada, datos personales del interesado, etc. Registrar los actos administrativos efectuados sobre los trmites. Informar el estado de un trmite: qu actos administrativos se han efectuado sobre el trmite, quin los efectu, en qu oficina, en qu fecha comenzaron y cunto se demoraron. Registrar el final del trmite en el ministerio, alimentando informacin histrica para otros sistemas del ministerio, eliminndola de este sistema. Consultar cuntos trmites han pasado por determinada oficina entre dos fechas. Consultar en qu oficina se encuentra determinado trmite.

Realizar el Diagrama de Clases


Caso 2: Se trata de un sistema que permite controlar la suscripcin de lectores a revistas de una editorial durante el ao en curso de la siguiente manera: a) El empleado de la editorial ingresa al sistema los datos particulares del nuevo suscriptor y el ttulo de la revista a suscribir. En el momento de la inscripcin debe abonar la matrcula y la primera cuota. El monto a cobrar por matrcula y cuota difiere de acuerdo a la revista elegida. b) Se deben registrar los pagos de cuotas de los suscriptores. Estos pueden abonar ms de una cuota, si tienen cuotas atrasadas. c) La seccin de impresiones de la editorial recibe semanalmente un listado con el nmero de ejemplares a imprimir de cada revista. d) La seccin distribucin de la editorial recibe semanalmente un listado por ttulo de revista con los nombres y los domicilios de los suscriptores a los que se debe enviar la revista (los que tienen las cuotas al da). e) Durante el ltimo mes del ao se reciben los pedidos de renovacin de suscriptores. La ventaja de realizar este pedido es que no se cobra una nueva matriculacin. f) A principio de ao se actualizan las suscripciones de acuerdo a los pedidos de renovacin recibidos y se dan de baja aquellos suscriptores que no pidieron la renovacin.

UNIVERSIDAD NACIONAL DE INGENIERIA FACULTAD DE CIENCIAS Y SISTEMAS Bases de Datos II

II UNIDAD: TRANSFORMACION DEL


SISTEMA DE BASES DE DATOS ORIENTADOS A OBJETOS AL MODELO RELACIONAL
Elaborador por: Ing. Patricia Lacayo Cruz

Transformacin del Modelo de Objetos al Modelo Relacional.


1) Representacin de Objetos simples. EQUIPO (NumeroDeEquipo, Descripcin, FechaDeAdquisicin, CostoDeCompra)

a) Diagrama del Objeto EQUIPO

b) Afinidad que representa a EQUIPO

2 Transformacin de Objetos Compuestos.


Un objeto compuesto es el que tiene uno o ms atributos de valores mltiples simples o de grupo. La figura 2.(a) muestra un ejemplo de objetos compuesto, CUENTA-HOTEL. Para representarlo, se crea una afinidad para el objeto base, CUENTA-HOTEL, y una afinidad adicional para el atributo de grupo que se repite, CargoDiario, Este diseo relacional se muestra, a continuacin (a) Diagrama del objeto CUENTA-HOTEL

CUENTA-HOTEL (NmeroDeFactura, FechaDeLlegada, NombreDeCliente, TotalAdecuado) CARGO-DIARIO (NmeroDeFactura, FechaDeCargo, CargoDeHabitacin, CargoDeAlimeintos, CargoDeTelfono, CargosMiscelaneos, CargoPorImpuesto) (b) Afinidades que representan a CUENTA-HOTEL

Transformacin de los objetos combinados uno a uno Ejemplo de representacin relacional de objetivos combinados 1:1 (a) Ejemplo de objetos combinados 1:1 y (b) su representacin.
SOCIO
ID

CASILLERO
ID

NmeroDeSocio Nombre Direccin Ciudad Estado CodigoPostal

NmeroDeCasillero Tipo Combinacin Ubicacin

(a)

SOCIO

0:1

CASILLERO 1:1

SOCIO (NmeroDeSocio, Nombre, Direccin, Ciudad, Estado, CodigoPostal, NmeroDeCasillo)


CASILLERO (NmeroDeCasillero, Tipo, Combinacin, Ubicacin)

(b)

Ejemplo de representacin relacional de objetos combinados 1:N


(a) Objetos combinados 1:N y (b) su representacin.
EQUIPO
ID

NmeroDeSerie Tipo Modelo FechaDeAdquisicin CostoDeAdquisicin Ubicacin

REPARACION
ID

NmeroDeFactura Fecha Descripcion Costo

(a)

EQUIPO 1:N

REPARACION 0:N

EQUIPO (NmeroDeSerie, Tipo, Modelo, FechaDeAdquisicin, CostoDeAdquisicin, Ubicacin) REPARACIN (NmeroDeFactura, Fecha, Descripcin, Costo, NmeroDeSerie)
(b)

3) Representacin de las relaciones uno a muchos y muchos a uno


Representacin relacional del ejemplo de objetos combinados N:M (a) Objetos LIBRO y AUTOR

(b) Su representacin relacional.


LIBRO
ID

AUTOR
ID

ISBN Titulo NumeroDeSolicitud

NmeroDeSeguroSocial Nombre Direccin

(a)

LIBRO AUTOR 1:N 1:N

LIBRO (ISBN, Titulo, NumeroDeSolicitud) AUTOR (NmeroDeSeguroSocial, Nombre, Telfono) LIBRO-AUTOR (ISBN, NumeroSeguroSocial) (b)

REPRESENTACION DE RELACIONES MUCHOS A MUCHOS

OBJETO1 ID O1 . . . OBJETO2

N:N

OBJETO2 ID O2 . . . OBJETO1

O:N

R1
O1 . . .

R2
O2 ...

R3
O1 02 . . .

Ejercicio No. 1

Forma de Suscripcin

La figura (a) muestra una forma de suscripcin a una revista, muestre el modelo Orientado a Objetos y el Modelo Relacional considerando:
a) La compaia tiene una publicacin y no tiene planes para producir revistas adicionales.

b) Si la compaia tiene varias publicaciones y el cliente puede suscribirse a mas de una de ellas
NEXOS

Para suscribirse

1 ao (6 nmeros) por $18 20% menos que el precio en puestos de peridicos. 2 aos(12 nmeros) por $34 ahorre 24% Nombre . Direccin .

Ciudad

.Estado

. Cdigo Postal
Pagar al recibirla

Pago Incluido

Solucin del inciso (a)


SUSCRIPCION ID NmeroDeSuscripcin FechaInicial FechaFinal CantidadAdecuada Nombre Direccin Ciudad Estado CodigoPostal CodigoDePago

SUSCRIPCION
NmeroDesuscripcion Direccin Ciudad FechaInicial Estado FechaFinal CodigodePago CantidadAdeudada CodigoPostal Nombre

Solucin (b)
CLIENTE ID NmeroDeCliente Nombre Direccin Ciudad Estado CodigoPostal SUSCRIPCIN 1:N SUSCRIPCION ID NmeroDeSuscripcion FechaInicial FechaFinal CantidadAdeudada CodigoDePago CLIENTE 1:N

CLIENTE
NumeroDeCliente Nombre Direccin Ciudad Estado CodigoPostal

SUSCRIPCION
NmeroDesuscripcion FechaInicial FechaFinal CantidadAdeudada CodigoDePago NumeroDeCliente

Ejercicio No. 2 Citatorio para amonestacin vial

La siguiente figura, muestra una ocurrencia de una forma de citatorio para una amonestacin vial, usada en el estado de Washington. El diseador ha dado indicios acerca de los objetos implcitos de esta forma. Observe que algunas partes de la forma se distinguen: porque tienen esquinas redondeadas, lo que indica las secciones diferentes que pertenecen a objetos distintos. Algunos grupos de atributos tienen nombres, lo cual seala la necesidad de atributos de grupo.

AVISO DE INFRACCION PATRULLA DEL ESTADO DE WASHINTON


Nombre Aguirre Apellidos David M Nombre de pila
Fecha de la Falta
Ubicacin

Dist.

Destac.
17

Mes 11 dia 7 ao Hora 9:35 2

Direccion 5053 88 Ave SE


Codigo

17 Distancia E Sentido Enunckum Cuidad SR410 Faltas Escribiendo miestras conduce Oficial Scott Nmero Personal 850

Ciudad Mercer Island Estado Wa Postal 98049


Licencia del Cond.

Estado M Fecha de Nac. Estatura Peso Ojos Wa F 2127 46 6 156 bl

AA000

Licencia del Vehi. Estado Color Ao Marca Tipo AA3b2 Wa White 90 Saab 900
Esta es una amonestacin. No hay acciones posteriores.

NIV ( Nmero de Identificacin del Vehculo

Se autoriza traslado para reparacin. Se prohibe la operacin en esta vialidad.

Propietario Registrado

Corrija las faltas de inmediato. Regrese esta tarjeta para comprobacin en 15 30 das (si se marca este recuadro)

X Firma del conductor


Direccin:

AVISO-DE-INFRACCION ID Nmero CONDUCTOR 1:1 VEHCULO 1:1 OFICIAL 1:1 FechaDeLaFalta Mes Dia Ao 1:1 Hora Dist. Destac. Ubicacin Distancia Sentido 1:1 Ciudad Vialidad Falta 1:N AccinRequerida

CONDUCTOR Nombre Apellido NombreDePila 1:1 Inicial Direccin Ciudad Estado CodigoPostal ID Licencia LicenciaDelConductor Estado Sexo FechaDeNacimiento Estatura Peso Ojos

1:1

AVISO-DE-INFRACCION

1:N

VEHICULO ID Licencia LicenciaDelVehiculo Estado Color Ao Marca Tipo ID NIV PropiedadRegistrado Direccin AVISO-DE-INFRACCION
1:N

OFICIAL ID NmeroPersonal Nombre

AVISO-DE-INFRACCION

1:N

También podría gustarte