Resultados finales - Blindas31/GRUPO5-2024-PROYINF GitHub Wiki

Análisis cuantitativo del desarrollo

De forma centralizada, a lo largo del proyecto se manejaron las siguientes historias de usuario.

Historia de usuario Estado
1 Solicitar boletín En proceso
2 Inicio de sesión FIA Desechada
3 Navegación usuario externo En proceso
4 Subir o eliminar boletines Completada
5 Consulta de requerimientos Completada
6 Información de interacción por boletín Completada
7 Modificación o eliminación de requerimientos Completada
8 Modificación configuraciones del sistema Completada

Considerando lo expuesto con anterioridad se ve que se completó el 71% de las funcionalidades deseadas.

Cualitativamente, el sistema es capaz de realizar las siguientes funcionalidades:

1. Requerimientos: El sistema es capaz de ingresarlos a la base de datos, visualizarlos, así como también modificarlos y eliminarlos. De forma final se dejo lista la comunicación del sistema con la comunicación de la API, faltando por implementar el funcionamiento final de la misma (por lo mismo si la api esta activa los ingresos y modificaciones de requerimientos generan un error). Todas las operaciones relacionadas a los requerimientos están reservadas para usuarios pertenecientes a la FIA.

2. Boletines: El sistema es capaz de ingresarlos a la base de datos, visualizarlos, eliminarlos y también modificarlos. En el caso de la visualización se permite al usuario externo visualizarlo en una pestaña nueva o también descargarlo desde esta misma pantalla. En cuanto a las otras funcionalidades mencionadas se restringe su acceso a los usuarios de la FIA. Permitiéndoles así, subir un boletín el cual será asociado a un requerimiento o modificar su estado, permitiendo que algunos sean de carácter publico o no.

3. Usuarios: En cuanto a este aspecto se empezó a emplear un nivel de jerarquización para controlar los accesos de cada usuario. Permitiendo así separar los accesos y hacerlo mas seguro a la hora de emplearse. En cuanto al registro no se creo ningún sistema ya que no se considero optimo, se espera poder realizar un vinculo vía API entre la base de usuarios de la FIA y la del presente sistema. Una vez escalado esto aumentaría la utilidad de la jerarquización.

4. Configuraciones: Se permite al super usuario modificar los roles del resto de usuario, pudiendo asignarles un nivel de staff o incluso desactivar el usuario, imposibilitando a interactuar con las funcionalidades que requieren de inicio de sesión. También se opto por agregar una configuración que permite cambiar el estado de activación de la API de revisión de requerimientos, en caso de de estar desactivada los ingresos y modificaciones de requerimientos se harían de forma directa, de lo contrario se revisaría el formato por medio de la API. Mencionar que debido a que no se termino de confeccionar la API, cada consulta que se le hace a la misma retornara un código de error, el cual se reflejara a la hora de utilizarla.

Tomando en cuenta lo mencionado, se llego a la siguiente matriz de trazabilidad.

HU Requisitos Funcionalidad Objetivos Importancia Estado
1 Solicitar un boletín acorde a los requerimientos que el usuario de la FIA ingrese Registrar el requerimiento y procesarlo Obtener un boletín según los requerimientos Alta En proceso
2 Iniciar sesión con las credenciales de la FIA Recibir las credenciales y procesarlas Iniciar sesión con las credenciales y tener los permisos correspondientes Alta Desechada
3 Buscar como usuario externo boletines según determinados filtros temáticos Buscar los boletines acordes a lo ingresado Mostrarle al usuario los boletines pertinentes a la búsqueda Media En proceso
4 El usuario de la FIA tiene que ser capaz de subir al sistema boletines, así como también ocultarlos o no del publico Ingresar boletines y modificar su estado Almacenar y exponer boletines en el sistema Alta Completada
5 Monitorear los requerimientos ingresados Consultar los requerimientos y separarlos según nivel de procesamiento Mostrarle al usuario de la FIA el estado de los requerimientos Baja Completada
6 Saber cuantas personas acceden por boletín Por cada interacción con el boletín ir incrementando dicho indicador Ser capaz de presentarle al usuario de la FIA las estadísticas de cada boletín Baja Completada
7 Modificar los atributos de los requerimientos Actualizar los datos del requerimiento según lo pedido o eliminarlo en caso de requerirse Mostrar los nuevos valores del requisito antes de procesarse Media Completada
8 Como usuario administrador modificare ciertas configuraciones del sistema Recibir los nuevos parámetros y modificarlos según corresponda en cada configuración Las configuraciones establecidas hacen efecto en el funcionamiento del sistema Media Completada

