Requisitos del Sistema
1. INTRODUCCIÓN
Este documento detalla los requisitos funcionales y no funcionales para la primera versión de la aplicación Nexus. El objetivo es definir con claridad cada una de las características y comportamientos del sistema para guiar al equipo de desarrollo y asegurar que el producto final cumpla con la visión del proyecto: ser la plataforma de ahorro definitiva en España.
2. REQUISITOS FUNCIONALES
Los requisitos funcionales describen las acciones específicas que el sistema debe ser capaz de realizar.
Módulo 1. Gestión de Usuarios y Perfiles
RF-01: Registro de Nuevos Usuarios
La aplicación debe permitir que una persona se registre para crear una cuenta. El proceso debe ser rápido y sencillo. Se ofrecerán dos vías de registro:
- Registro por correo electrónico: El usuario deberá proporcionar un
nombre de usuario(único),emailválido ycontraseñasegura. El sistema validará la unicidad del email y la seguridad de la contraseña. - Registro con redes sociales: Opción de registro usando cuentas de Google o Apple, importando nombre y email.
RF-02: Autenticación de Usuarios (Inicio de Sesión)
Usuarios registrados podrán iniciar sesión con email/contraseña o Google/Apple. Incluirá función de recuperación de contraseña segura vía email.
RF-03: Gestión del Perfil de Usuario
Los usuarios podrán ver y editar su perfil público desde una pestaña dedicada.
- Campos editables:
Foto de perfil,Nombre de usuario,Biografía(opcional),Ubicación(con opción de privacidad). - Secciones del perfil (Vista pública/privada): Mis Anuncios, Mis Ofertas Subidas, Valoraciones recibidas.
Módulo 2. Gestión de Productos de Segunda Mano
RF-04: Publicación de Anuncios de Segunda Mano
Usuarios registrados (Particulares) podrán publicar artículos de segunda mano. Formulario solicitará: Título, Descripción, Fotografías (múltiples), Categoría, Precio (€), Estado del producto (Enum: ComoNuevo, Usado, Defectos).
(Opcional v1) Explorar IA para sugerir campos a partir de fotos.
RF-05: Gestión de Anuncios Propios
Usuarios podrán gestionar sus anuncios desde su perfil:
Editaranuncio.- Marcar como
reservado. - Marcar como
vendido. Eliminaranuncio.Ocultar / Mostraren perfil.
Módulo 3. Gestión de Ofertas de Usuarios (Ofertas)
RF-06: Subida de Ofertas por Parte de los Usuarios
Usuarios (Particulares) podrán compartir ofertas de productos nuevos. Formulario pedirá: Enlace (URL), Título, Tienda, Precio Original (opcional), Precio de Oferta, Categoría, Imagen (opcional).
Módulo 4. Navegación y Visualización Principal
RF-07: Pestaña Principal ("Descubrir" / "Inicio")
Pantalla de bienvenida con:
- Zona Superior: Carrusel/Grid con ofertas destacadas (administradas/empresas) y/o ofertas de usuarios populares (likes).
- Zona Inferior: Listado/Carrusel de últimos anuncios de segunda mano cercanos.
RF-08: Pestaña de Categorías
Sección con categorías principales. Pulsar una categoría lleva a una vista filtrada de productos (nuevos y segunda mano).
RF-09: Sistema de Búsqueda Global
Barra de búsqueda que busca simultáneamente en ofertas nuevas y anuncios de segunda mano. Resultados mostrados en secciones diferenciadas.
Módulo 5. Interacción Social
RF-10: Sistema de "Likes" (Me Gusta)
Botón "like" en anuncios y ofertas. El número de likes influirá en la visibilidad del contenido.
RF-11: Sistema de Comentarios
Sección de comentarios en cada anuncio/oferta para interacción comunitaria. Incluir función de reporte de comentarios.
RF-12: Listas de Favoritos
Usuarios podrán crear listas personalizadas (públicas o privadas) para guardar anuncios/ofertas.
3. REQUISITOS NO FUNCIONALES
Estos requisitos describen cómo debe ser la aplicación en términos de calidad y atributos.
RNF-01: Rendimiento
Carga rápida (< 2s en 4G), scroll fluido.
RNF-02: Usabilidad y Accesibilidad
Interfaz limpia, intuitiva, moderna. Fácil de usar para todos los niveles tecnológicos. Seguir guías de diseño de plataformas.
RNF-03: Seguridad
Contraseñas hasheadas, comunicación HTTPS, cumplimiento RGPD.
RNF-04: Compatibilidad
Web: Últimas versiones de Chrome, Firefox, Safari, Edge. Android: Últimas 3 versiones principales.
RNF-05: Escalabilidad
Arquitectura backend (futura) diseñada para soportar crecimiento.
RNF-06: Mantenibilidad
Código bien documentado, seguir buenas prácticas.