TP 1 - Diseà o OO
TP 1 - Diseà o OO
TP 1 - Diseà o OO
1)
a. Diseñe en UML las clases Libro y Revista teniendo en cuenta la descripción en cada
caso:
● Una revista posee un código de identificación ISSN, el título, el año de edición, número
y volumen, un campo temático y un precio base. Dada una revista se debe poder listar
su información por pantalla, obtener su código de identificación, su campo de aplicación
y su precio de venta. El precio de una revista corresponde al precio base de la misma
salvo que ésta tenga una antigüedad mayor a 5 años, en ese caso, se le realiza un
descuento del 15%. Además, para la venta, al precio obtenido se le debe agregar el
valor del IVA (21%).
b. Dadas las clases del punto anterior, identifique qué características tienen en común y
cuáles son las diferencias. En base a esta información, diseñe en UML una relación de
generalización adecuada.
b. Indique el tipo de relación que existe entre las clases, en caso de corresponder.
3) Analice los siguientes diagramas de clases simplificados e indique cuál de ellos representa
una mejor solución al siguiente problema. Justifique su respuesta.
b. Una empresa necesita automatizar la forma de calcular el monto total a pagar a sus
empleados. Para ello, la empresa mantiene la siguiente información de cada uno: datos
personales, la cantidad de horas que trabaja para la empresa y el tipo de contratación en la
empresa, es decir si el empleado pertenece a la planta transitoria o permanente. El monto a
pagar a un empleado se calcula teniendo en cuenta la cantidad de horas trabajadas por $200.
Cuando un empleado es de planta permanente cobra además salario familiar y antigüedad
($250 por año de antigüedad). El salario familiar es $1000 por cada hijo y si es casado además
cobran $1500 por su esposa/o. Cuando el empleado es de planta transitoria, no cobra
antigüedad ni salario familiar, pero cobra un monto fijo de ayuda social ($7000). Tenga en
cuenta que un empleado puede cambiar su tipo de contratación con la empresa.
c. Se desea modelar una plataforma de streaming que ofrece series. Las series se caracterizan
por su título, año de inicio, sinopsis, género al que pertenece (acción, aventura, animación,
comedia, documental, drama, horror, musical, romance, ciencia ficción) y personajes que
intervienen. Las series se organizan en temporadas ordenadas que tienen una fecha de
producción y una fecha de estreno de televisión a nivel mundial. Cada temporada está a su vez
formada por capítulos ordenados que tienen un título, un director, una duración y una sinopsis.
Un personaje en una serie concreta es interpretado por un único actor, pero un actor puede
interpretar varios personajes en una misma serie. Dada una serie, se debe poder listar su
información por pantalla, se puede obtener la cantidad de temporadas que posee, el listado de
los capítulos correspondientes a una determinada temporada y, dado el nombre del director, un
listado de los capítulos que dirigió el mismo.
d. Un restaurante desea crear una aplicación que permita mantener la información de los pedidos
realizados. Los pedidos deben registrar el código del pedido, fecha y los elementos que
contiene. Los elementos del pedido pueden ser bebidas o platillos. De las bebidas se conoce el
código, la descripción, la capacidad y el precio. De los platillos se tiene el código, la descripción
y el precio base. Es posible agregar ingredientes extra a los platillos que ofrece el restaurante
(jamón, crema, palmitos, etc.), por lo tanto, los platillos contienen además información de los
ingredientes agregados, cada uno con una descripción y precio. El precio de un pedido se
calcula en función de los elementos que contiene. El precio de las bebidas es el que figura en
el sistema, pero el precio de los platillos se debe calcular adicionando al precio base el precio
de los ingredientes agregados. Dado un pedido, debe ser posible calcular el importe a pagar y
listar la información del pedido por pantalla. Dado una fecha, la aplicación debe escribir por
pantalla un listado con el código y el precio de los pedidos realizados y obtener el monto total
recaudado ese día.
NOTA: El diagrama UML debe incluir la información relevante del problema (atributos, métodos y
relaciones, niveles de visibilidad, notas con el pseudocódigo de los métodos mencionados y
aclaraciones que crea conveniente).