Frontend y visualización de resultados

De Wiki de EGC
Revisión del 14:26 1 dic 2015 de Danmarrod (discusión | contribuciones) (Diario de Grupo)
Saltar a: navegación, buscar

Definición

Subsistemas responsables de la visualización y gestión de resultados en AGORA@US

Miembros

Gestión del trabajo

Una vez recibida la carga de trabajo, el reparto de tareas se realizará de forma equitativa, y será realizado de forma individual o bien en subgrupos, dependiendo de cuán compleja sea la tarea. Si una tarea es asignada a un miembro del grupo y éste no es capaz de realizarla, puede cambiarla si otro miembro está de acuerdo en intercambiarla por otra tarea del mismo peso. En caso de que nadie quisiera intercambiarla y la persona encargada se niegue a realizarla, será responsable de la misma y se informará al profesor de dicho altercado.


Gestión de reuniones

De forma periódica, se realizará una reunión compuesta por todos los miembros del grupo. Dicha reunión tendrá lugar los miercoles laborales a las 10:30-12:30 en la Escuela Técnica Superior de Ingeniería Informática. Si estas reuniones no son suficientes, se avisará a todos los miembros del grupo para llegar a un acuerdo sobre el día, hora y lugar de la reunión prevista. Los miembros recibirán el aviso vía e-mail, WhatsApp o Skype. En caso de no ser posible asistir a la reunión, se deberá avisar al resto de miembros de dicho suceso.


Pautas a la hora de realizar commits en GIT

Tras completar las sesiones de prácticas de GIT, se han establecido una serie de pautas para homogeneizar los commits en GIT, siguiendo las guías expuestas por el profesor de prácticas:

  • En primer lugar, el título comenzará con una palabra clave en mayúsculas y en español. Esta palabra hará referencia al tipo de cambio del que se trata. Ejemplos:
    ADICIÓN: [título del commit]     
    CORRECCIÓN: [título del commit]
    APIGET: [título del commit]
    PERSISTENCIA: [título del commit]
    CONFIGURACIÓN: [título del commit]
    DESPLIEGUE: [título del commit]
  • Una vez especificado el tipo de cambio, en la parte [título del commit] se expondrá con un poco más de detalle el cambio lógico que supone dicho commit, sin superar los 80 caracteres.
  • Por último, se añadirá una descripción detallada que responda al por qué del cambio y explique en qué consiste.

Pautas a la hora de realizar las actas de las reuniones

Se seguirá el siguiente formato para realizar las actas:

  • Objetivos de la reunión
  • Lista de asistentes a la reunión
  • Desarrollo de la reunión. Se especificará la fecha y el lugar de la reunión.
  • Acuerdos alcanzados.
  • Validación de la reunión.

Trabajo realizado

  • Esqueleto del diario de grupo.
  • Planificación de reuniones.
  • Método de comunicación entre los miembros de grupo.
  • Método de trabajo.
  • Plantilla de las actas de reunión.
  • Creación de repositorio.

Trabajo por realizar

Herramientas a utilizar

  • GIT
  • ProjETSII
  • AngularJS
  • Spring/Hibernate
  • Java
  • HTML5/CSS


Diario de Grupo

[08 Octubre, 2015]

Se crean los nuevos equipos de trabajo y se eligen los subsistemas a desarrollar por cada equipo. Nuestro equipo será el responsable de dos subsistemas, Frontend y Visualización de Resultados. El equipo está integrado por los alumnos:

Redactamos posibles mejoras que pueden aplicarse al subsistema:

  • Actualización automática de gráficas (Ajax).
  • Cambiar la base de datos.
  • Nuevas funcionalidades (exportar resultados).
  • Nuevas librerías de visualización (GoogleCharts, Bootstrap).
  • Compatibilidad con dispositivos móviles.

Se redacta Acta01.



[13 Octubre, 2015]

Se realiza reunión de coordinadores para fijar las fechas de las diferentes integraciones entre subsistemas. Los días de integración acordados son finalmente los siguientes:

  • Integración 1: 17 de noviembre de 2015
  • Integración 2: 01 de diciembre de 2015
  • Integración 3: 15 de diciembre de 2015
  • Integración 4: 12 de enero de 2016


[20 Octubre, 2015]

Se acuerda uso de repositorio distribuido GIT y se establecen las directrices generales del modelo de uso.


[10 Noviembre, 2015]

