Diferencia entre revisiones de «Recuento y Modificacion de resultados»

De Wiki de EGC
Saltar a: navegación, buscar
Línea 9: Línea 9:
  
 
== Descripción subsistemas ==
 
== Descripción subsistemas ==
 +
 +
'''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'''
 
'''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.
 
: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.
 +
 +
  
 
== Taller 2 -- Definición de cambios a realizar ==
 
== Taller 2 -- Definición de cambios a realizar ==

Revisión del 21:35 5 nov 2015

Miembros


Descripción subsistemas

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.


Taller 2 -- Definición de cambios a realizar

General

- Modificar el nombre de las clases para que el código sea más claro:

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.

- Usar el mismo idioma para todo:

Por ejemplo: hay clases que están en castellano y otras en inglés.

- Clarificación de variables y métodos:

Por ejemplo, nos encontramos con métodos cuyo nombre es "algoritmo1", "algoritmo2"...

En subsistema: Recuento

--- 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)

--- Código ---

- Actualmente no se gestión los errores producidos. Gestionarlos mediante lanzamientos de excepción y de status en los resultados devueltos por el subsistema.

- 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).

- Realizar abstracción de algoritmos donde sea oportuno (hay algoritmos que comparten buena parte de la funcionalidad)


En subsistema: Modificación de resultados --- Controller.java ---

- Quitar el valor por defecto del parámetro votacionId (en el request) y si es null enviar un JSON que avise de eso. - 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 ---

- Comprobar la gestión de las respuestas, ahora mismo se están comprobando si el valor es "SI" o "NO" exclusivamente. - 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

Planificación inicial propuesta:

1 - Formar el grupo para la realización del trabajo

2 - Elegir un módulo sobre el que realizar la evolución

3 - Estudiar la documentación heredada del módulo

4 - Puesta en funcionamiento del sistema heredado

5 - Detección de errores del sistema heredado (si existieran)

6 - Detección de aspectos positivos y negativos

7 - Definir el SCM mejorado

7.1 - Incluyendo los config. ítems adecuados
7.2 - Gestión de versiones adecuadas, definiendo su nomenclatura
7.3 - Definicion de métricas de control

8 - Realizar la evolución de sistema software (de manera cíclica)

8.1 - Desarrollo del código de la aplicación
8.2 - Reuniones con los otros equipos para la integración del sistema
8.3 - Auditoría del desarrollo y resolución de incidencias
8.4 - Valoración de resultados y mejoras

9 - Despliegue y entrega del sistema