Requerimientos Funcionales y No Funcionales - Blazutan/DesarrolloWeb GitHub Wiki

Requerimientos Funcionales y No Funcionales

Requisitos Funcionales

Requisitos Funcionales

Requerimiento Descripción
Validación de usuario El sistema debe permitir al usuario iniciar sesión con su correo y contraseña.
Guardado de tiempos (JV) El sistema debe almacenar el tiempo entre estados, desde preparación hasta entrega del pedido.
Relación de producto con precio (JC) El producto debe estar relacionado a un precio para su facturación final al momento de pagar.
Asociación del pedido con el mesero (JV) El sistema debe asociar cada pedido con el mesero responsable de tomarlo, de manera que se pueda identificar quién registró y gestionó el pedido.
Alertas de pedido (JV) El sistema debe notificar visualmente al mesero cuando un pedido cambie a estado "listo", mostrando hasta 3 recordatorios en intervalos definidos hasta que el mesero lo marque como recibido.
Cancelación de pedido (JC) El sistema debe permitir cancelar un pedido siempre que no haya sido entregado, registrando el motivo de cancelación.
Visualización de cola de pedidos (JV) El sistema debe permitir a cocina visualizar los pedidos pendientes ordenados por fecha de creación.
Cambio de estado del pedido (JC) El sistema debe permitir a cocina actualizar el estado del pedido a "en preparación" y "listo".
Gestión de menú (JC) El sistema debe permitir al administrador crear, editar y eliminar productos, precios y categorías.
Gestión de mesas y usuarios (JV) El sistema debe permitir al administrador gestionar el estado de las mesas y administrar las cuentas de usuario del sistema.
Reportes de ventas y tiempos (JC) El sistema debe permitir al administrador consultar reportes de ventas y tiempos de preparación por periodo.

Requisitos No Funcionales

Requerimiento Descripción
Rendimiento El sistema debe ser capaz de ejecutar y visualizar el ciclo de un pedido en tiempo real sin mostrar retardos.
Portabilidad El sistema debe ser accesible desde cualquier navegador web moderno (Chrome, Firefox, Edge) sin requerir instalación adicional.
Usabilidad La interfaz gráfica debe ser intuitiva, permitiendo al usuario interactuar con los elementos visuales sin la necesidad de conocimientos técnicos previos.
Mantenibilidad El código debe estar organizado y documentado adecuadamente para futuras mejoras o corrección de errores.
Seguridad El ingreso al sistema estará restringido bajo contraseñas y usuarios definidos.