UML. Diagrama de casos de uso. MyGest. Solución
MyGest
El sistema tendrá que gestionar las cuentas de los clientes que realizan pedidos de productos del negocio. Cada producto tiene un stock determinado. Generalmente un cliente tiene una o varias cuentas para pagar los pedidos y cada cuenta tiene asociada una tarjeta de crédito con una cantidad disponible x de dinero. Esa cantidad puede aumentarse por parte del cliente para poder realizar más pedidos.
Los clientes que quieran realizar un pedido tendrán que tener alguna cuenta con saldo disponible.
Los pedidos pueden ser simples o compuestos. Un pedido simple solamente tendrá una cuenta de pago y como mucho tendrá 20 productos.
Un pedido compuesto puede tener dos o más pedidos (simples o compuestos). Obviamente un pedido compuesto se tiene que pagar con la cuenta de un mismo cliente.
Solamente se pueden pedir productos que estén en stock.
Existe una clase que realiza el cobro, genera la orden de distribución y confirma los pedidos.
Los cobros se hacen diariamente a las 19:00 horas. En ese procedimiento de cobro se comprueban todos los pedidos pendientes de cobro y se cobran de las cuentas de los clientes. Si una cuenta de cliente no tiene dinero suficiente se rechaza el pedido (tanto si es simple como si forma parte de un pedido compuesto).
Los pedidos listos de reparto se entregan y una vez entregados su estado pasa a estar confirmado.
SOLUCIÓN COMENTADA:
El sistema tendrá que gestionar las cuentas de los clientes que realizan pedidos de productos del negocio. Cada producto tiene un stock determinado. Generalmente un cliente tiene una o varias cuentas para pagar los pedidos y cada cuenta tiene asociada una tarjeta de crédito con una cantidad disponible x de dinero. Esa cantidad puede aumentarse por parte del cliente para poder realizar más pedidos.
- ESTE PRIMER PÁRRAFO DA MUCHA INFORMACIÓN. DE MOMENTO SE PUEDE APRECIAR QUE SE MENCIONA AL ACTOR “CLIENTE”.
- VAMOS A SUPONER QUE HAY DOS TIPOS DE CLIENTES, EL REGISTRADO Y EL NO REGISTRADO (OTRO ACTOR).
- SE SUPONE QUE EL CLIENTE DEBE DE REGISTRARSE Y LUEGO AL ESTAR REGISTRADO PUEDE ASOCIAR UNA TARJETA (CASO DE USO) Y ESTABLECER UN LÍMITE DE DINERO (CASO DE USO).
Los clientes que quieran realizar un pedido tendrán que tener alguna cuenta con saldo disponible.
- REALIZAR PEDIDO SERÁ UN CASO DE USO, O MEJOR DICHO PEDIDO.
- DENTRO DE ESTE CASO DE USO HABRÁ OTRO (INCLUDE) QUE SEA COMPROBAR SALDO.
Los pedidos pueden ser simples o compuestos. Un pedido simple solamente tendrá una cuenta de pago y como mucho tendrá 20 productos.
- PEDIDO COMPUESTO PARECE QUE ES UN EXTENDS DE PEDIDO SIMPLE PERO VAMOS A SEGUIR LEYENDO PARA VER QUÉ HACEMOS.
Un pedido compuesto puede tener dos o más pedidos (simples o compuestos). Obviamente un pedido compuesto se tiene que pagar con la cuenta de un mismo cliente.
- COMO EL ENUNCIADO ES UN TANTO ABIERTO, LO QUE VAMOS A HACER ES MODELARLO COMO EXTENDS AL SER LOS DOS PEDIDOS.
Solamente se pueden pedir productos que estén en stock.
- SE SOBREENTIENDE QUE SOLAMENTE TENDRÁN QUE MOSTRARSE LOS PRODUCTOS CON STOCK O EN SU DEFECTO MOSTRARLOS CON LA ETIQUETA “NO HAY STOCK”.
- EN ESTE MOMENTO, EL CASO DE USO PEDIDO CON SUS INCLUDES Y EXTENDS QUEDARÍA COMO SIGUE:
- HE AÑADIDO UN CASO DE USO FINALIZAR PEDIDO QUE SERÁ FORMALIZARLO.
- ADEMÁS HE AÑADIDO UN INCLUDE AGRUPAR PEDIDO PARA DECIRLE AL SISTEMA QUÉ PEDIDOS FORMAN PARTE DE UN PEDIDO COMPUESTO.
Existe una clase que realiza el cobro, genera la orden de distribución y confirma los pedidos.
Los cobros se hacen diariamente a las 19:00 horas. En ese procedimiento de cobro se comprueban todos los pedidos pendientes de cobro y se cobran de las cuentas de los clientes. Si una cuenta de cliente no tiene dinero suficiente se rechaza el pedido (tanto si es simple como si forma parte de un pedido compuesto).
- YO INTRODUCIRÍA OTRO ACTOR LLAMADO PERSONAL. ESTE HARÍA USO DE LOS SIGUIENTES CASOS DE USO. VER PEDIDOS, VER PEDIDOS CON SALDO (EXTENDS), MARCAR PARA COBRAR, RECHAZAR PEDIDO, CONFIRMAR PEDIDO, DISTRIBUIR.
- EL CLIENTE REGISTRADO TAMBIÉN PODRÁ VER EL PEDIDO SUYO.
Los pedidos listos de reparto se entregan y una vez entregados su estado pasa a estar confirmado.
- AQUÍ PODRÍAMOS METER OTRO ACTOR (TRANSPORTISTA) EL CUAL TENDRÁ LOS SIGUIENTES CASOS DE USO, VER PEDIDO, ENTREGAR PEDIDO.
- LA SOLUCIÓN GLOBAL QUEDARÍA COMO SIGUE: