Diferencia entre revisiones de «Grupo Creación/administración de votaciones(2014-15)»
(→Interfaz del Sistema) |
|||
Línea 46: | Línea 46: | ||
===Interfaz del Sistema=== | ===Interfaz del Sistema=== | ||
− | [[Archivo: | + | [[Archivo: relaciones.png]] |
create() -> Survey | create() -> Survey |
Revisión del 17:06 24 nov 2014
Interfaz para la creación y administración de votaciones.
Debe ofrecer un formulario con lo necesario para crear una votación (Pregunta, censo implicado...).
Se debe gestionar las votaciones en una base de datos o un almacenamiento similar.
Se puede ofrecer como servicio o API la información de las votaciones para que los diferentes sistemas tengan acceso.
Contenido
Miembros
- De Tena Benzal, Daniel
- García Padilla, Fernando
- Guerrero Cubero, Jaime
- Moreno Martín, Olga Minerva
- Moreno Soto, José Iván
- Pérez Domínguez, Francisco José
- Pérez Reina, María
- Vallejo Morales, Mercedes
URL del Repositorio en Github
https://github.com/Josmorsot/trabajoEGC
Formas de comunicación
- Nuestro principal canal de comunicación es Google Drive, del cual dejamos enlace para ver la evolución del proyecto:
[Google Drive]
- El canal de comunicación informal es whatsapp.
- El canal oficial de comunicación es Projetsii.
[Projetsii]
- El canal de comunicación intergrupal es Projetsii.
Subsistemas Relacionados
Autenticación y Creación/Administración de censos
- Autenticación: Hacemos uso de un método, disponible gracias a la API que nos facilita, al cual le pasamos por parámetro los datos de la Cookie "usuario:token" y nos devolverá True si está autenticado y False en caso contrario.
- Creación/Administración de Censos:
- Cuando quieren añadir un censo, enviamos una URL con el identificador, el nombre y las fechas de la votación.
- Cuando terminan de añadir un censo, al guardar, nos envían una URL con la ID del censo para almacenar la relación con la votación: "vote/saveCensus.do/idSurvey=XXX&idCensus=XXX"
- Cuando en la lista de votaciones creadas se selecciona la opción de editar su censo, enviamos una URL con el identificador del Censo.
- Cabina de Votaciones:
- Cuando quieren responder a una votación, nos envían una URL: "vote/survey.do/id=XXX". Para devolver un JSON con la siguiente información: {"id":"XXX","title":"XXX","description":"XXX","startDate":"XXX","endDate":"XXX","questions":[{"id":"XXX","text":"XXX"},{"id":"XXX","text":"XXX"]}
- Visualización:
- Cuando quieren realizar visualizaciones,nos envían una URL: "vote/finishedSurveys.do/". Paravenviamos un JSON con la lista de las votaciones finalizadas: {{"id":"XXX","title":"XXX","description":"XXX","startDate":"XXX","endDate":"XXX","questions":[{"id":"XXX","text":"XXX"},{"id":"XXX","text":"XXX"]}, {"id":"XXX","title":"XXX","description":"XXX","startDate":"XXX","endDate":"XXX","questions":[{"id":"XXX","text":"XXX"},{"id":"XXX","text":"XXX"]},...}
Interfaz del Sistema
create() -> Survey
Método que crea una encuesta.
addQuestion(Survey) -> Question
Método que, dada una encuesta crea una pregunta. Una pregunta está compuesta por el enunciado, la lista de opciones de respuestas, el número de opciones que se puede seleccionar, el número de opciones que pueden ganar y el tipo de pregunta.
save(Survey,Question,Census) -> Void
Método que dada una encuesta, la almacena en la base de datos.
edit(Survey) -> Survey
Método que permite editar y finalizar la encuesta.
allFinishSurvey() -> list<Survey>
Método que devuelve todas las encuestas finalizadas.
API del Sistema
- Guardar una Votación
POST: /vote/save.do
Request Sample: {"type":"survey", "usenarmeCreator":"marperrei1", "title":"survey1", "description":"survey1Sample", "startDate":"24/11/2014", "endDate":"27/11/2014", "questions":[ {"type":"question", "text":"question1"}, {"type":"question", "text":"question2"} ] }
Trabajo Realizado
-
01/10/14
- Formar el grupo
- Definir la forma de comunicación dentro del grupo
- Definir la tecnología que se utilizará
- Definido el repositorio: [Drive]
- Definir la interfaz del sistema
- Preparar el entorno de desarrollo
- Analizar el gestor de tareas "Github"
- Preparar gestor de tareas
- Elegir un gestor de tareas para utilizar
- Realizar las pruebas del gestor de tareas entre los miembros del grupo
- Definir como nos relacionamos a nivel de información de código con "La cabina de votación"
- Iteraciones de código
- Integración con el grupo de Censo
- Puesta en común de código y funcionalidad
06/10/14
07/10/14
15/10/2014
20/10/2014
10/11/2014
17/11/2014
Trabajo por Realizar
- Integración con el resto de subsistemas menos con Censo, que ya está integrado