A) Identificar objetos en el dominio de un problema.
Instrucciones: Lea cuidadosamente el caso de estudio que se presenta a continuación y posteriormente realice las siguientes tareas:
• Identifique los candidatos a objetos.
• Identifique los atributos y operaciones para esos objetos.
Caso de Estudio:
La tienda "Todo te Queda Bien", es una tienda que se encarga de la
elaboración y venta de ropa por catálogo. Esta tienda está expandiendo sus ventas a lo largo de todo el territorio nacional y requiere la elaboración de un sistema que le permita el procesamiento de las órdenes de compra que le remite cada uno de sus representantes. El catálogo de ropa es producido mensualmente y enviado a sus distribuidores (representantes particulares de ventas). El catálogo está diseñado de forma tal que ofrece la descripción de cada producto en venta, su precio de venta al público y las ofertas promocionales del mes, que no es más que la ofertas de determinado producto a un precio especial. Los precios de la ropa pueden variar mensualmente, así que cuando un representante de ventas elabora una orden de compra debe especificar a qué catálogo está asociada. Una política de la empresa "Todo te Queda Bien", es que los clientes que tengan más de 8 meses de antigüedad deben recibir un descuento del 10% sobre el monto de su compra. Una vez que el representante de venta tiene elaboradas sus órdenes de compra podrá remitirlas vía fax. La empresa solicita que además de esta vía, las órdenes de compra también puedan ser enviadas a través de Internet. Las órdenes de compra que sean remitidas por Internet le proporcionaran al representante una ganancia adicional del 1%, esto con la intención de ofrecerles un incentivo para que las ingresen ellos mismos y que la empresa se evite la carga de datos manual. Después de que la orden de compra es ingresada al sistema, se deben evaluar si los productos solicitados están disponibles. Si están en almacén se le notifica al representante para que los retire. En caso contrario se ordena su inmediata elaboración.
B) Diseñar clases aplicando los conceptos básicos de programación orientada a
objetos. Instrucciones:
En base a la lectura y el ejercicio anterior realice las siguientes tareas:
• Diseñe las clases correspondientes de acuerdo al ejercicio anterior.
• ¿Cómo se podría encapsular la clase cliente?
• ¿Qué relaciones de herencia pueden crearse para promover el reuso?
• Identifique las clases especializadas y generales que ha diseñado.
• Basado en las relaciones de herencia que ha creado ¿qué operaciones