Grupo Autenticación (2014-15)

De Wiki de EGC
Revisión del 20:30 20 oct 2014 de Dandelea (discusión | contribuciones) (Iteraciones)
Saltar a: navegación, buscar

Definición

Un subsistema de AGORA@US para autenticar usuarios y controlar quién puede votar y quién ya ha votado para evitar multiples votos de la misma persona. Este sistema tiene que ofrecer una api clara y sencilla para que otras partes del sistema puedan usarlo. Un sistema básico podría ser uno basado en un censo cerrado usando como identificador el correo electrónico. El sistema de autenticación tiene que ofrecer métodos para:

  • Saber si un usuario determinado ha votado ya
  • Realizar una prueba de verificación de identidad
  • Marcar un usuario como que ya ha votado

Miembros

Interfaz del sistema

Autenticación

  auth(user, password) -> token

Dado un usuario y una contraseña, este servicio devuelve un token único que identifica al usuario en la aplicación. Se almacenará una cookie con dicho token.

Comprobación de voto

  has_voted(user, voting_id) -> boolean

Dado un usuario y el identificador de una votación, este servicio devuelve true si el usuario ha votado, y false en caso contrario.

Marcar un usuario como que ya ha votado

  mark_as_voted(user, voting_id) -> void

Dado un usuario, se marca como que ya ha votado en la votación especificada.

Registro

  register(user, password, census_id) -> boolean

Dado un usuario y una contraseña, se registra a este en el censo especificado. Este servicio devuelve true en el caso de que el usuario haya sido registrado correctamente, y false en caso contrario.

Subsistemas relacionados

  • Cabina de votación: Comprobará que los usuarios que voten estén autenticados.
  • Censo: Al marcar a un usuario como votado, el sistema de autenticación deberá comprobar si dicho usuario pertenece al censo de la votación.
  • Creación/administración de votaciones: Deberá comprobar que sus usuarios estén logueados en la aplicación.
  • Deliberaciones: Deberá comprobar que sus usuarios estén logueados en la aplicación.

Repositorio de código

Todo el código realizado durante el desarrollo de la asignatura se encuentra en el repositorio del Grupo de Autenticación Gestión de la comunicación

Toda la comunicación se lleva a cabo presencialmente en horario de clase, y de forma remota mediante el uso de herramientas de voz sobre IP (Skype).

El diario de grupo se mantendrá en esta wiki, y las actas se irán publicando como páginas individuales dentro del diario de grupo.

En el caso de compartir código, se mantendrá en un repositorio de ProjEtsii.

Gestión temporal del trabajo

Fecha Tiempo (m) Miembro(s) del grupo Actividad Comentarios
29/09/14 30 Todos Reunión inicial
  • Diseño del documento y las actas
  • Tecnología a usar
  • Métodos de comunicación
30/09/14 30 Daniel Ayala Redacción de acta
  • Redacción del acta de la reunión del 29/09/14
01/10/14 60 Todos Diseño de la interfaz
  • Identificación de subsistemas relacionados
  • Identificación de servicios ofrecidos y consumidos
  • Documentación inicial de la interfaz
01/10/14 30 Juan C. Roldán Redacción del diario de grupo
  • Redacción en formato Wiki del diario de grupo
01/10/14 30 Juan C. Roldán Redacción de acta
  • Redacción del acta de la reunión del 01/10/14
06/10/14 20 Todos Implementación inicial de funciones
  • Identificación de las funciones principales del sistema
  • Implementación de una versión inicial de dichas funciones
07/10/14 15 Daniel Ayala Redacción de acta
  • Redacción del acta de la reunión del 06/10/14
10/10/14 50 Juan C. Roldán Redacción de acta
  • Redacción del acta de la reunión del 08/10/14
10/10/14 50 Juan C. Roldán Reestructuración
  • Paso de organización por actas a organización por iterables
  • Renombrado y pequeñas modificaciones de gran parte del espacio del grupo
14/10/14 90 Daniel Ayala Programación
  • Preparación del servidor y la base de datos MySQL con XAMPP
  • Creación de las primeras funciones de acceso a la base de datos
15/10/14 50 Juan C. Roldán Reestructuración
  • Realización de las tareas de reestructuración realizadas el 10/10/2014 de nuevo, debido al rollback de la wiki
15/10/14 40 Daniel de los Reyes Redacción de acta
  • Redacción del acta de la reunión del 15/10/14
20/10/14 40 Alejandro Sánchez Programación
  • Corrección de un método de petición a la base de datos.
  • Preparación de los archivos para soportar una API
  • Creación de la estructura básica para la gestión de las peticiones a la API
  • Implementación de un primer método de ejemplo que devuelve un JSON.

Iteraciones