Subido por Jeremy Anthony

Especificación de requisitos de software

Anuncio
Especificación de requisitos de software
Proyecto: Sistema de Gestión de Tareas para Estudiantes
Revisión 1.0
Arellano Chiliquinga Jeremy Anthony
Ciencias Matemáticas y Física
Ingeniería de software
Noviembre 11 2024
Desarrollar una aplicación web que permita a los estudiantes gestionar sus tareas y proyectos académicos.
La aplicación debería incluir funciones para agregar, editar y eliminar tareas, así como la posibilidad de
establecer fechas de vencimiento y prioridades.
Características Clave:
1.
Registro de Usuarios:
o
2.
3.
4.
Gestión de Tareas:
o
Agregar, editar y eliminar tareas.
o
Asignar prioridades (alta, media, baja).
o
Establecer fechas de vencimiento y recordatorios.
Interfaz Intuitiva:
o
Diseño responsivo que funcione en dispositivos móviles y de escritorio.
o
Vista de tareas en formato de lista y calendario.
Categorías y Etiquetas:
o
5.
Permitir a los usuarios organizar tareas por materias o proyectos.
Notificaciones:
o
6.
Permitir a los usuarios crear cuentas y gestionar su perfil.
Recordatorios para las tareas que se aproximan a su fecha de vencimiento.
Estadísticas:
o
Resumen de tareas completadas y pendientes, para que los usuarios puedan evaluar su
progreso.
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Rev. 1.0
Pág. 3
Historial de Revisiones
Fecha
Revisión
Descripción
Autor
6/11/24
1.0
Primera Version de requisitos
Equipo de Desarrollo SGTA
Documento validado por las partes en fecha: [Fecha]
Por el cliente
Por la empresa suministradora
Fdo. D./ Dña [Nombre]
Fdo. D./Dña [Nombre]
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Contenido
FICHA DEL DOCUMENTO
CONTENIDO
1
INTRODUCCIÓN
1.1
Propósito
1.2
Alcance
1.3
Personal involucrado
1.4
Definiciones, acrónimos y abreviaturas
1.5
Referencias
1.6
Resumen
2
DESCRIPCIÓN GENERAL
2.1
Perspectiva del producto
2.2
Funcionalidad del producto
2.3
Características de los usuarios
2.4
Restricciones
2.5
Suposiciones y dependencias
2.6
Evolución previsible del sistema
3
REQUISITOS ESPECÍFICOS
3.1
Requisitos comunes de los interfaces
3.1.1
Interfaces de usuario
3.1.2
Interfaces de hardware
3.1.3
Interfaces de software
3.1.4
Interfaces de comunicación
3.2
Requisitos funcionales
3.2.1
Requisito funcional 1
3.2.2
Requisito funcional 2
3.2.3
Requisito funcional 3
3.2.4
Requisito funcional n
3.3
Requisitos no funcionales
3.3.1
Requisitos de rendimiento
3.3.2
Seguridad
3.3.3
Fiabilidad
3.3.4
Disponibilidad
3.3.5
Mantenibilidad
3.3.6
Portabilidad
3.4
Otros requisitos
4
APÉNDICES
Rev. 1.0
Pág. 4
¡ERROR! MARCADOR NO DEFINIDO.
4
5
5
5
6
7
7
9
9
9
9
10
10
11
11
11
11
12
12
12
13
13
13
15
16
¡Error! Marcador no definido.
17
17
18
19
19
20
21
21
22
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
1
Rev. 1.0
Pág. 5
Introducción
El propósito de este documento es presentar una especificación detallada de los requisitos
funcionales y no funcionales para el desarrollo del Sistema de Gestión de Tareas Académicas
(SGTA). Este sistema está destinado a estudiantes de nivel secundario y superior, proporcionándoles
una herramienta que les permita organizar y gestionar sus responsabilidades académicas de manera
eficiente, facilitando el seguimiento de tareas, proyectos y fechas límite. El documento de requisitos
sirve como guía para el equipo de desarrollo, los diseñadores, los analistas de sistemas y cualquier
otra persona involucrada en el proyecto, asegurando que todos los aspectos clave del sistema estén
debidamente definidos y alineados con las expectativas del usuario.
1.1
Propósito
El propósito del SGTA es ayudar a los estudiantes a organizar y priorizar sus responsabilidades
académicas de forma efectiva. La aplicación permitirá a los estudiantes registrar tareas, asignar
fechas de entrega, definir prioridades y recibir recordatorios y notificaciones, asegurando así que
las tareas no sean olvidadas y que los estudiantes puedan planificar su tiempo con mayor
precisión. Este sistema busca reducir la carga de seguimiento manual de tareas, permitiendo a los
estudiantes enfocarse en sus estudios y mejorar su rendimiento académico mediante una
organización simplificada.
Este documento de especificación de requisitos tiene como objetivo establecer una descripción
clara y precisa de todas las características que el SGTA debe incorporar. Además, delimita los
elementos técnicos y funcionales que guiarán su desarrollo, proporcionando una base para que los
equipos de diseño, desarrollo y pruebas se aseguren de que el sistema final cumpla con las
expectativas de todos los interesados.
1.2
Alcance
La aplicación SGTA proporcionará una plataforma en la que los estudiantes puedan registrar y
organizar sus tareas y proyectos académicos. Permitirá a los usuarios gestionar sus
responsabilidades a través de una interfaz intuitiva y personalizable.
o
Gestión de tareas como añadir, modificar y eliminar tareas académicas.
o
Prioridades y categorización con la asignación de prioridad y etiquetas personalizables.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
o
Rev. 1.0
Pág. 6
Recordatorios y notificaciones de envío con recordatorios mediante notificaciones en la
app y vía correo electrónico.
o
Visualización de tareas con modos de vista en lista, calendario semanal y mensual.
o
Estadísticas y reportes con visualización del progreso y eficiencia mediante gráficos e
informes semanales.
o
El sistema se integrará con otras plataformas como calendarios externos y se espera que
esté disponible para dispositivos de escritorio y móviles. Esta funcionalidad será
accesible en cualquier navegador compatible con HTML5 y JavaScript.
1.3
Personal involucrado
Nombre
María Vélez
Rol
Programadora
Categoría profesional
Analista
Responsabilidades
Desarrollo del sistema
Información de contacto
[email protected]
Aprobación
Nombre
Carlos Peña
Rol
Analista de Requisitos
Categoría profesional
Analista
Responsabilidades
Recolección y validación de requisitos
Información de contacto
[email protected]
Aprobación
Nombre
Laura Gómez
Rol
UX Designer
Categoría profesional
Analista
Responsabilidades
Diseño de interfaz y experiencia de usuario
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Información de contacto
Rev. 1.0
Pág. 7
[email protected]
Aprobación
Nombre
Jorge Silva
Rol
Tester
Categoría profesional
Analista
Responsabilidades
Pruebas de funcionalidad y control de calidad
Información de contacto
[email protected]
Aprobación
Nombre
Susana Ríos
Rol
Gerente de Proyecto
Categoría profesional
Analista
Responsabilidades
Coordinación general y supervisión del proyecto
Información de contacto
[email protected]
Aprobación
1.4
Definiciones, acrónimos y abreviaturas
SGTA: Sistema de Gestión de Tareas Académicas.
UI: Interfaz de Usuario.
DB: Base de Datos.
LMS: Learning Management System, sistema de gestión de aprendizaje.
API: Application Programming Interface, interfaz de programación de aplicaciones.
1.5
Referencias
Referencia
Título
1
IEEE
Practice
Ruta
Fecha
Autor
Recommended
https://standards.ieee.org/standard/8
1998
IEEE
for
30-1998.html
Software
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Rev. 1.0
Pág. 8
Requirements
Specification.
ANSI/IEEE std. 830
2
3
Software
Engineering
https://www.computer.org/education/
Body
Knowledge
bodies-of-knowledge/software-
Computer
(SWEBOK)
engineering
Society
Requisitos de Software:
https://example.com/software-
Teoría y Práctica
requirements-wiegers
of
2014
2006
IEEE
Karl
Wiegers,
Joy Beatty
4
Análisis
y
Diseño
Orientado a Objetos con
https://example.com/uml-object-
2007
oriented
Grady
Booch,
Aplicación en UML
James
Rumbaugh
5
Métodos
Ágiles:
https://example.com/agile-methods
2004
Principios, Patrones y
Robert C.
Martin
Prácticas
6
UML Distilled: A Brief
https://example.com/uml-distilled
2003
Guide to the Standard
Object
Martin
Fowler
Modeling
Language
7
Testing
de
Software:
https://example.com/software-testing
2002
Principios y Prácticas
8
Fundamentos
Administración
Glenford J.
Myers
de
la
https://example.com/project-
de
management
2011
Robert
Futrell,
Proyectos de Software
Donald F.
Shafer
9
Continuous
Integration:
Improving
Software
Quality
Reducing
and
T.
https://example.com/continuousintegration
2006
Paul
Duvall,
Steve
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Rev. 1.0
Pág. 9
Risk
10
The
11
Matyas
Art
of
Software
https://example.com/art-software-
Testing
testing
Software Requirements,
https://example.com/software-
3rd Edition
requirements-3rd
1979
Glenford J.
Myers
2013
Karl
Wiegers,
Joy Beatty
1.6
Resumen
Este documento describe los requisitos de la aplicación SGTA en detalle, proporcionando un
marco de trabajo para los desarrolladores y asegurando que cada componente del sistema esté
diseñado y desarrollado conforme a las necesidades del usuario final. Además, se establece la
metodología de validación y pruebas que se usará para evaluar el desempeño y la confiabilidad del
sistema.
2
Descripción general
2.1
Perspectiva del producto
SGTA es una aplicación independiente que ayudará a los estudiantes a organizar sus
responsabilidades académicas de manera sencilla. A través de su diseño responsivo y su
integración con herramientas de comunicación, como el correo electrónico, SGTA garantizará que
los estudiantes puedan gestionar sus tareas en cualquier momento y lugar.
2.2
Funcionalidad del producto
o
Los usuarios podrán añadir, editar, eliminar y buscar tareas. Cada tarea incluirá
información básica como título, descripción, fecha de vencimiento y prioridad. Además,
los usuarios podrán clasificar sus tareas mediante etiquetas para facilitar su organización.
o
La aplicación enviará recordatorios de tareas próximas a vencer mediante notificaciones
push y correo electrónico. Los usuarios podrán configurar la anticipación de estos
recordatorios.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
o
Rev. 1.0
Pág. 10
Las tareas podrán visualizarse en un formato de lista o en un calendario semanal y
mensual, permitiendo una rápida identificación de las fechas de vencimiento y
organización de prioridades.
o
Se generarán gráficos y estadísticas que muestren el rendimiento del usuario (por
ejemplo, porcentaje de tareas completadas a tiempo). Esta funcionalidad motivará al
estudiante a mejorar su organización y efectividad.
o
Integración con herramientas externas, como calendarios de Google o Microsoft, para la
sincronización de fechas de vencimiento importantes.
2.3
Características de los usuarios
Tipo de usuario
Estudiante
Experiencia Técnica
Básica/Intermedia
Habilidades
Manejo de computadores y dispositivos móviles
Actividades
Añadir y gestionar tareas académicas
Tipo de usuario
Docente
Experiencia Técnica
Intermedia
Habilidades
Manejo de computadores
Actividades
Revisar y consultar tareas de los estudiantes
Tipo de usuario
Tutor
Experiencia Técnica
Intermedia
Habilidades
Manejo de computadores
Actividades
Supervisar el rendimiento de los estudiantes
2.4
Restricciones
o
El sistema será accesible como una aplicación web desarrollada con tecnologías como
React, Node.js y MongoDB.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
o
Rev. 1.0
Pág. 11
Se deben cumplir todas las normativas de seguridad de datos personales y confidenciales,
especialmente para los datos de estudiantes.
o
El sistema debe funcionar en los navegadores modernos (Google Chrome, Firefox,
Safari) y ser responsivo para diferentes dispositivos.
o
El acceso y el uso completo de las funciones del sistema dependen de una conexión
estable a Internet.
2.5
Suposiciones y dependencias
o
Los usuarios contarán con acceso a dispositivos compatibles con navegadores modernos.
o
La aplicación requerirá conexión continua a Internet para el almacenamiento en la nube
de los datos del usuario.
o
Los desarrolladores utilizarán una base de datos NoSQL (MongoDB) que será respaldada
periódicamente para asegurar la integridad y disponibilidad de la información.
2.6
Evolución previsible del sistema
o Se evaluará la posibilidad de integrar la aplicación con sistemas de gestión de aprendizaje
para sincronizar tareas académicas de manera automática.
o En una segunda fase de desarrollo, se considerará agregar funciones de colaboración en
tiempo real para trabajos en equipo.
o Compatibilidad con más dispositivos donde se planea lanzar una aplicación nativa para
Android e iOS para mayor accesibilidad y uso offline.
3
Requisitos específicos
3.1
Requisitos comunes de los interfaces
Esta sección especifica los elementos clave de los interfaces de usuario e interfaces de sistema,
incluyendo los detalles de las entradas y salidas de datos que facilitarán la interacción del usuario
con el Sistema de Gestión de Tareas Académicas (SGTA). Los requisitos de interfaces aseguran
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Rev. 1.0
Pág. 12
que el sistema sea intuitivo y funcional, permitiendo que los usuarios interactúen eficientemente
con él.
3.1.1
Interfaces de usuario
o La aplicación debe ser intuitiva y permitir la navegación mediante iconos y menús
desplegables. La interfaz de usuario debe emplear colores y tipografías que sean
agradables faciliten la lectura prolongada.
o La página de inicio de sesión Permitirá a los usuarios iniciar sesión o registrarse
rápidamente mediante correo y contraseña, o a través de redes sociales.
o El Panel principal dará una vista general de las tareas en formato de lista o calendario.
Desde aquí se podrá acceder a las funcionalidades de agregar, editar y eliminar tareas.
o Vista de estadísticas que se verá un Panel con gráficos y métricas del rendimiento,
incluyendo porcentaje de tareas completadas, tiempo promedio de cumplimiento y
eficiencia.
o La aplicación debe cumplir con los estándares de accesibilidad WCAG 2.1,
proporcionando funciones como lector de pantalla y ajustes de alto contraste.
3.1.2
Interfaces de hardware
o Computadoras de escritorio y laptops con sistemas operativos Windows, macOS o
Linux.
o Dispositivos móviles con sistemas Android e iOS (a través de navegadores o futuras
aplicaciones nativas).
3.1.3
Interfaces de software
o Correo Electrónico: Para el envío de notificaciones y recordatorios.
o APIs de Notificaciones Push: Para enviar notificaciones en dispositivos móviles y de
escritorio.
o APIs de Integración de Calendario: Sincronización con Google Calendar, iCal y
Outlook.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
3.1.4
Rev. 1.0
Pág. 13
Interfaces de comunicación
El sistema se comunicará mediante HTTP/HTTPS, asegurando en todo momento la
confidencialidad de los datos transmitidos. Además, se usarán protocolos de autenticación
segura como JWT para proteger las sesiones del usuario.
3.2
Requisitos funcionales o características del sistema
Esta sección describe las principales funcionalidades que el sistema Sistema de Gestión de
Tareas Académicas (SGTA) debe ofrecer. Cada uno de estos requisitos funcionales define la
secuencia de operaciones que el sistema debe realizar, los tipos de datos que deberá procesar
y cómo manejará tanto entradas y salidas, como situaciones anormales. Los requisitos están
orientados a asegurar que el sistema sea preciso, eficiente y capaz de responder a diversas
situaciones de uso, incluyendo validación de datos y manejo de errores.
3.2.1
Requisito funcional 1
Gestión de Usuarios
Este módulo se encarga de la administración de los usuarios del sistema, incluyendo el
registro, autenticación, y asignación de roles. Es fundamental para asegurar que el acceso
al sistema esté restringido a usuarios autorizados.
RF-1. Registro de Usuarios
El sistema debe permitir que nuevos usuarios, como estudiantes y profesores, se registren
con sus datos personales y configuren sus credenciales de acceso.
Entradas: Nombre completo, correo electrónico, tipo de usuario (estudiante o profesor),
contraseña.
Comprobación de Validez
o El correo electrónico debe tener un formato válido (ej. [email protected]) y
ser único dentro del sistema.
o La contraseña debe tener al menos 8 caracteres, incluir una combinación de letras y
números, y almacenarse de forma encriptada.
Secuencia de Operaciones
1.
Validar la información de entrada.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
2.
Comprobar si el correo electrónico ya está registrado en la base de datos.
3.
En caso de que el correo sea único, proceder con el registro del usuario.
4.
Encriptar la contraseña antes de almacenarla.
5.
Almacenar los datos en la base de datos.
Rev. 1.0
Pág. 14
Respuestas a Situaciones Anormales
o Si el correo electrónico ya está registrado, mostrar un mensaje de error al usuario
indicando que el correo ya está en uso.
o Si la contraseña no cumple con los requisitos, solicitar que el usuario modifique la
entrada.
Salidas: Confirmación de registro exitoso o mensaje de error indicando el tipo de
problema encontrado.
Relación de Entradas y Salidas: Al finalizar, el sistema debe redirigir al usuario a la
página de inicio de sesión si el registro es exitoso.
RF-2. Autenticación de Usuarios
Permitir que los usuarios registrados puedan acceder al sistema ingresando sus
credenciales.
Entradas: Nombre de usuario o correo electrónico y contraseña.
Comprobación de Validez:
o Verificar que el correo y la contraseña coincidan con una cuenta existente.
o En caso de múltiples intentos fallidos, bloquear el acceso temporalmente para
mejorar la seguridad.
Secuencia de Operaciones
1.
Verificar que el correo y la contraseña coincidan en la base de datos.
2.
Registrar la hora de inicio de sesión en el sistema para futuros análisis de
actividad.
3.
Permitir el acceso y cargar el perfil de usuario correspondiente.
4.
Respuestas a Situaciones Anormales:
5.
Si las credenciales son incorrectas, mostrar un mensaje de error.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
6.
Rev. 1.0
Pág. 15
Si el usuario ha intentado ingresar varias veces sin éxito, bloquear el acceso
durante un período definido (ej. 5 minutos).
Salidas: Acceso al sistema con permisos específicos según el rol del usuario (estudiante o
profesor).
RF-3. Recuperación de Contraseña
Proveer un mecanismo para que los usuarios recuperen su contraseña en caso de olvido.
Entradas: Dirección de correo electrónico del usuario.
Comprobación de Validez:
o Verificar que el correo ingresado esté registrado en el sistema.
Secuencia de Operaciones:
1.
Enviar un correo con un enlace único para restablecer la contraseña.
2.
Confirma que el enlace sea seguro y tenga un tiempo de expiración.
3.
Permitir al usuario ingresar una nueva contraseña y almacenarla encriptada.
Respuestas a Situaciones Anormales:
o Si el correo no está registrado, mostrar un mensaje de error indicando que no existe
una cuenta asociada.
Salidas: Confirmación de que el enlace de recuperación ha sido enviado o mensaje de
error.
3.2.2
Requisito funcional 2
Gestión de Tareas Académicas
Este módulo se encarga de la creación, edición, visualización y seguimiento de las tareas
académicas asignadas a los estudiantes.
RF-4. Creación de Tareas por el Profesor
Permitir que los profesores puedan crear nuevas tareas y asignarlas a sus estudiantes.
Entradas: Título de la tarea, descripción detallada, fecha límite, adjuntos (opcional), lista
de estudiantes asignados.
Comprobación de Validez:
o Validar que la fecha límite sea una fecha futura y que el título no exceda los
caracteres permitidos.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Rev. 1.0
Pág. 16
Secuencia de Operaciones:
1.
Validar y procesar los datos de entrada.
2.
Crear una entrada en la base de datos con los detalles de la tarea.
3.
Notificar a los estudiantes asignados mediante un correo o notificación en el
sistema.
4.
Respuestas a Situaciones Anormales:
5.
Si algún campo obligatorio está vacío, informar al profesor para completar los
datos.
6.
Si hay un problema con la base de datos, mostrar un mensaje de error e intentar
nuevamente.
Salidas: Confirmación de que la tarea fue creada con éxito y notificación a los estudiantes.
RF-5. Entrega de Tareas por el Estudiante
Permitir que los estudiantes suban su tarea al sistema para que el profesor la pueda revisar.
Entradas: Archivo de la tarea, comentarios opcionales.
Comprobación de Validez
1.
Verificar el tipo y tamaño del archivo subido.
2.
Secuencia de Operaciones:
3.
Validar el tipo de archivo para asegurar que sea compatible (PDF, Word, etc.).
4.
Almacenar el archivo y relacionarlo con la tarea asignada en la base de datos.
5.
Confirmar al estudiante que la entrega fue exitosa.
Respuestas a Situaciones Anormales:
o Si el archivo es de tipo no permitido o excede el tamaño máximo, rechazar la
subida e informar al estudiante.
Salidas: Confirmación de entrega exitosa o mensaje de error indicando el problema
encontrado.
3.2.3
Requisito funcional 3
Gestión de Notificaciones y Alertas
Este módulo gestiona las notificaciones automáticas para mantener a los usuarios
informados sobre eventos importantes, como fechas de entrega próximas o tareas nuevas.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Rev. 1.0
Pág. 17
RF-6. Envío de Notificaciones de Nuevas Tareas
Informar a los estudiantes cuando se les asigna una nueva tarea.
Entradas: Información de la tarea (título, descripción, fecha límite), lista de estudiantes.
Secuencia de Operaciones:
1.
Crear una notificación para cada estudiante en el sistema.
2.
Enviar un correo electrónico con los detalles de la tarea.
3.
Respuestas a Situaciones Anormales:
4.
Si ocurre un error en el envío de correos, registrar la falla y notificar al profesor
responsable.
Salidas: Notificación en el sistema y correo electrónico a cada estudiante.
RF-7. Alerta de Fecha Límite Próxima
Enviar un recordatorio a los estudiantes cuando se aproxima la fecha de entrega de una
tarea.
Entradas: Fecha límite de la tarea, lista de estudiantes asignados.
Secuencia de Operaciones:
1.
Programar el sistema para enviar la alerta con 48 horas de antelación.
2.
Enviar un recordatorio al correo electrónico y en el sistema.
3.
Respuestas a Situaciones Anormales:
4.
Si algún estudiante no recibe la notificación, registrar el error y reenviar.
Salidas: Recordatorio por correo y en el sistema.
Estos requisitos funcionales buscan asegurar que el sistema SGTA sea eficiente, fácil de
usar y que proporcione una experiencia de usuario efectiva tanto para estudiantes como
para profesores.
3.3
Requisitos no funcionales
3.3.1
Requisitos de rendimiento
Esta sección especifica los requisitos relacionados con el rendimiento esperado del sistema
en términos de capacidad de carga, velocidad de respuesta y eficiencia. Todos estos
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
Rev. 1.0
Pág. 18
requisitos son mesurables y se presentan con valores concretos para garantizar su
verificación y cumplimiento.
RNF-1: El sistema debe poder soportar al menos 100 usuarios concurrentes sin
experimentar problemas de rendimiento.
RNF-2: El tiempo máximo de respuesta para la carga de una página debe ser de tres (3)
segundos en condiciones de carga promedio.
RNF-3: El sistema debe manejar al menos 500 transacciones por minuto con un tiempo de
procesamiento inferior a dos (2) segundos por transacción en un 95% de las transacciones.
RNF-4: La velocidad de consulta a la base de datos para operaciones simples, como la
obtención de listas de tareas, no debe exceder 500 ms.
RNF-5: En situaciones de carga pico, el sistema debe redistribuir la carga de trabajo de
manera eficiente para evitar cuellos de botella.
3.3.2
Seguridad
Este apartado detalla los mecanismos y prácticas de seguridad que el sistema debe
implementar
para
protegerse
contra
accesos
no
autorizados,
modificaciones
malintencionadas y pérdida de información. La seguridad es clave para mantener la
integridad de los datos y la privacidad del usuario.
RNF-1: El usuario deberá autenticarse mediante un nombre de usuario y una contraseña
encriptada, que se almacenará siguiendo las mejores prácticas de seguridad (hashing con
bcrypt, por ejemplo).
RNF-2: Se debe implementar un sistema de autenticación multifactorial (MFA) para
acceso a configuraciones sensibles del sistema.
RNF-3: Todas las comunicaciones entre el cliente y el servidor deberán realizarse
mediante el protocolo HTTPS, garantizando la encriptación de los datos transmitidos.
RNF-4: Se deben mantener logs de actividad que registren los accesos y cambios en los
datos, así como intentos de acceso fallidos, para auditorías de seguridad.
RNF-5: La integridad de los datos críticos debe ser comprobada mediante la verificación
de checksum en operaciones de actualización o consulta.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
3.3.3
Rev. 1.0
Pág. 19
Fiabilidad
La fiabilidad del sistema asegura que este funcione correctamente en condiciones normales
y que el número de errores o interrupciones sea mínimo. Para garantizar la fiabilidad, se
especifican los tiempos de funcionamiento sin fallos y los tiempos de recuperación.
RNF-1: El sistema debe garantizar un tiempo de funcionamiento continuo de al menos
10,000 horas entre fallos (MTBF - Mean Time Between Failures).
RNF-2: En caso de fallo crítico, el sistema deberá restaurarse completamente y en un
estado funcional en menos de 10 minutos.
RNF-3: Se deben realizar copias de seguridad automáticas de la base de datos cada 24
horas, y estas deben almacenarse en un servidor seguro.
RNF-4: La aplicación debe gestionar las excepciones de manera que cualquier error o fallo
se maneje de forma segura, evitando la corrupción de datos o la pérdida de información.
3.3.4
Disponibilidad
Esta sección especifica los niveles de disponibilidad requeridos por el sistema, detallando
el tiempo que el sistema debe estar en funcionamiento y accesible para los usuarios, y el
tiempo permitido para tareas de mantenimiento.
RNF-1: El sistema debe estar disponible al menos el 99% del tiempo durante horas de
actividad pico (de 7:00 a 23:00 horas).
RNF-2: La ventana de mantenimiento planificada no deberá exceder de cuatro (4) horas
mensuales, y debe programarse en horarios de baja actividad, preferiblemente entre las
2:00 y las 5:00 de la madrugada.
RNF-3: Se debe disponer de un sistema de notificaciones que informe a los usuarios con al
menos 24 horas de antelación sobre cualquier ventana de mantenimiento programada.
RNF-4: En caso de una interrupción del sistema, se debe informar a los usuarios y ofrecer
un tiempo estimado de resolución.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
3.3.5
Rev. 1.0
Pág. 20
Mantenibilidad
La mantenibilidad hace referencia a la facilidad con la que se pueden realizar
modificaciones, actualizaciones y correcciones en el sistema, permitiendo su adaptabilidad
y mejoras futuras.
RNF-1: El sistema debe estar diseñado con un enfoque modular que permita la
actualización de funciones específicas sin afectar el funcionamiento general.
RNF-2: Los desarrolladores realizarán mantenimiento preventivo cada tres (3) meses para
optimizar el rendimiento y corregir posibles errores.
RNF-3: El sistema deberá ser documentado en su totalidad, incluyendo el código fuente,
para facilitar futuras modificaciones por parte de terceros.
RNF-4: El sistema debe permitir la configuración de parámetros sin necesidad de acceder
al código, facilitando ajustes en las reglas de negocio.
RNF-5: Se ofrece a los clientes dos revisiones de mantenimiento correctivo gratuitas
dentro del primer año tras el lanzamiento. Las revisiones adicionales estarán sujetas a
costos adicionales.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
3.3.6
Rev. 1.0
Pág. 21
Portabilidad
La portabilidad del sistema permite su ejecución en diferentes plataformas y entornos con
un mínimo esfuerzo de adaptación, asegurando su funcionalidad en diversos sistemas
operativos y dispositivos.
RNF-1: El sistema será compatible con los sistemas operativos Windows, Linux y MacOS,
garantizando un nivel de portabilidad del 99.9%.
RNF-2: La aplicación web debe ser accesible desde navegadores modernos (Chrome,
Firefox, Safari y Edge), manteniendo la misma funcionalidad en todos ellos.
RNF-3: Se utilizará el lenguaje de programación Java y un entorno de desarrollo
multiplataforma para maximizar la compatibilidad y portabilidad del sistema.
RNF-4: La base de datos empleada será PostgreSQL, elegida por su capacidad de
funcionar en múltiples plataformas sin modificaciones significativas.
3.4 Otros requisitos
En esta sección se detallan requisitos adicionales que no encajan en ninguna de las categorías
anteriores, pero que son relevantes para el sistema.
Requisitos Culturales y Políticos
El sistema debe adaptarse a las políticas de privacidad y protección de datos de cada país donde
se implemente, respetando regulaciones como el GDPR en Europa o la CCPA en California.
Requisitos Legales
El sistema debe cumplir con las normativas vigentes sobre propiedad intelectual y protección de
datos, incluyendo la implementación de políticas de uso y términos de servicio que respalden el
cumplimiento de estas normativas.
Propiedad Intelectual
Los costos de licencia del sistema se calcularán en función del número de usuarios que se
conecten simultáneamente al sistema, con opciones de pago por usuario y licencias
institucionales.
Descripción de requisitos del sofware
Sistema de Gestión de Tareas para Estudiantes
Especificación de requisitos de software
4
Rev. 1.0
Pág. 22
Apéndices
Los apéndices contienen información adicional relevante para la especificación de requisitos del
sistema, incluyendo términos y definiciones específicas, diagramas de flujo, ejemplos de interfaz de
usuario y plantillas para la documentación.
Descripción de requisitos del sofware
Descargar