Se fija la fecha para la entrega del proyecto el día 26 de diciembre de 2015 (hasta las 23:59). Se indica que habrá una segunda entrega de recuperación o para subir nota.


[11 Noviembre, 2015]

Previo a la primera fecha de integración se acuerda el estudio de los documentos y códigos disponibles sobre los subsistemas. Se redefinen las modificaciones a aplicar:

  • Cambio Base de Datos
  • Aplicar geolocalización a los resultados.
  • Aplicar Angula y Bootstrap para el apartado estético y de visualización de gráficas.

Se crea equipo de trabajo y repositorio GIT en www.github.com

Se crea grupo en projetsii para documentación interna y gestión de tareas

Se analizan posibles herramientas para la gestión de incidencias


[17 Noviembre, 2015]

Primer día de integración:

  • Toma de contacto con el resto de subsistemas, se busca la forma de hacer funcionar el sistema anterior.
  • Se crea grupo informal de whatsapp como comunicación temporal con el subsistema de Recuento.
  • Se define el responsable de la comunicación con el resto de grupo >> Daniel Sánchez Navarro.
  • Se propone usar github con el resto de subsistemas para registro de incidencias.

Se redacta ACTA 2


[19 Noviembre, 2015]

Se toman las siguientes decisiones y asignan las responsabilidades:

  • Gestión tareas y grupo en projetsii >> Daniel Martín Rodrigo
  • Diario de grupo (wiki,actas) >> Daniel Martín Rodrigo
  • Responsable de comunicación externa (coordinador) >> Daniel Sánchez Navarro
  • Metodología de trabajo SCRUM
  • Modelo de uso del repositorio
  • Gestor de incidencias GitHub
  • Se define la plantilla para documentación
  • Fijar fecha para reuniones

Se fijan los siguientes hitos y se planifican las tareas hasta la siguiente fecha de integración, día 1 de Diciembre:

  • Martes 24 fecha tope para levantar el sistema heredado.
  (cerrar la baseline)
  • Investigar alternativas para integrarse con los subsistemas directos implicados Recuento y Creación de votos.
  • Ponerse de acuerdo con Recuento para compartir información
  (lenguaje, formato, variables)
  • Investigar unificación de los subsistemas Visualización - Frontend
  • Investigar Bootstrap
  • Investigar para aplicar Angula
  • Investigar para sustituir Base de Datos


Se redacta ACTA 3


[24 Noviembre, 2015]

Se crea una Organización en GitHub para integrar con el resto de grupo. Se crean nueve grupos con dos repositorios para cada grupos, uno individual del grupo y otro común con el resto de equipo para la integración. Se asignan los permisos oportunos, cada coordinador tiene privilegios sobre su equipo y es reponsable de añadir al equipos a los diferentes integrantes.



Actas


Subsistemas Relacionados

  • Recuento de votos
  • Modificación de Resultados
  • Creación de votación

Flujo entre subsistemas

El flujo de información entre los diferentes subsistemas heredados implicados en la visualización de los resultados es el siguiente:


Frontend-Recuento-Visualización

Si la votación que necesita Visualización está en la base de datos es devuelta, y en caso contrario se realiza la petición a la API de Recuento de Votos.

El subsistema Frontend realiza las consultas al subsistema de Recuento de Votos o al de Modificación de Resultados, dependiendo de si el subsistema de Visualización de Resultados necesita el recuento de votos original o el modificado.Básicamente realizan la comunicación con la base de datos para comprobar si pueden devolver las votaciones directamente o deben pedírselas a los subsistemas correspondientes.


Visualización-Creación-Frontend

El subsistema de visualización es el responsable de mostrar gráficas sobre los resultados de las votaciones a partir de los datos obtenidos de los otros subsistemas.

Para la obtención de datos nos conectamos con dos subsistemas, siempre como clientes. Estos subsistemas son frontend de resultados y creación de votaciones.

  • Creación de votaciones: nos transmitirán un json en el que obtendremos el nombre y el

identificador de todas las votaciones finalizadas. Con esta información creamos un menú en el cual el usuario puede elegir la votación de la cual quiere ver las gráficas.

  • Frontend de resultados: tras enviarles el identificador de la votación en la que estamos

interesados, nos transmitirán un json en el que obtendremos los resultados de las votaciones, con los cuales dibujaremos las gráficas.


Nota: Información extraida de la documentación de los subsistemas anteriores.