Skip to content

Documento del proyecto

Ismael Herrera edited this page Dec 19, 2023 · 29 revisions

decide-part-camaron-3

  • Grupo 3, Mañana
  • Curso escolar: 2023/2024
  • Asignatura: Evolución y Gestión de la Configuración (EGC)

Indicadores del proyecto

Miembro del equipo Horas Commits LoC Tests Issues Incremento
Domínguez-Adame Ruiz, Alberto 60 50 1166 6 6 Varias preguntas en la misma votación. Interfaz de varias preguntas en la misma votación.
Herrera Ramírez, Ismael 60 52 781 8 9 Implementación del nuevo tipo de votación jerárquico. Roles en el censo para votación jerárquica.
Izquierdo Lavado, Mario 60 41 494 13 7 Checkbox de Si/No para una Votación. Checkbox de una tercera opción para una Votación. Interfaz de filtro de tipo de votación.
Merino Palma, Alejandro José 60 21 496 6 7 Votaciones por preferencia. Ayuda en varias preguntas en la misma votación.
Olmedo Marín, Marcos 60 31 774 5 6 Exportación de los resultados de las votaciones a csv. Exportación del censo de una votación a csv
Tomás Vela, Elena 60 22 423 6 3 Visualizador de estadísticas de una votación cerrada.
TOTAL 360 217 4134 44 44 Decide con ampliaciones en tipos de votación y visualizado de resultados.

La tabla contiene la información de cada miembro del proyecto y el total de la siguiente forma:

  • Horas: número de horas empleadas en el proyecto
  • Commits: solo contar los commits hechos por miembros del equipo, no lo commits previos
  • LoC (líneas de código): solo contar las líneas producidas por el equipo y no las que ya existían o las que se producen al incluir código de terceros
  • Test: solo contar los test realizados por el equipo nuevos
  • Issues: solo contar las issues gestionadas dentro del proyecto y que hayan sido gestionadas por el equipo
  • Incremento: principal incremento funcional del que se ha hecho cargo el miembro del proyecto

Integración con otros equipos

Equipos con los que se ha integrado y los motivos por lo que lo ha hecho y lugar en el que se ha dado la integración:

  • decide-part-camaron-1: Traducción y autenticación.
  • decide-part-camaron-2: Hemos trabajado con el equipo tal que las técnicas de postprocesado puedas ser elegidas y aplicadas en las votaciones, y además puedan ser vistas en una vista de visualización.

El equipo decide-part-camaron-1 dejó la comunidad tras realizar la revisión del M2

Resumen ejecutivo

