Diferencia entre revisiones de «Grupo Creación/administración de votaciones(2014-15)»
(→Trabajo Realizado) |
(→Interfaz del Sistema) |
||
| (No se muestran 8 ediciones intermedias de 3 usuarios) | |||
| Línea 18: | Línea 18: | ||
=== URL del Repositorio en Github=== | === URL del Repositorio en Github=== | ||
| − | https://github.com/ | + | https://github.com/EGC-1415-Repositorio-compartido/repvoting/tree/creacionVotaciones |
===Formas de comunicación=== | ===Formas de comunicación=== | ||
| Línea 29: | Línea 29: | ||
=== Subsistemas Relacionados === | === Subsistemas Relacionados === | ||
| − | |||
*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. | *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. | ||
| Línea 35: | Línea 34: | ||
*Creación/Administración de Censos: | *Creación/Administración de Censos: | ||
**Al confirmar la creación de una votación, redireccionamos a una URL trasmitiendo el identificador, el nombre y las fechas de la votación. | **Al confirmar la creación de una votación, redireccionamos a una URL trasmitiendo el identificador, el nombre y las fechas de la votación. | ||
| − | **Cuando terminan de añadir un censo, al guardar, | + | **Cuando terminan de añadir un censo, al guardar, redireccionan a la 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. | **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: | *Cabina de Votaciones: | ||
| − | **Cuando quieren responder a una votación, | + | **Cuando quieren responder a una votación, redireccionan a la 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: | *Visualización: | ||
| − | **Cuando quieren realizar visualizaciones, | + | **Cuando quieren realizar visualizaciones,redireccionan a la URL: "vote/allSurveys.do/". Enviamos un JSON con la lista de todas las votaciones: {{"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"]},...} |
*Deliberación: | *Deliberación: | ||
**Al confirmar la creación de una votación, redireccionamos a una URL trasmitiendo el nombre de la votación. | **Al confirmar la creación de una votación, redireccionamos a una URL trasmitiendo el nombre de la votación. | ||
| + | |||
| + | *Verificación: | ||
| + | **Integraremos con nuestro proyecto un .jar (librería compatible con Java) | ||
===Interfaz del Sistema=== | ===Interfaz del Sistema=== | ||
| Línea 51: | Línea 53: | ||
[[Archivo: relaciones.png]] | [[Archivo: relaciones.png]] | ||
| − | + | [[Archivo: diagramabueno.png]] | |
| − | |||
| − | + | save(Survey) -> Void | |
| + | Método que dada una encuesta, la almacena en la base de datos. | ||
| − | Método que | + | saveCensus(Census) -> Void |
| + | Método que dada dado un censo, lo añade a la encuesta y la almacena en la base de datos. | ||
| − | + | delete(Survey) -> Void | |
| − | Método que dada una encuesta, la | + | Método que dada una encuesta, la elimina de la base de datos. |
| + | |||
| + | mine() -> list<Survey> | ||
| + | Método que devuelve todas las encuestas que he creado. | ||
| − | + | allSurvey() -> list<Survey> | |
| − | Método que | + | Método que devuelve todas las encuestas. |
| − | + | allFinishedSurvey() -> list<Survey> | |
Método que devuelve todas las encuestas finalizadas. | Método que devuelve todas las encuestas finalizadas. | ||
| Línea 90: | Línea 96: | ||
GET: /vote/survey.do?id=XXX | GET: /vote/survey.do?id=XXX | ||
| − | '''Response Sample''' | + | '''Response Sample:''' |
{"type":"survey", | {"type":"survey", | ||
"id": "XXX", | "id": "XXX", | ||
| Línea 110: | Línea 116: | ||
] | ] | ||
} | } | ||
| + | |||
| + | * Recuperar todas las Votaciones | ||
| + | GET: /vote/allSurveys.do | ||
| + | |||
| + | '''Response Sample:''' | ||
| + | {{"type":"survey", | ||
| + | "id": "XXX", | ||
| + | "version": "YYY", | ||
| + | "usenarmeCreator":"marperrei1", | ||
| + | "title":"survey1", | ||
| + | "description":"survey1Sample", | ||
| + | "startDate":"24/11/2014", | ||
| + | "endDate":"27/11/2014", | ||
| + | "questions":[ | ||
| + | {"type":"question", | ||
| + | "id": "X0X0X0", | ||
| + | "version": "Y0Y0Y0", | ||
| + | "text":"question1"}, | ||
| + | {"type":"question", | ||
| + | "id": "X1X1X1", | ||
| + | "version": "Y1Y1Y1", | ||
| + | "text":"question2"} | ||
| + | ] | ||
| + | }, | ||
| + | {"type":"survey", | ||
| + | "id": "XXX", | ||
| + | "version": "YYY", | ||
| + | "usenarmeCreator":"marperrei1", | ||
| + | "title":"survey1", | ||
| + | "description":"survey1Sample", | ||
| + | "startDate":"24/11/2014", | ||
| + | "endDate":"27/11/2014", | ||
| + | "questions":[ | ||
| + | {"type":"question", | ||
| + | "id": "X0X0X0", | ||
| + | "version": "Y0Y0Y0", | ||
| + | "text":"question1"}, | ||
| + | {"type":"question", | ||
| + | "id": "X1X1X1", | ||
| + | "version": "Y1Y1Y1", | ||
| + | "text":"question2"} | ||
| + | ] | ||
| + | }} | ||
| + | |||
| + | * Recuperar todas las Votaciones finalizadas | ||
| + | GET: /vote/finishedSurveys.do | ||
| + | |||
| + | '''Response Sample:''' | ||
| + | {{"type":"survey", | ||
| + | "id": "XXX", | ||
| + | "version": "YYY", | ||
| + | "usenarmeCreator":"marperrei1", | ||
| + | "title":"survey1", | ||
| + | "description":"survey1Sample", | ||
| + | "startDate":"24/11/2014", | ||
| + | "endDate":"27/11/2014", | ||
| + | "questions":[ | ||
| + | {"type":"question", | ||
| + | "id": "X0X0X0", | ||
| + | "version": "Y0Y0Y0", | ||
| + | "text":"question1"}, | ||
| + | {"type":"question", | ||
| + | "id": "X1X1X1", | ||
| + | "version": "Y1Y1Y1", | ||
| + | "text":"question2"} | ||
| + | ] | ||
| + | }, | ||
| + | {"type":"survey", | ||
| + | "id": "XXX", | ||
| + | "version": "YYY", | ||
| + | "usenarmeCreator":"marperrei1", | ||
| + | "title":"survey1", | ||
| + | "description":"survey1Sample", | ||
| + | "startDate":"24/11/2014", | ||
| + | "endDate":"27/11/2014", | ||
| + | "questions":[ | ||
| + | {"type":"question", | ||
| + | "id": "X0X0X0", | ||
| + | "version": "Y0Y0Y0", | ||
| + | "text":"question1"}, | ||
| + | {"type":"question", | ||
| + | "id": "X1X1X1", | ||
| + | "version": "Y1Y1Y1", | ||
| + | "text":"question2"} | ||
| + | ] | ||
| + | }} | ||
===Trabajo Realizado=== | ===Trabajo Realizado=== | ||
Revisión actual del 18:22 19 dic 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/EGC-1415-Repositorio-compartido/repvoting/tree/creacionVotaciones
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: 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:
- Al confirmar la creación de una votación, redireccionamos a una URL trasmitiendo el identificador, el nombre y las fechas de la votación.
- Cuando terminan de añadir un censo, al guardar, redireccionan a la 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, redireccionan a la 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,redireccionan a la URL: "vote/allSurveys.do/". Enviamos un JSON con la lista de todas las votaciones: {{"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"]},...}
- Deliberación:
- Al confirmar la creación de una votación, redireccionamos a una URL trasmitiendo el nombre de la votación.
- Verificación:
- Integraremos con nuestro proyecto un .jar (librería compatible con Java)
Interfaz del Sistema
save(Survey) -> Void
Método que dada una encuesta, la almacena en la base de datos.
saveCensus(Census) -> Void
Método que dada dado un censo, lo añade a la encuesta y la almacena en la base de datos.
delete(Survey) -> Void
Método que dada una encuesta, la elimina de la base de datos.
mine() -> list<Survey>
Método que devuelve todas las encuestas que he creado.
allSurvey() -> list<Survey>
Método que devuelve todas las encuestas.
allFinishedSurvey() -> 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"}
]
}
- Recuperar una Votación
GET: /vote/survey.do?id=XXX
Response Sample:
{"type":"survey",
"id": "XXX",
"version": "YYY",
"usenarmeCreator":"marperrei1",
"title":"survey1",
"description":"survey1Sample",
"startDate":"24/11/2014",
"endDate":"27/11/2014",
"questions":[
{"type":"question",
"id": "X0X0X0",
"version": "Y0Y0Y0",
"text":"question1"},
{"type":"question",
"id": "X1X1X1",
"version": "Y1Y1Y1",
"text":"question2"}
]
}
- Recuperar todas las Votaciones
GET: /vote/allSurveys.do
Response Sample:
{{"type":"survey",
"id": "XXX",
"version": "YYY",
"usenarmeCreator":"marperrei1",
"title":"survey1",
"description":"survey1Sample",
"startDate":"24/11/2014",
"endDate":"27/11/2014",
"questions":[
{"type":"question",
"id": "X0X0X0",
"version": "Y0Y0Y0",
"text":"question1"},
{"type":"question",
"id": "X1X1X1",
"version": "Y1Y1Y1",
"text":"question2"}
]
},
{"type":"survey",
"id": "XXX",
"version": "YYY",
"usenarmeCreator":"marperrei1",
"title":"survey1",
"description":"survey1Sample",
"startDate":"24/11/2014",
"endDate":"27/11/2014",
"questions":[
{"type":"question",
"id": "X0X0X0",
"version": "Y0Y0Y0",
"text":"question1"},
{"type":"question",
"id": "X1X1X1",
"version": "Y1Y1Y1",
"text":"question2"}
]
}}
- Recuperar todas las Votaciones finalizadas
GET: /vote/finishedSurveys.do
Response Sample:
{{"type":"survey",
"id": "XXX",
"version": "YYY",
"usenarmeCreator":"marperrei1",
"title":"survey1",
"description":"survey1Sample",
"startDate":"24/11/2014",
"endDate":"27/11/2014",
"questions":[
{"type":"question",
"id": "X0X0X0",
"version": "Y0Y0Y0",
"text":"question1"},
{"type":"question",
"id": "X1X1X1",
"version": "Y1Y1Y1",
"text":"question2"}
]
},
{"type":"survey",
"id": "XXX",
"version": "YYY",
"usenarmeCreator":"marperrei1",
"title":"survey1",
"description":"survey1Sample",
"startDate":"24/11/2014",
"endDate":"27/11/2014",
"questions":[
{"type":"question",
"id": "X0X0X0",
"version": "Y0Y0Y0",
"text":"question1"},
{"type":"question",
"id": "X1X1X1",
"version": "Y1Y1Y1",
"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
- Integración con el grupo de Autenticación
- Puesta en común de código y funcionalidad
- Integración con el grupo de Verificación
- Puesta en común de código y funcionalidad
- Integración con los grupos que usan nuestra funcionalidad
- Puesta en común de código y explicaciones
06/10/14
07/10/14
15/10/2014
20/10/2014
10/11/2014
17/11/2014
23/11/2014
30/11/2014
.../12/14
Trabajo por Realizar
Terminar pequeños hilos sueltos de integración

