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í.