Skip to content

Product Backlog Mvp

AbrilConrero edited this page May 27, 2025 · 36 revisions

HISTORIAS INCLUIDAS EN EL MVP

GESTIÓN DE PRODUCTOS

USER 1 : ABM producto

Como administrador, quiero poder agregar, modificar y eliminar productos al catálogo, incluyendo información detallada y fotos, para mantener actualizado el inventario.

Criterios de Aceptación:

  • El formulario de creación de productos debe permitir ingresar: nombre, descripción, precio, foto, peso.
  • El formulario de creación debe poder permitir seleccionar una categoría, una o más sucursales, una marca, un talle y un color
  • Se deberá guardar automáticamente la fecha y hora de creación
  • Las imágenes deben poder cargarse y previsualizarse antes de guardarlas.
  • Los productos deben ser listados en el catálogo después de ser agregados y guardados.
  • Antes de eliminar, se debe mostrar una confirmación para evitar eliminaciones accidentales.
  • Los productos eliminados no se deben mostrar en pantalla.
  • Debe ser posible eliminar productos incluso si tienen stock.
  • Si se elimina un producto, se debe guardar la fecha y hora de eliminación y el usuario que lo realizó.
  • Si se crea un nuevo producto que ya fue eliminado anteriormente, se recuperará solo el nombre del mismo, es decir, no se creará uno distinto para evitar duplicaciones.
  • Se deberá especificar un stock mínimo y un stock medio y estos podrán ser editados.
  • Se deberá poder obtener el valor actual del stock de un producto, el mismo no es directamente modificable, deberá hacerse mediante una entrada o salida de dicho producto.
  • La foto ingresada en la creación del producto no debe superar los 5 Mb (Mega bytes) y deberá ser .jpg o .png
  • No se podrá ingresar mas de una foto por producto.
  • Nombre, precio, peso, stock mínimo, stock medio y categoría serán campos obligatorios.
  • Nombre y descripción deben tener un caracter como mínimo y 100 como máximo
  • Nombre y descripción deberán ser un campo alfanumérico.
  • Precio y peso deberán ser campos decimales y deberán tomar valores > 0.
  • Stock mínimo y medio deberán ser campos enteros y ≥ 0.
  • El stock medio debe ser >stock mínimo.
  • Al crear un nuevo producto al stock actual se le asignará valor 0 por defecto.
  • Se debe guardar el usuario que elimine un producto.

USER 2: ABM categoría

Como administrador quiero registrar una nueva categoría de producto para poder categorizarlos.

Criterios de aceptación:

  • Se debe verificar que la categoría no se encuentre previamente registrada.
  • El nombre de categoría debe ser una cadena de caracteres.
  • No debe ser posible eliminar una categoría que se encuentre asignada a un producto.
  • Si se crea una nueva categoría con el mismo nombre de una ya eliminada anteriormente, se recuperará solo el nombre de la misma, es decir, no se creará una distinta (para evitar duplicaciones).
  • Si alguna categoría es eliminada, solo se ocultará el nombre de esta para poder ser recuperada en un futuro.
  • Debe ser posible editar una categoría.
  • Una categoría no podrá contener más de 100 caracteres
  • Una categoría no podrá estar vacía o tener espacios consecutivos

USER 3: ABM marca

Como administrador quiero registrar una nueva marca para poder clasificar los productos en base a su marca.

Criterios de aceptación:

  • Se debe verificar que la marca no se encuentre previamente registrada.
  • El nombre de la marca debe ser una cadena de caracteres.
  • No debe ser posible eliminar una marca que se encuentre asignada a un producto.
  • Si alguna marca es eliminada, solo se ocultará el nombre de esta para poder ser recuperada en un futuro.
  • Si se crea una nueva marca con el mismo nombre de una ya eliminada anteriormente, se recuperará solo el nombre de la misma, es decir, no se creará una distinta (para evitar duplicaciones).
  • Si se elimina una marca, se debe guardar la fecha y hora de eliminación.
  • Debe ser posible editar una marca.

USER 4: ABM talle

Como administrador quiero registrar una nuevo talle de producto para poder categorizarlos.

Criterios de aceptación:

  • Se debe verificar que el talle no se encuentre previamente registrado.
  • El talla debe ser una cadena de caracteres alfanumérico.
  • No debe ser posible eliminar un talle que se encuentre asignado a un producto existente.
  • Si algún talle es eliminado, solo se ocultará el nombre de este para poder recuperarlo en un futuro.
  • Si se crea un nuevo talle con el mismo nombre de uno ya eliminado anteriormente, se recuperará solo el nombre del mismo, es decir, no se creará uno distinto (para evitar duplicaciones).
  • Si se elimina un talle, se debe guardar la fecha y hora de eliminación.
  • Debe ser posible editar una talle.

USER 5: ABM color

Como administrador quiero registrar un color de producto para poder categorizarlos.

