EjerciciosUML

Ejercicio UML nº 3

Necesitamos realizar el diseño de un sistema de gestión de pedidos. Las características de nuestro sistema serán las siguientes:

- En nuestro sistema deberán registrarse los clientes de los cuales se almacenará el nombre, la dirección, el teléfono y el email.
- Los clientes realizarán pedidos de productos.
- Los productos tienen un stock determinado.
- Generalmente un cliente tiene una cuenta para el pago de pedidos pero podría tener varias.
- Las cuentas están asociadas con una tarjeta de crédito la cual tiene un saldo disponible. El cliente podrá aumentar o disminuir dicho saldo para poder realizar futuros pedidos.
- Un cliente solo puede realizar un pedido si tiene al menos una cuenta con saldo disponible.
- Cuando un cliente hace un pedido este puede ser simple o compuesto.
- Los pedidos simples solo se asocian a una cuenta de pago y solamente podrán contener un máximo de 20 productos (del mismo tipo o de distintos tipos de producto).
- Un pedido compuesto será la compilación de dos o más pedidos que a su vez podrán ser simples o compuestos.
- El sistema deberá velar porque cualquier pedido realizado por el cliente sea abonado por una cuenta del mismo cliente.
- Es obvio pero también importante que solamente se puedan realizar pedidos de productos en stock.
- La clase responsable del cobro (orden de distribución y confirmación de pedidos) deberá ser única (solamente existirá una instancia de la misma).
- Proceso de cobro: Se realiza una vez al día y se comprueba todos los pedidos pendientes de cobro. Se cobrarán todos los pedidos de su cuenta de pago asociada.
- Si una cuenta no tiene suficiente dinero se rechazará el pedido entero.
- Cuando el pedido esté listo para servirse se ordenará su distribución y una vez entregado el pedido estará en estado confirmado.

Realiza el diagrama UML teniendo en cuenta las especificaciones anteriores.
Si quieres conocer la solución la tienes aquí.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>