ESPECIFICACIÓN DE LOS REQUERIMIENTOS FUNCIONALES Y NO
FUNCIONALES DE SOFTWARE
HUGO JUNIOR PULGARIN BLANCO
Ficha N°(3070182)
ANALISIS Y DESARROLLO DE SOFTWARE
SERVICIO NACIONAL DE APRENDIZAJE
(SENA)
2024
TABLA DE CONTENIDO
1. Requerimientos
1.1. Requerimientos funcionales
1.2. Requerimientos no funcionales
1. REQUERIMIENTOS
1.1. Requerimientos funcionales
Son aquellos que describen qué debe hacer el sistema.
1. Gestión de Usuarios:
o Registro de usuarios con validación por correo electrónico.
o Inicio de sesión seguro con opciones de recuperación de contraseña.
o Edición de perfil de usuario (nombre, dirección, métodos de pago).
2. Catálogo de Productos:
o Visualización de productos con imágenes, descripciones, precios y
calificaciones.
o Filtros y búsquedas avanzadas por categoría, rango de precios y popularidad.
o Sistema de "productos destacados" o "ofertas del día".
3. Carrito de Compras:
o Añadir, eliminar y modificar la cantidad de productos.
o Calcular automáticamente el subtotal, impuestos y costo total.
4. Gestión de Pedidos:
o Seguimiento del estado del pedido (en preparación, enviado, entregado).
o Historial de pedidos para usuarios registrados.
5. Pasarela de Pagos:
o Integración con métodos de pago como PayPal, tarjetas de crédito y
transferencias bancarias.
o Confirmación y notificación automática del pago realizado.
6. Panel Administrativo:
o Gestión de productos (añadir, editar y eliminar).
o Control de inventario en tiempo real.
o Gestión de pedidos y clientes desde una interfaz centralizada.
7. Notificaciones:
o Envío de correos electrónicos automáticos para confirmación de registro,
pedidos y actualizaciones.
o Notificaciones push para promociones (si se implementa más adelante).
1.2. Requerimientos No Funcionales
Son características relacionadas con el rendimiento, la seguridad y la usabilidad del sistema.
1. Usabilidad:
o Diseño intuitivo y fácil de usar, especialmente para usuarios con poca
experiencia en tecnología.
o Compatibilidad con múltiples dispositivos (diseño responsivo).
2. Rendimiento:
o Tiempo de carga de las páginas inferior a 3 segundos en conexiones estándar.
o Capacidad para manejar hasta 500 usuarios simultáneamente sin degradación
del rendimiento.
3. Escalabilidad:
o La plataforma debe permitir añadir nuevos productos, categorías y usuarios
sin necesidad de cambios estructurales significativos.
4. Seguridad:
o Protección de datos sensibles mediante cifrado (SSL/TLS).
o Prevención de ataques comunes como inyección SQL y Cross-Site Scripting
(XSS).
o Cumplimiento de estándares de protección de datos (e.g., GDPR si aplica).
5. Disponibilidad:
o Uptime del 99.9% garantizado para minimizar interrupciones.
o Backup automático de datos al menos una vez al día.
6. Mantenibilidad:
o Código bien documentado y estructurado para facilitar actualizaciones
futuras.
o Uso de sistemas de control de versiones (Git).