Diagramas ‐ Documentación Open Code - OpenCodeISPC/Sistema-de-Gestion-de-Mesas GitHub Wiki
1- Flujo Operativo - Secuencia del Sistema
Este es el flujo pensado para el proyecto desde que el mozo visualiza o abre una mesa, lo que permite controlar el salón y calcular los gastos automáticamente. Al confirmar un pedido, las comandas pasan de forma directa al área de servicio (cocina o barra), donde el mozo monitorea su estado en un mapa secundario para retirarlas cuando estén listas. Finalmente, todo el ciclo concluye con el cierre de las mesas, integrando además el control y la visualización de estas gestiones desde la administración.
2- Diagrama de Gantt - SGMB
3- Product Backlog
Link: Product Backlog: Historia de usuario y criterios de aceptación
4- Diagrama Modelo Relacional BD
5- Diagrama MongoDB
6- Colecciones MongoDB
En la conversión del modelo relacional a MongoDB se definieron cuatro colecciones principales: Usuarios, Mesas, Productos y Pedidos.
La entidad DetallePedido no se modeló como una colección independiente, sino que fue embebida dentro de la colección Pedidos mediante un arreglo de documentos denominado "detalles". Esta decisión se basa en que los detalles de un pedido no tienen sentido por sí solos y siempre se consultan junto con el pedido al que pertenecen.
Las colecciones Usuarios, Mesas y Productos se mantienen independientes porque representan entidades con ciclo de vida propio y son reutilizadas por múltiples pedidos. Por este motivo se utilizan referencias mediante ObjectId.
Esta estructura aprovecha las ventajas de MongoDB al reducir la necesidad de realizar consultas complejas equivalentes a JOINs, mejorando el rendimiento y simplificando la recuperación de información relacionada con los pedidos.
7- Diagrama caso de Uso
8- Paleta de colores
9- Requerimientos
Funcionales:
- RF01 - El sistema debe permitir visualizar las mesas del restaurante.
- RF02 - El sistema debe mostrar el estado de cada mesa(libre, ocupada, reservada).
- RF03 - El sistema debe actualizar el estado de las mesas en tiempo real cuando se produzcan cambios.
- RF04 - El sistema debe mostrar los pedidos pendientes en las áreas de preparación(cocina y barra)
- RF05 - El sistema debe permitir asociar pedidos a una mesa.
- RF06 -El sistema debe permitir marcar una mesa como disponible o no disponible.
- RF07 -El sistema debe registrar los pagos realizados por cada mesa, incluyendo importe, fecha y método de pago.
No Funcionales:
- RNF01 - El sistema debe requerir autenticación mediante usuario y contraseña
- RNF02 - El sistema debe mostrar las mesas en menos de dos segundos
- RNF03 - La interfaz debe ser compatible con dispositivos móviles utilizados por los mozos
- RNF04 - El sistema debe mantener una disponibilidad mínima del 99% durante el horario de operación
- RNF05 - Un usuario nuevo debe poder realizar las operaciones básicas luego de una capacitación inicial de no más de 15 minutos
- RNF06 - El sistema debe responder a cualquier acción del usuario en menos de 3 segundos bajo condiciones normales de uso.
- RMF07 - El sistema debe implementar control de acceso basado en roles y permisos.