Sie sind auf Seite 1von 39

UNIVERSIDAD NACIONAL DE INGENIERIA

FACULTAD DE CIENCIAS Y SISTEMAS


Bases de Datos II

I UNIDAD: Modelado de Objetos


Objetos

DEFINICIÓN 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 común; los términos instancia y
objeto son intercambiables".
¿Que es un Objeto?
Es un ítem o entidad individual (conceptual o real ), con un rol bien definido en el
dominio del problema.
También llamado instancia.
Estado: abarca todas las propiedades
(normalmente
estáticas del objeto, más los valores
actuales
(normalmente dinámicos) de cada una de
esas propiedades
Comportamiento: cómo actúa y reacciona un
objeto en términos de sus cambios de estado
y sus pasos de mensaje.

Identidad: es la propiedad del objeto que


lo distingue de todo lo demás
Sirve para visualizar las relaciones entre las
clases que involucran el sistema.

Clase Atributos y Métodos

Elementos
Herencia,
Relaciones Asociación
Ensamblado
Dependencia
CLASE
Es la unidad básica que encapsula toda la información de un Objeto (un objeto es
una instancia de una clase). A través de ella podemos modelar el entorno en
estudio (una Casa, un Auto, una Cuenta Corriente, etc.).

Una Cuenta Corriente que posee como


característica
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 sólo será accedible desde dentro de la clase
(sólo sus métodos lo pueden accesar)

Protected: Indica que el atributo no será accedible desde fuera de la clase, pero
si podrá ser accesado por métodos de la clase además de las subclases que se
deriven
Notación extendida
Identificadores
En el momento de incluir atributos en la descripción de una clase se debe
distinguir entre los atributos los cuales reflejan las características de los
objetos en el mundo real, y los identificadores los cuales son utilizados
exclusivamente por razones de implementación. Estos identificadores
internos del sistema no deben ser incluidos como atributos.
Atributos Derivados
Los atributos básicos 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
básicos o derivados.

Notación para atributos


derivados.
Ejemplo
Restricciones de Atributos

Los valores de los atributos de una clase pueden restringirse.


Operaciones (Métodos)
Las operaciones son funciones o transformaciones que se aplican a todos
los objetos de una clase particular. La operación puede ser una acción
ejecutada por el objeto o sobre el objeto.

Tipos de Método
Notación extendida
Sirve para visualizar las relaciones entre las
clases que involucran el sistema.

Clase Atributos y Métodos

Elementos
Herencia,
Relaciones Asociación
Ensamblado
Dependencia
RELACIONES Generalización

ENTRE Clasificación Asociación

Ensamblados
CLASES

Cardinalidad de relaciones
uno-uno
especifica cuantas instancias de
uno-muchos una clase se pueden relacionar a
muchos-muchos una sola instancia de otra clase.
Especialización/Generalización (Herencia):
Indica que una subclase hereda los métodos y atributos especificados
por una Super Clase, por ende la Subclase además de poseer sus
propios métodos y atributos, poseerá las características y atributos
visibles de la Super Clase.

Util para el modelo


conceptual al igual que
para la implementación.

Como modelo
conceptual da buena
estructuración a las
clases.

Como modelo de
implementación es un
buen vehículo para no
replicar
innecesariamente el
código.
Asociación:
permite asociar objetos que colaboran entre si.

Ejemplo: Los objetos Juan Pérez y UNLaR están relacionadas por la


liga estudia-en que describe que "Juan Pérez estudia en la UNLaR".
Por lo general en una asociación 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 Asociación
El grado de una asociación se determina por el número de clases
conectadas por la misma asociación. Las asociaciones pueden ser
binarias, ternarias, o de mayor grado.
Asociación Ternaria que es además una asociación de clase.
Asociaciones Reflexivas
Las asociaciones pueden ser reflexivas,
relacionando distintos objetos de una
misma clase.
Ejemplo: Para una clase persona puede
existir una asociación pariente que
describe que dos objetos de tipo persona,
como Juan Pérez y Laura Pérez son
parientes.
Atributos de Liga (o Asociación)
Al igual que un atributo de clase es propiedad de la clase, un atributo de
asociación (o atributo de liga) es propiedad de una asociación. La notación
es similar a la usada para los atributos de clases, excepto que se añade a
la asociación, y no se incorpora un nombre de clase.
UNLAR

Asociación
Asociación con como clase
operaciones
Dependencia or Instantiates
Dependencia.
• Una dependencia indica una relación semántica entre 2 (o
más) 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 situación en la
cual un cambio del elemento destino puede implicar un
cambio en el elemento fuente en la dependencia.
Notación.
• Una dependencia se muestra a través 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 presentación.
• Si uno de los elementos es una nota o una restricción,
entonces la flecha puede ser suprimida (la nota o la
restricción es la fuente de la flecha).
Dependencia or Instantiates
• Suponga que diseñara 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 diseño, 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
notación de UML para ello es una línea 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: Agregación y Composición

son formas especiales de asociación entre un todo y sus partes, en donde el


ensamblado está compuesto por sus componentes.
Composición (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)
Agregación (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 antisimétrico
El ensamblado es
transitivo
Diferentes maneras de presentar la composición.
En ciertos restaurantes, una comida consta de sopa o
ensalada, el plato fuerte y el postre. Para modelar
esto, utilizaría una restricción: La palabra O dentro
de llaves con una línea discontinua que conecte las
dos líneas que conforman el todo.
Diagramas de Clases

Ejercicios y Tareas
Ej. 2 ) Para cada uno de los siguientes pares de
Objetos analice si los vincula una relación de tipo
“ES UN” o “ES PARTE DE”

perro - mamífero ES UN
casa - techo ES PARTE DE
conserje - empleado ES UN
mouse - dispositivo de entrada ES UN
menú - ventana ES PARTE DE
conjunto colección ES PARTE DE
punto - círculo ES PARTE DE
Realizar el Diagrama de Clases

Caso 1: Se trata de automatizar el seguimiento y control de los trámites en


un ministerio. Sobre cada trámite se puede realizar una serie de actos
administrativos por lo cual existe un almacén que contiene la siguiente
información: código de acto, nombre de acto, descripción de acto. El
sistema debe permitir:
• Registrar el ingreso de un trámite al ministerio para su posterior
seguimiento. Algunos datos relevantes acerca del trámite pueden ser
nro. de entrada, fecha de entrada, datos personales del interesado, etc.
• Registrar los actos administrativos efectuados sobre los trámites.
• Informar el estado de un trámite: qué actos administrativos se han
efectuado sobre el trámite, quién los efectuó, en qué oficina, en qué
fecha comenzaron y cuánto se demoraron.
• Registrar el final del trámite en el ministerio, alimentando información
histórica para otros sistemas del ministerio, eliminándola de este
sistema.
• Consultar cuántos trámites han pasado por determinada oficina entre
dos fechas.
• Consultar en qué oficina se encuentra determinado trámite.
Realizar el Diagrama de Clases
Caso 2: Se trata de un sistema que permite controlar la suscripción de
lectores a revistas de una editorial durante el año en curso de la
siguiente manera:
a) El empleado de la editorial ingresa al sistema los datos particulares del
nuevo suscriptor y el título de la revista a suscribir. En el momento
de la inscripción debe abonar la matrícula y la primera cuota. El
monto a cobrar por matrícula y cuota difiere de acuerdo a la revista
elegida.
b) Se deben registrar los pagos de cuotas de los suscriptores. Estos pueden
abonar más de una cuota, si tienen cuotas atrasadas.
c) La sección de impresiones de la editorial recibe semanalmente un
listado con el número de ejemplares a imprimir de cada revista.
d) La sección distribución de la editorial recibe semanalmente un listado
por título 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 día).
e) Durante el último mes del año se reciben los pedidos de renovación de
suscriptores. La ventaja de realizar este pedido es que no se cobra
una nueva matriculación.
f) A principio de año se actualizan las suscripciones de acuerdo a los
pedidos de renovación recibidos y se dan de baja aquellos
suscriptores que no pidieron la renovación.

Das könnte Ihnen auch gefallen