Llegando así, separando por prioridad, a que se implementó el 50% de las funcionalidades de alta prioridad, el 66% de las de prioridad media y el 100% de las funcionalidades de menor importancia.

Para llegar a una estimación mas correcta se ponderaron las tareas según importancia (de forma que prioridad alta pesa 3, media 2 y baja 1). De esta forma se llego a un logro del 64% de las funcionalidades propuestas.

Como se menciono al inicio del proyecto el objetivo principal del proyecto consistía en la generación automatizada de boletines a partir de requerimientos dados. En cuanto a lo mencionado se pudo lograr la primera fase de esta automatización, tanto la interfaz con recolección de requerimientos (así también como se trabajo parcialmente la revisión para adecuar a los formatos esperados), así como también la gestión del contenido que es parte del sistema. A modo de cuantificar lo logrado se rescataron los siguientes criterios:

Criterio Estado
Disminuir el tiempo de generación de boletines (generar en menos de 3 meses) No logrado
Generar el boletín acorde a las temáticas del requerimiento No logrado
El boletín generado cumple con los estándares de calidad deseados No logrado
Se reducen los costos de generación por boletín No logrado
Se hacen accesibles los boletines al publico general Logrado

Se puede ver que se cumplió un 20% de los criterios de éxito propuestos inicialmente.

Una vez expuesto el progreso a nivel cuantitativo, podemos plantearnos la siguiente pregunta.

¿Fue un éxito el proyecto?

A partir del grado de cumplimiento de las historias de usuario (64%) y criterios de éxito (20%), se puede ver que respecto a su nivel de prioridad el proyecto no tuvo el resultado esperado. Si se analiza de fondo el nivel de desarrollo actual, se puede ver que llego al punto en el que ya se encuentra listo para empezar a implementar las funcionalidades de IA y generación del boletín final. Considerando que se termino con todo lo que involucra la gestión y administración de datos, creemos como grupo que si se hubiera pactado un tiempo mayor (creemos de un semestre más) se hubiera llegado a un nivel de producto satisfactorio respecto a los criterios propuestos.

He de mencionar que la diferencia tan grande del grado de cumplimiento de funcionalidades y criterios de éxito, se debe en gran medida a que los criterios de éxito propuestos estaban dados a partir de las funcionalidades que no se alcanzaron a concretar. Lo anterior se traduce en poca satisfacción del producto.

Creemos como grupo que los factores más importantes que afectaron al desarrollo del proyecto fueron principalmente nuestros nulos conocimientos en los ámbitos más críticos he importantes del proyecto, con respecto a la implementación de APIS junto al uso de IA. Debido a ello nos limitamos en el desarrollo de la implementación de gestión de datos y administración de estos. logrando así terminar de desarrollar una pagina con las funciones anteriormente mencionadas. En otras palabras, creemos que dejamos encaminado el objetivo, más no logramos alcanzar la funcionalidad principal, el cual era lograr implementar las funcionalidades que iba a tener la IA en el proyecto final. Por otro lado, también consideramos el tiempo dado como un factor crítico en el resultado obtenido. Analizando el cómo quedó la versión final del proyecto que se pudo concretar, creemos que con un lapso de tiempo más largo, hubiéramos logrado aplicar los requerimientos relacionados con la IA, logrando así los objetivos propuestos junto al requerimiento principal del proyecto.