aplicaciÓn para el estudio en grupo de problemas complejos autor: pablo villaverde masa tutor:...
TRANSCRIPT
APLICACIÓN PARA EL APLICACIÓN PARA EL ESTUDIO EN GRUPO DE ESTUDIO EN GRUPO DE
PROBLEMAS COMPLEJOSPROBLEMAS COMPLEJOS
Autor: Autor: Pablo Villaverde MasaPablo Villaverde MasaTutor: José Tutor: José Manuel Pérez RíosManuel Pérez Ríos
Mayo, 2011 Proyecto Fin de Carrera Universidad de Valladolid
Índice
Escenario del proyecto. Objetivos. Esquema general del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto.Escenario del proyecto. Objetivos. Esquema general del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Escenario del proyecto
Cliente: Departamento de Organización de Empresas, Comercialización e Investigación de Mercados.
Necesidad: Crear una nueva aplicación para la resolución en grupo de problemas complejos. Organizador de Debates
La nueva aplicación puede reutilizar conceptos de anteriores aplicaciones del Organizador de Debates.
Ámbito y alcance del proyecto
Escenario del proyectoProceso generador de debates
Escenario del proyectoLíneas generales del funcionamiento del Organizador de Debates
MENSAJERIA:Mensajes entre usuarios,…DEBATE:Ideas, firmas, votos, comentarios,…
USUARIO ANÓNIMO
SUPERVISOR
PARTICIPANTES
ADMINISTRADOR:Inicia los debates
Basado en la primera aplicación del Organizador de Debates.
Características: Un usuario Un debate. Un único tipo de debate. Asociación de una idea a un tema. Sistema de carros para ideas agregadas. Único tipo de encuesta. Poca claridad en el código.
Organizador de Debates v1.0
Escenario del proyecto
Índice
Escenario del proyecto. Objetivos. Esquema general del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto. Objetivos.Objetivos. Esquema general del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Modelo de usuarios. Un usuario Varios debates. Dar acceso a todo tipo de usuarios. Sistema de permisos y credenciales
Espectador – Participante – Supervisor
Nuevos tipos de debates. Desarrollo: Completo o Parcial. Acceso: Público o Privado.
ObjetivosObjetivos concretos
Asociar las ideas a etiquetas (tags). Navegabilidad entre ideas.
Manejo de encuestas. Tipo: Recomendadas y Obligatorias.
Sistema de ideas favoritas. Sustitución de los carros.
Código con la estructura de Symfony.
ObjetivosObjetivos concretos
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto.Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Planificación
Desarrollo del proyecto
Desarrollo del proyectoModelo arquitectónico: Patrón Modelo-Vista-Controlador
ADMINISTRADOR
ESPECTADOR
SUPERVISOR
PARTICIPANTE
Cliente
CONTROLADOR
MODELOServido
r
VISTA
Respuesta
INTERNET
Petición
Desarrollo del proyectoDiagrama de casos de uso
Usr. SupervisorUsr. ParticipanteUsr. RegistradoAnonimoAnonimo
Registrarse
IdentificarseRecuperar Contraseña
Ayuda
Entrar al debate
Ver Manifiesto
Ver ideas finales
Listar mensajes debate
Ver mensaje debate
Ver fechas debate
Ver estadísticas
Listar ideas
Mostrar idea
Vista de impresión
Listar Ideas Ag.
Mostrar Idea Ag.
Buscar Ideas Ag.
Buscar Ideas
Ver participantes
<<extend>>
<<extend>>Usr. Registrado
Solicitar permisoVer mensajes recibidos
Ver mensajes enviados
Crear mensaje
Notificar mensaje
Mostrar mensaje
Responder mensaje
Ver perfil
Editar perfil
Ver contactos
Ver peticiones
Crear peticionVer peticion
Rechazar petición Aceptar petición
Notificar contacto
Buscar contacto
Mostrar contacto
<<extend>>
Usr. Participante
Elegir Debate privado
Contestar encuesta
Crear Mensaje Debate
Crear idea
Comentar idea
Agregar favorito
Firmar Idea Ag.
Votar Idea Ag.
Comentar idea Ag.
Crear Idea. Ag
Usr. Supervisor
Listar encuestas
Ver resultados
Terminar encuesta
Crear encuesta
Ver participación
Ver peticiones usr.
dar permiso
quitar permiso
Ver permisos
Bloquear idea
Borrar tag
Añadir tag
Edit. Manifiesto
Edit votos
Edit. Firmas
Decidir ideas finales
Edit. Num Ideas Fin.
Borrar mensaje Deb.
Establecer fechas
<<extend>>
<<extend>>
Debate
+Id_Debate+Nombre+Iteracion+NumFirmas+Completo+Publico+Activo+Manifiesto+Ideasfinales+FechaFinFase1+FechaFinFase2+FechaFinFase3
+executeList(): void+executeComprobar(): void+executeCrear(): void+executeEditar(): void+setActivo(): void+getDebate(): void+setNombre(): void
sfGuarUser
+Username: varchar+Password: varchar+Created_at: date+is_active: boolean+is_super_admin: boolean
+has_credential(): boolean+isAuthenticated(): boolean+login(): void+logout(): void+getProfile(): void
Administrador
+crear(): void+borrar(): void+editar(): void+activar(): void
Supervisor
+añadirSupervisor(): void+EliminarSupervisor(): void
Controlador
+gestionar_Debate(): void+gestionar_Admin(): void+gestionar_privilegios(): void
1
1..*
11
1
1
1
1
Desarrollo del proyectoDiagrama de clases de diseño
Controlador
+gestion_admin(id: INT): void+gestion_supervisor(id: INT): void+gestion_participante(id: INT): void+Control_privilegios(id: INT): void+Control_accesos(id_ INT): void
Administrador
+crear(): void+borrar(): void+editar(): void+activar(): void+AddSupervisor(): void
Participante
+Crear(): void+Editar(): void+Listar(): void
Supervisor
+Crear(): void+Editar(): void+Borrar(): void+Listar(): void
Espectador
+Listar(): void
sfGuarUser
+Username: varchar+Password: varchar+Created_at: date+is_active: boolean+is_super_admin: boolean
+has_credential(): boolean+isAuthenticated(): boolean+login(): void+logout(): void+getProfile(): void
sfGuardProfile
+Nombre: varchar+Apellidos: varchar+Correo: varchar+NIF: varchar+titulacion: varchar+profesion: varchar+telefono: integer
+getNombre(): varchar+getApellidos(): varchar+getCorreo(): varchar+getNIF(): varchar+getTitulacion(): varchar+getProfesion(): varchar+getTelefono(): integer+setNombre(): void+setApellidos(): void+setCorreo(): void+setNIF(): void+setTitulacion(): void+setProfesion(): void+setTelefono(): void+save(): void+update(): void+validate(): void
sfSocialContact
+Id_contact: integer+User_from: integer+User_to: integer+created_at: date+Message: varchar+Is_read(): integer
+to_string(): varchar+checkUserFrom(): boolean+delete(id: INT): void+getUserId(): integer
sfSocialMessage
+Id_message: integer+Subject: varchar+Message: text+user_from: integer+user_to: integer+Is_read: integer
+checkUserTo(): boolean+checkUserFrom(): boolean+read(): void+getRcptUser(): boolean+getReplySubject(): varchar+send(): void
sfSocialNotify
+model: varchar
+notifyMessage(id: INT): void+setModel(): void+getModel(): varchar+read(): boolean+notifyContactReuqest(id INT): void
1
11
1
1
0..*
1
0..*
1
0..*
1
1
0..*
0..*
1..*
1..*
1
1
1
1
1
1
sfGuarUser
+Username: varchar+Password: varchar+Created_at: date+is_active: boolean+is_super_admin: boolean
+has_credential(): boolean+isAuthenticated(): boolean+login(): void+logout(): void+getProfile(): void
Controlador
+cambiar_Idioma(Idioma: string): void+gestionar_debate(): void+gestionar_idea(): void+gestionar_ideaag(): void+mostrarDebate(): void+gestionar_permisos(): void+gestionar_favoritos(): void+indicar_ideas_fin(): void
Debate
+Id_Debate+Nombre+Iteracion+NumFirmas+Completo+Publico+Activo+Manifiesto+Ideasfinales+FechaFinFase1+FechaFinFase2+FechaFinFase3
+executeList(): void+executeComprobar(): boolean+executeShow(): void+executeManifiesto(): void+executeFechas(): void+executeEditarMan(): void+executeEditarFechas(): void+executeEditarParam(): void+executeIdeasFinales(): void+getEtapas(): integer+getIteracion(): integer+get y set sobre atributos)()
Permiso
+Id_debate+Id_usuario+Supervisor
+executePeticiónList(): void+executePermisoList(): void+setSupervisor(id: INT): void+setParticipante(id: INT): void+setEspectador(id: INT): void+executeListParticipantes(): void+crear_peticion(): void+crear_permiso(): void+borrar_peticion(): void+getPermisoDebate(id: INT): permiso
Sesion
+Id_sesion+Id_usuario+Id_debate+Fecha
+getSesion()+getUltimaSesion()
Encuesta
+Id_encuesta+Titulo+Fecha_inicio+Obligatoria+Activa
+executeListsup(): void+executeListusr(): void+crear(): void+mostrarresultados(): void+terminar()
Pregunta
+Id_pregunta+Texto+Tipo
+crear(): void
Respuesta
+Id_respuesta+Valor
+crear(): void
Idea agregada
+Id_ideaag+Titulo+Texto+Fecha+Creador+Iteracion+Final
+executecrear(): void+executeList(): void+executeMostrar(): void+executeVista(): void+executeFavoritos(): void
Idea
+Id_idea+Titulo+Texto+Fecha+Creador
+executecrear(): void+executeIdeaspropias(): void+exewcuteFavoritos(): void+executeList(): void+executeMostrar(): void+executeVista(): void+executeReportar(): void
Mensaje
+Id_mensaje+Asunto+Mensaje+Fecha+Creador
Fichero
+Ruta
+getFichero(id: INT): void+setFichero(): void
Comentario
+executeReportar(): void+executecrear(): void
Tag
+Id_tag+Fecha+Etiqueta
+executecrear(): void+executeListtag(): void+executeQuitartag(): void+executePonertag(): void+executeGuardartag(): void
MensajeDebate
+executeMensList(): void+executeCrear(): void+executeBorrar(): void+executeMostrar(): void
Contestacion
+Id_contesta+Valor
+contestar(): void
Firma
+Firmar()+executeVerFirmas(): void+validarFirma(): void+save(): void
Voto
+Num_votos
+votar(int)+executeVerVotos(): void+executeVermisVotos(id: INT): void+validarvoto(c: INT): boolean+save(): void
1..*
1
0..*
1
1
0..*
1
1
1
1
1
1
1
1
0..*
0..*0..*
0..*
0..*
0..*
0..*
0..*
1..*
1..*
1..*
1
11
11
1
1
1
1
1
1
1
1
0..*
0..*
0..*
0..*
0..*
Idea agregada
+Id_ideaag+Titulo+Texto+Fecha+Creador+Iteracion+Final
+executecrear(): void+executeList(): void+executeMostrar(): void+executeVista(): void+executeFavoritos(): void
0..* 1
0..*
Debate
+Id_Debate+Nombre+Iteracion+NumFirmas+Completo+Publico+Activo+Manifiesto+Ideasfinales+FechaFinFase1+FechaFinFase2+FechaFinFase3
+executeList(): void+executeComprobar(): void+executeShow(): void+executeMAnifiesto(): void+executeFechasDebate(): void+executeEditarMan(): void+executeEditarFechas(): void+executeEditarparam(): void+executeIdeasFinales(): void+getEtapa(): integer+(get y set de atributos)
0..*
1
Idea
+Id_idea+Titulo+Texto+Fecha+Creador
+executecrear(): void+executeIdeaspropias(): void+exewcuteFavoritos(): void+executeList(): void+executeMostrar(): void+executeVista(): void+executeReportar(): void
0..*
0..*
Desarrollo del proyectoDiseño de la base de datos: Mensajería y desarrollo del debate
Desarrollo del proyectoImplementación
PROYECTO
ORGANIZADOR DE DEBATES
DIRECTORIOS
CONFIG
MÓDULOS
(2)
LIBCONFIG
I18NMÓDULO
S(15)
LIB
APLICACIONES ADMENDFRONTEND PLUGIN
S
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada.Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Servidor Web. Servidor Apache vX.X
Servidor de Base de Datos. MySQL vX.X
Lenguaje de programación. PHP 5.3 + Javascript + AJAX + CSS
Framework y Librerías Symfony v1.4.8 + JQuery
IDE: Netbeans 6.8
Tecnología empleadaLenguajes de programación y soportes
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica.Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas.Pruebas. Conclusiones y posibles ampliaciones.
Pruebas de integración de sistema. Sistemas operativos y navegadores.
Pruebas de privilegios. Identificación y asociación de permisos
Pruebas de funcionalidad. CRUD de formularios.
Pruebas de casos límite. Pruebas de desarrollo del debate.
Etapas y tipos de debate.
PruebasCatálogo de pruebas
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.
Índice
Escenario del proyecto. Objetivos. Desarrollo del Proyecto. Tecnología empleada. Demostración práctica. Pruebas. Conclusiones y posibles ampliaciones.Conclusiones y posibles ampliaciones.
Sistema abierto a todo tipo de usuarios. Sistema seguro de permisos para debates. Personalización de debates a las necesidades del
supervisor. Variedad de tipos de encuestas. Navegabilidad entre ideas con la misma etiqueta. Sistema de favoritos más cercano al usuario. Diseño modular, escalable y portable.
Objetivos logrados
Conclusiones y posibles ampliaciones
Nuevas funcionalidades de red social. Plugin SfSocial y SfGuard Grupos y Eventos.
Mejorar el sistema de favoritos guardando de forma permanente los favoritos en la base de datos.
Un analizador sintáctico para la extracción de tags Mejora del modulo de i18n:
Nuevos idiomas.
Conclusiones y posibles ampliacionesPosibles ampliaciones
Autor: Autor: Pablo Villaverde MasaPablo Villaverde MasaTutor: José Tutor: José Manuel Pérez RíosManuel Pérez Ríos
Mayo, 2011 Proyecto Fin de Carrera Universidad de Valladolid
GRACIAS POR SU ATENCIÓNGRACIAS POR SU ATENCIÓN
APLICACIÓN PARA EL APLICACIÓN PARA EL ESTUDIO EN GRUPO DE ESTUDIO EN GRUPO DE
PROBLEMAS COMPLEJOSPROBLEMAS COMPLEJOS