Criterios de aceptación:

  • Se debe verificar que el color no se encuentre previamente registrado.
  • El color debe ser una cadena alfanumérica.
  • No debe ser posible eliminar un color que se encuentre asignado a un producto existente.
  • Si algún color es eliminado, solo se ocultará el nombre de este para poder recuperarlo en un futuro.
  • Si se elimina un color, se debe guardar la fecha y hora de eliminación.
  • Si se crea un nuevo color con el mismo nombre de uno ya eliminado anteriormente, se recuperará solo el nombre del mismo, es decir, no se creará uno distinto (para evitar duplicaciones).
  • Debe ser posible editar un color.

USER 6: Historial de precios

Como administrador quiero tener un detalle de los cambios de precio de los productos para tener un mayor control.

Criterios de Aceptación:

  • Se deberá poder visualizar todos los cambios de precio realizados a un producto.
  • Se deberá mostrar la fecha de modificación y el monto.
  • La lista se ordenará por defecto cronológicamente (del cambio más reciente al más antiguo).
  • Deberá existir un botón de historial en cada producto que permita visualizar el listado de precios.

GESTIÓN DE SUCURSALES

USER 7: ABM sucursal

Como administrador quiero poder registrar las distintas sucursales en la plataforma para poder asignar productos a ellas para poder obtener estadísticas sobre las ventas por sucursal.

Criterios de Aceptación

  • Debe existir un formulario de registro que incluya: Nombre.
  • Nombre debe ser un campo de caracteres alfanuméricos.
  • El nombre de la sucursal debe ser único.
  • Nombre es un campo obligatorio.
  • Se debe poder eliminar una sucursal a la cual no haya ningún producto asociado.
  • Se debe poder recuperar una sucursal eliminada.
  • Se debe poder modificar una sucursal.
  • Si se crea una nueva sucursal con el mismo nombre de una ya eliminada anteriormente, se recuperará solo el nombre de la misma, es decir, no se creará una distinta (para evitar duplicaciones).
  • Si se elimina una sucursal, se debe guardar la fecha y hora de eliminación.

GESTIÓN DE USUARIOS

USER 8: Registro de usuario

Como cliente, quiero poder registrarme y crear una cuenta en la plataforma para realizar compras y acceder a mi historial de compras.

Criterios de Aceptación:

  • Debe existir un formulario de registro que incluya: nombre, dirección de correo electrónico, dirección de envío, número de teléfono, contraseña y confirmación de contraseña.
  • El correo electrónico debe ser único (que no exista en la BD nuestra) y validado (que tenga formato email).
  • Después del registro se implementa como control de seguridad adicional la verificación en dos pasos. Después de ingresar la contraseña, el sistema enviará un código de verificación único al correo electrónico registrado del usuario. El usuario deberá ingresar este código en la aplicación para completar el inicio de sesión. Este código será válido por un tiempo limitado (15 minutos) y solo podrá usarse una vez.
  • Los clientes deben poder iniciar sesión con sus credenciales después de activar su cuenta.
  • Un usuario podrá eliminarse lógicamente siempre y cuando no tenga asociado una compra. (Deuda) -Se deben validar los siguientes campos: -Nombre debe ser obligatorio, no puede tener mas de 100 caracteres, no permite espacios consecutivos -Email debe tener un formato válido, ser obligatorio, no permite espacios consecutivsohttps://github.com/5bits-prog/mega_store_back/wiki/_new -Direccion envío no puede superar los 100 caracteres -Nro telefono debe tener entre 8 y 15 digitos y ser un número -Nombre y número de teléfono deberán ser una cadena de caracteres. -Dirección de envío deberá ser una cadena alfanumérica -Todos los campos son obligatorios exceptuando número de teléfono y dirección de envío. -La contraseña debe cumplir con los requisitos de seguridad definidos: deberá tener longitud mínima de 8 caracteres alfanuméricos, al menos una mayúscula, una minúscula y un número. -Contraseña y confirmación de contraseña deben coincidir

###USER 9: Actualización de información personal

Como cliente, quiero actualizar mi información personal y de contacto para asegurarme de que mis datos estén correctos.

Criterios de Aceptación:

  • Debe existir una sección de "Perfil" donde los clientes puedan ver y editar su información personal.
  • Los campos editables deben incluir: nombre, dirección de correo electrónico, dirección de envío y número de teléfono.
  • Los cambios deben ser guardados y actualizados en la base de datos.
  • La información de contacto actualizada debe reflejarse en futuras órdenes y comunicaciones.
  • Se deben validar los campos con las mismas condiciones que el registro: -Nombre debe ser obligatorio, no puede tener mas de 100 caracteres, no permite espacios consecutivos -Email debe tener un formato válido, ser obligatorio, no permite espacios consecutivso -Direccion envío no puede superar los 100 caracteres -Nro telefono debe tener entre 8 y 15 digitos y ser un número

USER 10: Recuperación de contraseña

Como cliente, quiero recuperar mi contraseña en caso de olvido para acceder nuevamente a mi cuenta.

