Diferencia entre revisiones de «Recuento y Modificacion de resultados»

De Wiki de EGC
Saltar a: navegación, buscar
 
(No se muestran 45 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
== Miembros ==
+
== Enlace a la aplicación desplegada ==
*'''Coordinador:''' [[Usuario:rafriosan|Rafael del Rio Santaella]]
 
*[[Usuario:vicmaragu|Víctor José Marín Aguilar]]
 
*[[Usuario:antmarpen|Antonio Marcos Peña]]
 
*[[Usuario:juatripin1|Juan Manuel Triguero Piñero]]
 
*[[Usuario:juanriofer|Juan Ramón Ríos Fernández]]
 
  
 +
    https://recuento.herokuapp.com/
  
----
+
== '''Definición de subsistemas''' ==
  
== Taller 2 -- Definición de cambios a realizar ==
+
'''Dos''' subsistemas de AGORA@US para:
  
'''General'''
+
'''Recuento'''
 +
:Realizará el recuento de una votación determinada. Para realizar el recuento tendrá que pedir los votos al almacenamiento de votos y deberá lanzar la tarea de recuento sincronizando las diferentes autoridades.
  
- Modificar el nombre de las clases para que el código sea más claro:
+
'''Modificación de resultados'''
:Por ejemplo: Respuesta y Answer son dos clases diferentes que significan lo mismo pero el uso que se le da a una y otra es distinto.
+
:Sistema para interpretar los resultados de una votación y ofrecer un ordenamiento de opciones concreto según diferentes reglas variables. La mayoría de las votaciones no son directas, sino que hay una serie de reglas que ordenan los resultados. Esto puede servir por ejemplo para formar listas con criterios de paridad, criterios de localidad, quitar de los resultados candidatos retirados, etc. Este sistema además de alterar el resultado final debe ofrecer una serie de estadísticas y desviaciones.
  
- Usar el mismo idioma para todo:
+
== '''Aspectos organizativos''' ==
:Por ejemplo: hay clases que están en castellano y otras en inglés.
 
  
- Clarificación de variables y métodos:
+
=== Miembros ===
:Por ejemplo, nos encontramos con métodos cuyo nombre es "algoritmo1", "algoritmo2"...
+
*[[Usuario:vicmaragu|Víctor José Marín Aguilar]]
 
+
*[[Usuario:antmarpen|Antonio Marcos Peña]]
'''En subsistema: Recuento'''
+
*[[Usuario:juatripin1|Juan Manuel Triguero Piñero]]
 
+
*[[Usuario:juanriofer|Juan Ramón Ríos Fernández]]
--- Tests ---
 
 
 
- No hay ningún test realizado al código (ni unitarios, de integración...)
 
 
 
--- Versiones ---
 
  
- Actualizar a las últimas versiones de componentes (tanto internas de agora us, como externas)
+
=== Gestión de la comunicación ===
  
--- Código ---
+
Para comunicarse con el equipo de trabajo tendrá las siguientes opciones:
 +
* <font color="#3CB371">Recomendable:</font> Uso de slack. Es un sistema de mensajería instantánea potente. Preguntar por él para detalles.
 +
* Durante las horas de clase teóricas y talleres
 +
* Mediante mensajería instantánea (pedir presencialmente número de teléfono)
  
- Actualmente no se gestión los errores producidos. Gestionarlos mediante lanzamientos de excepción y de status en los resultados devueltos por el subsistema.
+
=== Gestión de incidencias ===
  
- Eliminar código comentado olvidado (hay código que no se usa que simplemente se ha comentado, hay que investigar por qué y eliminarlo en caso de ser innecesario).
+
* Para facilitar la comunicación con otros subsistemas se ofrece este [https://github.com/rafaeldrs/Recuento-Agora-US/issues enlace]
  
- Realizar abstracción de algoritmos donde sea oportuno (hay algoritmos que comparten buena parte de la funcionalidad)
+
=== Repositorio de código ===
 +
Se ha elegido Git como herramienta para la gestión de código debido a la posibilidad de realizar commits locales.
  
 +
https://github.com/rafaeldrs/Recuento-Agora-US
  
'''En subsistema: Modificación de resultados'''
+
=== Gestión de tareas ===
--- Controller.java ---
+
Para la gestión de tareas se usará un board en trello.
  
- Quitar el valor por defecto del parámetro votacionId (en el request) y si es null enviar un JSON que avise de eso.
+
https://trello.com/b/drYOXuri/egc-tasks-board
- Simplificar el último for del método respuestas por un for extendido.
 
- Controlar las excepciones y devolver algo si se produce algún error interno, que ahora solo muestra la traza del error en la consola.
 
  
--- Anotaciones ---
+
Y además el sistema gestor ofrecido por bitbucket.
  
- Comprobar la gestión de las respuestas, ahora mismo se están comprobando si el valor es "SI" o "NO" exclusivamente.
+
https://bitbucket.org/antoniomark/recuento-agora-us/issues
- En caso de que se produzca un cambio en el subsistema de verificación, se debe actualizar el uso de la librería verificacion.jar..
 
  
== Taller 1 -- Planificación de la gestión del proyecto ==
+
=== Gestión de la memoria del proyecto ===
 +
Para el trabajo asíncrono y telemático del equipo, se ha decidido el uso de trabajar sobre un documento en google drive. <font color="#3CB371">Solo los miembros del equipo tienen acceso a él actualmente.</font>
  
 +
https://docs.google.com/document/d/1_8-hZWIrI2oJnNp7bFSzrH3Nv6cu-BA2vpLFLNMwvjo/edit
  
'''Planificación inicial propuesta:'''
+
Además para el diario de grupo se ha incluído otro documento, también en la misma plataforma.
  
'''1 -''' Formar el grupo para la realización del trabajo
+
https://docs.google.com/document/d/1_8-hZWIrI2oJnNp7bFSzrH3Nv6cu-BA2vpLFLNMwvjo/edit
  
'''2 -''' Elegir un módulo sobre el que realizar la evolución
+
== '''Información técnica''' ==
  
'''3 -''' Estudiar la documentación heredada del módulo
+
=== Datos generales ===
  
'''4 -''' Puesta en funcionamiento del sistema heredado
+
Subsistemas desarrollados en Java
  
'''5 -''' Detección de errores del sistema heredado (si existieran)
+
=== Contexto de subsistemas ===
  
'''6 -''' Detección de aspectos positivos y negativos
+
==== Subsistemas relacionados ====
 +
Tanto uno como otro subsistema tienen dependencias con los mismos otros subsistemas.
  
'''7 -''' Definir el SCM mejorado
+
'''Recuento y Modificación de resultados'''
       
+
:Almacenamiento: realiza una petición de los votos almacenados en la base de datos
:'''7.1 -''' Incluyendo los config. ítems adecuados
+
:Verificación: necesita de ellos para sincronizar las diferentes autoridades
 +
:Creación y Administración de votaciones: desde este subsistema se accede a nuestro home mediante un índice
 +
:<strike><font color="RED">FrontEnd de resultados: donde se envían los datos procesados para su muestra en la web.</font></strike> No se van a mostrar los resultados en una interfaz.
  
:'''7.2 -''' Gestión de versiones adecuadas, definiendo su nomenclatura
+
== '''Documentación y entregables''' ==
  
:'''7.3 -''' Definicion de métricas de control
+
=== Actas de talleres ===
  
'''8 -''' Realizar la evolución de sistema software (de manera cíclica)
+
{| border = "6"
 +
|'''Fecha'''
 +
|'''Taller'''
 +
|-
 +
|8/10/2015
 +
|[[Taller 0 -- Creación de grupos y elección de subsistemas]]
 +
|-
 +
|22/10/2015
 +
|[[Taller 1 -- Planificación inicial de la gestión del proyecto ]]
 +
|-
 +
|5/11/2015
 +
|[[Taller 2 -- Definición de cambios a realizar]]
 +
|-
 +
|12/11/2015
 +
|[[Taller 3 -- Primer taller de integración]]
 +
|-
 +
|19/11/2015
 +
|[[Taller 4 -- Segundo taller de integración]]
 +
|-
 +
|03/12/2015
 +
|[[Taller 5 -- Tercer taller de integración]]
 +
|-
 +
|10/12/2015
 +
|[[Taller 6 -- Cuarto taller de integración]]
 +
|}
  
:'''8.1 -''' Desarrollo del código de la aplicación
+
=== Entregables ===
  
:'''8.2 -''' Reuniones con los otros equipos para la integración del sistema
+
Los entregables se encuentran disponibles en el grupo de Opera:
  
:'''8.3 -''' Auditoría del desarrollo y resolución de incidencias
+
https://opera.eii.us.es/egc/public/default/grupo/ver/id/42
  
:'''8.4 -''' Valoración de resultados y mejoras
+
== '''Problemas encontrados''' ==
  
'''9 -''' Despliegue y entrega del sistema
+
*El repositorio de git del proyecto ha sido borrado. Por suerte tenemos un enlace a google drive desde donde descargar el código.
 +
*Mucha información dispersa, mezclados prototipos iniciales con resultados finales.

Revisión actual del 18:28 19 jul 2019

Enlace a la aplicación desplegada

   https://recuento.herokuapp.com/

Definición de subsistemas

Dos subsistemas de AGORA@US para:

Recuento

Realizará el recuento de una votación determinada. Para realizar el recuento tendrá que pedir los votos al almacenamiento de votos y deberá lanzar la tarea de recuento sincronizando las diferentes autoridades.

Modificación de resultados

Sistema para interpretar los resultados de una votación y ofrecer un ordenamiento de opciones concreto según diferentes reglas variables. La mayoría de las votaciones no son directas, sino que hay una serie de reglas que ordenan los resultados. Esto puede servir por ejemplo para formar listas con criterios de paridad, criterios de localidad, quitar de los resultados candidatos retirados, etc. Este sistema además de alterar el resultado final debe ofrecer una serie de estadísticas y desviaciones.

Aspectos organizativos

Miembros

Gestión de la comunicación

Para comunicarse con el equipo de trabajo tendrá las siguientes opciones:

  • Recomendable: Uso de slack. Es un sistema de mensajería instantánea potente. Preguntar por él para detalles.
  • Durante las horas de clase teóricas y talleres
  • Mediante mensajería instantánea (pedir presencialmente número de teléfono)

Gestión de incidencias

  • Para facilitar la comunicación con otros subsistemas se ofrece este enlace

Repositorio de código

Se ha elegido Git como herramienta para la gestión de código debido a la posibilidad de realizar commits locales.

https://github.com/rafaeldrs/Recuento-Agora-US

Gestión de tareas

Para la gestión de tareas se usará un board en trello.

https://trello.com/b/drYOXuri/egc-tasks-board

Y además el sistema gestor ofrecido por bitbucket.

https://bitbucket.org/antoniomark/recuento-agora-us/issues

Gestión de la memoria del proyecto

Para el trabajo asíncrono y telemático del equipo, se ha decidido el uso de trabajar sobre un documento en google drive. Solo los miembros del equipo tienen acceso a él actualmente.

https://docs.google.com/document/d/1_8-hZWIrI2oJnNp7bFSzrH3Nv6cu-BA2vpLFLNMwvjo/edit

Además para el diario de grupo se ha incluído otro documento, también en la misma plataforma.

https://docs.google.com/document/d/1_8-hZWIrI2oJnNp7bFSzrH3Nv6cu-BA2vpLFLNMwvjo/edit

Información técnica

Datos generales

Subsistemas desarrollados en Java

Contexto de subsistemas

Subsistemas relacionados

Tanto uno como otro subsistema tienen dependencias con los mismos otros subsistemas.

Recuento y Modificación de resultados

Almacenamiento: realiza una petición de los votos almacenados en la base de datos
Verificación: necesita de ellos para sincronizar las diferentes autoridades
Creación y Administración de votaciones: desde este subsistema se accede a nuestro home mediante un índice
FrontEnd de resultados: donde se envían los datos procesados para su muestra en la web. No se van a mostrar los resultados en una interfaz.

Documentación y entregables

Actas de talleres

Fecha Taller
8/10/2015 Taller 0 -- Creación de grupos y elección de subsistemas
22/10/2015 Taller 1 -- Planificación inicial de la gestión del proyecto
5/11/2015 Taller 2 -- Definición de cambios a realizar
12/11/2015 Taller 3 -- Primer taller de integración
19/11/2015 Taller 4 -- Segundo taller de integración
03/12/2015 Taller 5 -- Tercer taller de integración
10/12/2015 Taller 6 -- Cuarto taller de integración

Entregables

Los entregables se encuentran disponibles en el grupo de Opera:

https://opera.eii.us.es/egc/public/default/grupo/ver/id/42

Problemas encontrados

  • El repositorio de git del proyecto ha sido borrado. Por suerte tenemos un enlace a google drive desde donde descargar el código.
  • Mucha información dispersa, mezclados prototipos iniciales con resultados finales.