Saltar a contenido

Requisitos no funcionales

Rendimiento

ID Requisito
RNF-01 El sistema deberá responder a las consultas de vuelos en un máximo de 2 segundos en condiciones normales de funcionamiento.
RNF-02 El sistema deberá soportar al menos 500 usuarios conectados simultáneamente sin degradar las funcionalidades principales.
RNF-03 Las operaciones de búsqueda y filtrado de vuelos deberán mantener un tiempo de respuesta inferior a 2 segundos con el volumen de datos previsto para el proyecto.

Seguridad

ID Requisito
RNF-04 Toda comunicación entre las aplicaciones cliente y el backend deberá realizarse mediante HTTPS.
RNF-05 Las contraseñas de los usuarios no deberán almacenarse en texto plano en la base de datos.
RNF-06 El sistema deberá impedir que un usuario acceda a las reservas o datos personales pertenecientes a otro usuario sin disponer de los permisos correspondientes.
RNF-07 Las operaciones administrativas deberán requerir autenticación y autorización mediante el rol correspondiente.
RNF-08 Las credenciales y datos sensibles utilizados por el backend no deberán almacenarse directamente en el código fuente.
RNF-09 El sistema deberá impedir que dos usuarios confirmen simultáneamente el mismo asiento para un vuelo.
RNF-10 La creación de una reserva y la asignación de sus asientos deberán realizarse de forma transaccional, evitando reservas parcialmente almacenadas.
RNF-11 Una reserva confirmada deberá conservar sus datos aunque el usuario cierre sesión o se reinicie el backend.
RNF-12 El sistema deberá mantener la coherencia entre la disponibilidad de asientos almacenada y los asientos mostrados durante el proceso de reserva.

Disponibilidad y recuperación

ID Requisito
RNF-13 El sistema deberá mantener una disponibilidad mínima del 99,5 % mensual, excluyendo los periodos de mantenimiento programado.
RNF-14 La base de datos deberá disponer de copias de seguridad con una periodicidad máxima de 24 horas.
RNF-15 El sistema deberá permitir recuperar la información de las reservas a partir de una copia de seguridad en caso de pérdida de datos.

Compatibilidad y accesibilidad

ID Requisito
RNF-16 La aplicación web deberá funcionar correctamente en las versiones actuales de Chrome, Firefox, Edge y Safari.
RNF-17 La aplicación móvil deberá funcionar en las versiones de Android establecidas como compatibles para el proyecto.
RNF-18 La API deberá proporcionar respuestas compatibles con las aplicaciones web y móvil.
RNF-19 La aplicación web deberá cumplir los criterios aplicables de WCAG 2.2 nivel AA.
RNF-20 Las funciones principales de búsqueda, reserva y gestión de vuelos deberán poder utilizarse mediante teclado sin depender exclusivamente del ratón.
RNF-21 Los formularios deberán proporcionar información comprensible sobre los errores producidos al introducir datos no válidos.
RNF-22 La aplicación web deberá adaptarse a dispositivos de escritorio, tabletas y teléfonos móviles mediante un diseño responsive.

Arquitectura y mantenimiento

ID Requisito
RNF-23 El backend deberá mantener separadas las responsabilidades de presentación, lógica de negocio y acceso a datos.
RNF-24 La comunicación entre las aplicaciones cliente y el backend deberá realizarse mediante una API REST.
RNF-25 La API deberá utilizar JSON como formato de intercambio de datos entre clientes y servidor.
RNF-26 Las operaciones de la API deberán utilizar los métodos HTTP correspondientes a la naturaleza de cada operación.
RNF-27 El sistema deberá permitir modificar o ampliar las funcionalidades de la aplicación sin requerir cambios innecesarios en el resto de componentes.

Trazabilidad y protección de datos

ID Requisito
RNF-28 Las operaciones administrativas sobre usuarios, reservas y vuelos deberán quedar registradas junto con el usuario que las realizó y la fecha de ejecución.
RNF-29 El sistema deberá registrar los errores producidos en el backend para facilitar su diagnóstico y mantenimiento.
RNF-30 El sistema deberá limitar el acceso a los datos personales de los pasajeros según los permisos del usuario autenticado.
RNF-31 Los datos personales de los usuarios deberán almacenarse únicamente cuando sean necesarios para proporcionar las funcionalidades del sistema.
RNF-32 El sistema deberá mantener la integridad y consistencia de la información relacionada con reservas, pasajeros, vuelos y asientos.
RNF-33 El sistema deberá garantizar que la capacidad disponible de un vuelo sea coherente con la capacidad de la aeronave asignada y las reservas confirmadas.