Este documento hace referencia a la metodología de trabajo que hemos seguido y los incrementos que hemos llevado a cabo para mejorar la aplicación de Decide. Todo ello, ha sido desarrollado poniendo en práctica los conocimientos tanto teóricos como prácticos vistos en la asignatura. En el transcurso del desarrollo, hemos trabajado en mejoras al software de Decide: un sistema de voto electrónico educativo que implementa un sistema básico de votación electrónica con voto secreto y criptográficamente seguro punto a punto. Además, nuestros incrementos han estado relacionados mayoritariamente con el subsistema de votaciones (voting) y visualización (visualizer), aunque también hemos tocado el módulo de censo (census), cabina (booth), almacenamiento (store) y aunque no hemos trabajado implícitamente en el módulo de post-procesado, los cambios hechos en el módulo de visualización dependen del trabajo del equipo 2 en este módulo. Nuestra versión enriquece la experiencia de usuario ofreciendo diferentes tipos de votaciones. Están disponibles los siguientes métodos:

  • Inclusión de votación con múltiples preguntas: en el Software base de Decide, al realizar una votación, sólo se puede elegir un único tópico sobre el cual votar. Nuestra versión abre la posibilidad de incluir varias preguntas dentro de la misma votación.

  • Inclusión de votación con roles dentro de una pregunta: también conocido como votación jerárquica, a la hora de censar a un usuario se le podrá denominar con un rol específico, el cual le entregará al usuario un valor al voto. De esta forma se podrán asignar rangos. Se han usado los rangos de las jornadas. De esta forma, los rangos disponibles son:

    1. Balanceado
    2. Colaborador
    3. Coordinador
    4. Presidente
  • Inclusión de votación con checkbox Si/No: durante la creación de una pregunta, ahora es posible seleccionar una checkbox que crea automáticamente las opciones Sí y No y limita las opciones sólo a estas dos impidiendo que se puedan modificar.

  • Inclusión de votación con checkbox Depende: durante la creación de una pregunta, ahora es posible seleccionar una checkbox que crea automáticamente la opción Depende y limita las opciones tres, siendo las dos restantes compatibles con la casilla Si/No o con preguntas creadas por el usuario.

  • Incursión de votaciones con múltiple elección opciones: inclusión de la modalidad de voto de múltiple elección, pudiendo así el votante responder a las preguntas con el orden de prioridad que le da a cada opción, y considerando la puntuación según la cantidad de distintas opciones, permitiendo ofrecer opciones según su preferencia global.

  • Exportación de censo de una votación: Permite exportar en formato csv y hoja de cálculo xls el censo de una votación.

  • Exportación de resultado de una votación: permite exportar en formato csv y hoja de cálculo xls los resultados de una votación. El archivo xls es un libro de Excel donde cada hoja es una pregunta y el contenido de cada hoja los resultados de cada pregunta.

  • Visualización de estadísticas de una votación: Vista mejorada del módulo visualizer, donde se pueden apreciar con detalle las gráficas correspondientes al resultado de la votación. Además, se muestran en tablas los resultados de postprocesados, número de personas inscritas en el censo, número de personas que han votado y porcentaje de participación.

La intención detrás del desarrollo de estos incrementos funcionales, aparte de agregar valor a la aplicación, es añadir nuevas funcionalidades que aporten una mayor flexibilidad al sistema, creando así la oportunidad de amoldarse a las necesidades de más usuarios. También buscamos aumentar la calidad de la experiencia de usuario con los cambios realizados en el módulo de visualización, permitiendo al usuario visualizar mejor los datos y estadísticas de una votación ya concluida en forma de gráficas.Por último las funcionalidades de exportación de censo y resultados de una votación es ofrece al usuario tratar y estudiar los los resultados de forma externa a la herramienta. Con el objetivo de mantener un seguimiento y control del proyecto de calidad, se ha utilizado la herramienta de Github para coordinar al equipo, gestionar las tareas y seguir el flujo de trabajo de cada una de las issues. Dichas issues fueron creadas y asignadas a cada miembro al comenzar el desarrollo del proyecto, y posteriores issues de incidencias fueron creadas también durante la implementación. Existen 4 estados: Todo, In Progress, Review y Done. Como complemento a las herramientas que ofrece github, el desarrollo del código se ha realizado desde el Entorno de Desarrollo Integrado (IDE) Visual Studio Code. Aunque la dinámica principal a la hora de redacción del código ha sido individual, en los casos donde un integrante del equipo de desarrollo haya encontrado dificultades para progresar, se han realizado reuniones (ya sea del equipo completo o parciales) para evitar retrasos y agilizar la implementación de las tareas, enfocándonos en el objetivo de llegar a la fecha de entrega con todas las funcionalidades completas e integradas entre los subgrupos. Esta metodología de trabajo ha resultado en que todos los integrantes del equipo estén al tanto y hayan ayudado de manera puntual en el resto de tareas a pesar de que cada desarrollado ha estado centrado en sus tareas asignadas.

Además, se ha integrado Codacy para automatizar el análisis de código cada vez que se hace una pull-request desde la rama de algún miembro hacia develop y también se ha integrado el despliegue automático con Render.

Clone this wiki locally