Criterios de Aceptación:

  • Debe haber un enlace "¿Olvidaste tu contraseña?" en la página de inicio de sesión.
  • El cliente debe poder ingresar su dirección de correo electrónico para recibir un código de restablecimiento.
  • Al recibir el código lo ingresara y deberá ingresar la nueva contraseña.
  • La nueva contraseña debe cumplir con los requisitos de seguridad definidos: deberá tener longitud mínima de 8 caracteres, al menos una mayúscula, una minúscula y un número.

USER 12: Gestión de usuarios (Deuda)

Como administrador de la aplicación, quiero poder gestionar los roles de usuario y sus permisos correspondientes, para asegurar que cada usuario tenga acceso solo a las funcionalidades y datos necesarios para su trabajo.

Criterios de aceptación:

  • El administrador puede asignar roles a los usuarios y modificar los permisos asociados a cada rol.
  • Los cambios en los roles y permisos se reflejan correctamente en el sistema y afectan al acceso de los usuarios a las diferentes funcionalidades.
  • El administrador puede crear, modificar y eliminar los roles.
  • Un rol no se puede eliminar si tiene usuario utilizando el mismo.

GESTIÓN DE PEDIDOS

USER 15: Carrito de compras

Como cliente, quiero poder agregar productos a mi carrito de compras y proceder al pago para completar mi compra.

Criterios de Aceptación:

  • Los clientes deben poder agregar productos al carrito de compras.
  • El carrito de compras debe mostrar los productos agregados, incluyendo nombre, cantidad, precio y total.
  • Debe haber una opción para revisar el carrito
  • Los clientes deben poder eliminar productos o cambiar cantidades antes de proceder al pago.
  • El cliente deberá seleccionar una forma de pago para luego confirmar la compra.
  • Para confirmar la compra se deberá contar con al menos un producto dentro del carrito
  • Se podrá seleccionar solo una forma de pago

GESTIÓN DE STOCK

USER 18: Alertas de stock

Como administrador, quiero recibir alertas cuando los niveles de Stock de un producto sean bajos para reabastecer a tiempo.

Criterios de Aceptación:

  • El sistema debe enviar alertas mediante email cuando el stock de un producto cae por debajo de un umbral definido.
  • Cuando se ingrese al stock de un producto, se debe poder visualizar una alerta por un nivel bajo/medio de stock.

USER 19: Registro de entradas y salidas de stock

Como administrador, quiero registrar entradas y salidas de stock para mantener un control preciso.

Criterios de Aceptación:

  • Se deberá ingresar el ID o nombre del producto
  • Se deberá seleccionar un producto y la opción modificar stock
  • Se deberá seleccionar la opción de ingresar o egresar stock (solo se podrá elegir una)
  • Debe haber un formulario con los campos: Cantidad a ingresar o egresar.
  • Se deberá guardar la fecha y hora de modificación del stock de forma automática
  • Se deberá calcular y mostrar el nuevo stock del producto
  • Se debe confirmar la operación y actualizar el stock del producto en la base de datos
  • La cantidad a ingresar o egresar deberá ser > 0

USER 21: Consultar stock de productos

Como administrador quiero visualizar el un listado de productos con su respectivo stock y nivel de reposición de los mismos (bajo, medio, alto) de un usuario para tener un mayor control de inventario.

Criterios de aceptación:

  • Se deberá listar todos los productos junto con su stock actual y su nivel de reposición

GESTIÓN DE INFORMES

USER 35: Generación de informes de ventas

Como administrador, quiero generar informes de ventas para analizar el rendimiento de la tienda

Criterios de Aceptación:

  • Debe haber un panel de informes que permita generar reportes de ventas totales por período (diario, mensual, anual)
  • Debe poder ingresarse un rango de fecha desde hasta
  • Los informes deben incluir métricas como ventas totales y top ten de productos más vendidos.
  • Los informes deben poder visualizarse en gráficos de barras.
  • Deben realizarse validaciones como: fechaDesde < fechaHasta, campos fecha y tipo estadistisca obligatorios.
  • Se limitará la visualización diaria a 40 días y la mensual a 40 meses.

USER 36: Generación de informes de clientes

Como administrador, quiero ver estadísticas sobre el comportamiento de los clientes para identificar tendencias y patrones

Criterios de Aceptación:

  • Debe haber una sección de análisis de clientes que muestre datos como frecuencia de compra, valor promedio de la venta.
  • Las estadísticas deben ser visualizables en gráficos de barras para facilitar la identificación de tendencias.
  • Debe poder seleccionarse que tipo de estadística quiere visualizarse.

USER 37: Exportación de informes

Como administrador, quiero exportar informes en formatos comunes como PDF para compartirlos con otros equipos.

Criterios de Aceptación:

  • Todos los informes deben tener una opción para ser exportados a formatos PDF.
  • Los archivos exportados deben mantener la integridad de los datos y el formato.

TOTAL USERS: 18

Clone this wiki locally