Académique Documents
Professionnel Documents
Culture Documents
Desarrollar un sistema formal en ambiente web, que brinde solución a una problemática real.
Descripción:
Se le solicita realizar un sistema web para ventas on-line de productos de abarrotería para una
marca de supermercados reconocida. El cual debe de brindar las siguientes funcionalidades
Seguridad
o Tipos de usuarios
Administrador: Tiene acceso a todas las opciones del sistema
Usuario comprador: Realiza compras de los productos ofrecidos por medio de
pedidos. Solo puede crear su propio usuario
Usuario bodeguero: Recibe los productos de los proveedores en la bodega por
medio de órdenes de compra
o Usuarios
Todo usuario debe de tener como mínimo la siguiente información: usuario
(recomendado que sea su correo electrónico), clave, Nombres, Apellidos y Tipo
de usuario.
Se debe de validar el uso de claves seguras
Debe incluir números.
Utilice una combinación de letras mayúsculas y minúsculas.
Incluya caracteres especiales - * ? ! @ # $ / () {} = . , ; :
Tenga una longitud mayor o igual a 8 caracteres.
No debe tener espacios en blanco.
1
o Auditoria de Productos
Se debe de llevar el control de cualquier cambio en los datos de todos los
productos del inventario, principalmente la cantidad en existencia, cantidad de
reserva, cantidad mínima y máxima, activo, precio compra, precio venta y
margen de ganancia.
El sistema brinda reportes en donde debe de indicar la fecha/hora del cambio,
campo modificado, valor anterior, valor nuevo, usuario modificador,
documento/proceso relacionado (pedido, orden de compra, proceso max-min) o
cambio manual.
Productos (inventario)
o Datos de los productos: código único, nombre, descripción, tipo de producto, unidad de
medida, precio venta, precio compra, porcentaje ganancia, cantidad en existencia,
cantidad en reserva, cantidad mínima, cantidad máxima, activo (S/N), imagen del
producto y proveedores que distribuyen el producto.
o Cuando se crea un nuevo producto la cantidad en reserva y mínima debe de ser cero y
la máxima 100 unidades
o Todos los precios se guardan con IVA.
o El tipo de producto, es una clasificación que permite la agrupación de los productos.
o La existencia de un producto nunca puede ser negativa
o El porcentaje de ganancia se utiliza para calcular el precio de venta a partir del último
precio de compra (precio venta = precio compra * porcentaje ganancia). Esto solo
puede ser modificado por un usuario administrador. Por tanto, el precio de venta de se
actualiza cada ver que cambia el precio de compra.
o La cantidad en reserva, es la cantidad de unidades del producto solicitado en los
pedidos “en progreso”
o La cantidad mínima, es la cantidad total (mayor a cero) del día en que menos ventas
(pedidos finalizados) se realizaron del producto en los últimos 30 días. Si este dato
llegara a ser igual a la cantidad máxima, entonces su valor es cero.
o La cantidad máxima, es la cantidad total (mayor a cero) del día en que más ventas
(pedidos finalizados) se realizaron del producto en los últimos 30 días.
o El campo activo, indica si el producto está activo en el sistema (S) o inactivo (N). Este
cambio únicamente lo puede hacer un usuario administrador
o Proceso Máximo – Mínimos: Esta funcionalidad del sistema permite al administrador
hacer el cálculo y actualización de las cantidades mínimas y máximas de un producto
específico o de todos los productos.
2
o Proceso de Inactivación Automática: Esta funcionalidad del sistema permite inactivar
todos los productos que actualmente no tienen existencia y no han tenido movimiento
(compra o venta) en los últimos 30 días.
o Cuando la cantidad en existencia de un producto llega a ser menor a su cantidad
mínima, automáticamente se debe de generar una nueva orden de compra al último
proveedor que se le compro dicho producto con una cantidad que permita igualar la
cantidad máxima definida en el inventario. Esta nueva orden de compra inicia con un
estatus de “automática”
Clientes
o Cualquier persona que cuente con una dirección de correo electrónico y tarjeta de
crédito puede ser cliente del sistema.
o Datos de los clientes: nombres y apellidos completos, número de NIT, país de origen,
teléfono y dirección de entrega. Dirección de correo electrónico y número de tarjeta de
crédito.
o Cliente Nuevo
Debe de ingresar una dirección de correo electrónico, el sistema valida que no
exista y luego solicita la contraseña que utilizará, así como todos los datos
generales necesarios.
o Cliente existente
Ingresa sus credenciales (email y contraseña) para ingresar al sistema y operar
sus pedidos.
3
o Cuando un pedido es “finalizado”, el sistema debe generar la factura respectiva (con la
fecha del día) con los datos ya almacenados del cliente y con el detalle de todos los
productos facturados (cantidad y precio de venta).
o Si un pedido “en progreso” (en la carretilla), no se ha finalizado y ya no se desea seguir
trabajando con él, se puede pasara a estatus “cancelado”. Liberando las reservas de
los productos. El pedido cancelado ya no puede cambiar nunca de estatus, es decir, ya
no se puede utilizar para nada.
o Si el cliente solicita una anulación de factura, el pedido asociado a la factura pasa a
estatus “devuelto” y la factura queda “anulada”. Todas las cantidades de los productos
del pedido suman nuevamente al inventario.
o Un cliente para poder hacer un nuevo pedido, debe de tener obligatoriamente
registrada su tarjeta de crédito y no debe de tener pedidos “en proceso”.
o El sistema debe de brindar al usuario reportes que le permitan saber el histórico de sus
pedidos y productos comprados, permitiendo realizar búsquedas (como mínimo) por
rango de fechas, numero de pedido, numero de factura, código de producto, nombre
del producto, tipo de producto o rango de precios.
Proveedores
o Datos de los proveedores: nombre comercial, nombres y apellidos completos del
representante legal, número de NIT, país de origen, teléfono y dirección, dirección de
correo electrónico.
o Un proveedor puede abastecernos de varios productos y un producto también puede
ser distribuido por muchos proveedores, por lo que es importante tener el control del
histórico de precios de cada producto y proveedor.
Bodega (compras)
o Para realizar una compra de productos a un proveedor, se debe de hacer por medio de
una “orden de compra”, agregando los productos requeridos, iniciando en un estatus de
“ingresada” la orden de compra. El precio de cada producto en la orden de compra se
toma en base a la última compra realizada al proveedor de ese producto, si nunca se
ha comprado el producto al proveedor se coloca precio de Q 1.00.
o No se debe de permitir realizar órdenes de compra de productos cuya cantidad
solicitada mas la existencia actual, supere su cantidad máxima definida.
o Al momento de que el proveedor confirma los precios y la cantidad de producto que
puede proporcionar (si no tiene existencia de algún producto, se debe de registrar con
valor 0 la cantidad del producto en la orden), la orden de compra pasa a estatus
“completada”, entonces se aumenta el inventario de cada producto incluido en la orden
de compra y se actualiza el precio de compra del producto. No se recibe producto de
forma parcial, hasta que esté todo el producto en bodega la orden de compra puede ser
“completada”.
4
o Si una orden de compra está “ingresada” y ya no se desea utilizar entonces puede
cambiar a estatus “cancelada”
o Si una orden de compra “completada” desea cancelarse, únicamente se puede realizar
si existe en inventario la cantidad necesaria de todos los productos incluidos en la
orden de compra, es decir, que al rebajar el inventario ningún dato quede con valor
negativo. Si esto es posible, entonces la orden de compra queda “reversada” y la
cantidad del producto es rebajada del inventario.
o Si la cantidad incluida de un producto en una orden de compra al momento de
“completarse” supera la cantidad máxima definida para el producto en el inventario,
solo se debe de aceptar la cantidad que iguale la cantidad máxima permitida.
o Cuando se complete una orden de compra, se debe de aumentar la existencia en el
inventario y actualizar el precio de compra de cada producto, lo que automáticamente
también debe de actualizar su precio de venta respectivo, tomando en cuenta su
margen de ganancia también ya definido en el inventario.
o El sistema debe de brindar al usuario reportes que le permitan saber el histórico de las
ordenes de compras y productos comprados, permitiendo realizar búsquedas (como
mínimo) por proveedor, por rango de fechas, código de producto, nombre del producto,
tipo de producto o rango de precios.
o Proceso – órdenes de compra automáticas: Dicho proceso generará órdenes de
compra con estatus “automática” de todos aquellos productos cuya existencia sea
menor que su cantidad en reserva. La cantidad a comprar debe de ser la que garantice
satisfacer la cantidad en reserva y que la existencia del producto quede igual a la
cantidad máxima del producto. El proveedor al que se le debe de generar la solicitud es
el último al que se le compro el producto. Solo se debe de generar una orden de
compra automática a cada proveedor, es decir, debe de agrupar todos los productos
que puede abastecer a la bodega.
Requerimientos Técnicos
Se deberá de configurar una red local con estas funciones.
IMPORTANTE: Debido a que el sistema tendrá una infraestructura web, toda la lógica del
negocio y procesos del mismo, deberán de ser implementados utilizando triggers, funciones,
procedimientos o cualquier otra estructura necesaria en la base de datos transaccional
o Clientes - Mantenimiento
o Proveedores - Mantenimiento
Entregar:
o Manual Técnico:
6
Diagrama Entidad Relación
IMPORTANTE:
o El tiempo de evaluación para cada grupo será de 15 minutos, por lo que cada grupo ya
debe de estar instalado y listo cuando se inicie.
Se evaluarán todos los módulos del sistema, probando concurrencia de las transacciones y
funcionamiento de las operaciones solicitadas.
o Manual Técnico:
7
IMPORTANTE:
o El tiempo de evaluación para cada grupo será de 15 minutos, por lo que cada grupo ya
debe de estar instalado y listo cuando se inicie.