SlideShare una empresa de Scribd logo
Proyecto de Fin de Carrera




                    Autor: David Rozas Domingo
                    Tutor: José Centeno González
Índice:
➔
    El problema del reparto de turnos.
➔
    ¿Por qué Moodle?.
➔
    Objetivos.
➔
    Algoritmo de reparto de turnos.
➔
    Diseño de la aplicación y ejemplo de uso.
➔
    Pruebas y estudio del uso de la aplicación en la universidad.
➔
    Recursos.
➔
    Conclusiones.


                                                                    2
El problema del reparto de turnos

 ➔
  Proceso anterior: colocar una hoja en la puerta de
 los laboratorios, y apuntarse manualmente.
 ➔
  Este proceso es:
     ➔
         Incómodo.
     ➔
         Crea listas no compactas y frecuentemente
         descompensadas.
 ➔
  Por tanto, se requiere una informatización del
 problema.

                                                       3
¿Por qué Moodle?
  ➔
      Moodle es un sistema de aprendizaje colaborativo:
      ➔
          Libre.
      ➔
          Comunidad de usuarios y desarrolladores en vertiginoso crecimiento.
      ➔
          Usado en los laboratorios del GSyC.
  ➔
      Por tanto, aunque inicialmente requiere mayor esfuerzo de aprendizaje,
      nos ofrece:
      ➔
          Core API muy robusto, con funciones muy testeadas.
      ➔
          Posibilidad de que la aplicación pueda usarse más allá de los laboratorios
          de la universidad.




                                                                                       4
Objetivos

  ➔
      Los objetivos a cubrir por este PFC son:
        ➔
            Diseñar e implementar una herramienta que gestione automáticamente
            el reparto de turnos.
        ➔
            Integrar dicha herramienta en la plataforma Moodle.
        ➔
            Analizar su implantación en los laboratorios:
            ➔
                Diseñar sistema de seguridad del gestor de turnos.
            ➔
                Buscar y analizar métodos de autenticación seguros.
        ➔
            Difusión de la aplicación a la comunidad de software libre:
            ➔
                Internacionalización.
            ➔
                Creación de manuales de uso.
            ➔
                Publicación en el portal Moodle.
            ➔
                ...



                                                                                 5
Algoritmo de reparto de turnos

  ➔
      Algoritmo que tenga en cuenta tanto las necesidades del profesor como las
      del alumno.
  ➔
      Idea:
      ➔
          Se pueden definir N bloques de tiempo.
      ➔
          Los alumnos se inscriben en dichos bloques con preferencia: lo antes
          posible, o lo más tarde posible.
      ➔
          Se reordena dinámicamente para cada bloque:
          ➔
              En una sublista P, insertamos todos los que eligieron lo antes posible,
              respetando su prioridad al insertar por el final.
          ➔
              En una sublista T, insertamos todos los que eligieron lo más tarde
              posible, respetando su prioridad al insertar por el principio.
          ➔
              Fusión de ambas sublistas.

                                                                                        6
Algoritmo de reparto de turnos
Array de entrada, ordenado por orden de registro, pero no por preferencias




                              Creación de dos sublistas ordenadas por preferencias, respetando orden de llegada




                                                                                              Fusión de sublistas, lista ordenada final




                                                                                                                                          7
Diseño e implementación
  ➔
      El lenguaje utilizado en Moodle es PHP: interpretado y multiplataforma.
  ➔
      El SGBD es MySQL, el más usado dentro de Moodle.
  ➔
      El diseño se realizó de forma modular, escalando a través de varios
      prototipos.
  ➔
      Esquema general de la aplicación:




                                                                                8
Diseño e implementación:

  ➔
      Algunos de estos ficheros son:
      ➔
          block_gturnos.php: clase que hereda de la clase block_list.php del API,
          para generar los menús.




                        Menú de alumno
                                                   Menú de profesor




      ➔
          lib.php: librería general de la aplicación, con algunas de las funciones más
          importantes como ordenar_lista(), calcular_plazas(), etc.




                                                                                         9
Diseño e implementación

  ➔
      vista_previa.php: genera una vista previa de la lista de entrega, sólo
      visible por el profesor.
  ➔
      registro_alumno.php: muestra un formulario con los turnos disponibles
      para que se registre el alumno.




                                                       Formulario de registro de alumno



             Vista previa de lista de entrega
                                                                                          10
Diseño e implementación
  ➔
      En lo referente a la seguridad de la aplicación, se han utilizado varias
      funciones del API de Moodle para evitar el acceso a funciones que no
      corresponden a su rol, ataques de inyección SQL, ataques XSS, etc.
  ➔
      El sistema de seguridad es el siguiente:
      ➔
          Si la recogida y el filtrado de parámetros es correcto.
              ➔
                  Si tiene los permisos necesarios en este curso.
                  ➔
                      Si es correcto su rol, y su identificador de sesión concuerda.
                            ➔
                                Ejecutar acciones.
                  ➔
                      Si no, redirección manual.
              ➔
                  Si no, redirección automática.
          ➔
              Si no, mostrar error.
  ➔
      Dichas medidas se han aplicado a todos los ficheros en los que se requiere
      intervención del usuario: visualización, recogida, confirmación y envío de la
      información a la base de datos.
                                                                                       11
Diseño e implementación
  ➔
      El proceso de instalación y desinstalación es muy sencillo, como el de
      cualquier otro bloque Moodle.
  ➔
      Para la instalación, se creó un script SQL que genera las tablas necesarias
      en la base de datos al instalarse.
  ➔
      Para el proceso de desinstalación y el borrado de instancias de gTurnos, se
      sobreescribieron los métodos de la clase para que ejecuten las sentencias
      SQL necesarias al borrar.




       Proceso de instalación y desinstalación de gTurnos, a través del panel de administración general de Moodle
                                                                                                                    12
Diseño e implementación
  ➔
      En cuanto a la internacionalización de la aplicación, gTurnos se puede usar
      en castellano e inglés.
  ➔
      Igualmente se han traducido el manual de uso y el sitio web.
  ➔
      De esta forma, intentamos que gTurnos se pueda usar más allá de los
      laboratorios de la universidad.




              Menú de configuración de bloques de turnos del profesor, en ambos idiomas
                                                                                          13
Pruebas con diferentes versiones

  ➔
      La aplicación se desarrolló bajo Moodle 1.6.2.
  ➔
      Se ha probado con éxito bajo Moodle 1.6.3 y 1.7 (últimas versiones
      a día de hoy).
  ➔
      En Moodle 1.7 aparecen nuevos roles: course_creator (acceso a
      modo edición) y non_editing_teacher (rol de profesor, sin modo
      edición).
  ➔
      Se realizó un estudio, y gTurnos se adapta correctamente:
      ➔
          Bajo los roles anteriores, cumple la misma función.
      ➔
          Respecto a non_editing_teacher: puede configurarlo y visualizar
          la información, pero no puede instanciarlo.
      ➔
          course_creator: puede instanciarlo, pero no visualizarlo ni
          configurarlo.
                                                                            14
Pruebas con diferentes versiones
➔
    En cuanto al SGBD, no hay ningún problema.
➔
    Sí lo hay respecto a PHP:
    ➔
        Versiones anteriores a la 5 no incluyen modificadores de control de acceso
        de los atributos.
    ➔
        Por ello, se desarrolló otra versión para versiones de PHP inferiores a la 5.
➔
    También se ha probado con éxito en otros sistemas operativos distintos al
    que se desarrolló, como Windows XP.




Lanzamiento de versiones diferentes en sourceforge.net       gTurnos bajo Windows XP    15
Pruebas y estudio de la aplicación
en la universidad
  ➔
      gTurnos requiere autenticación del usuario.
  ➔
      Queremos que Moodle utilice las cuentas de los laboratorios.
  ➔
      Moodle nos ofrece varias alternativas: cuentas manuales, PAM,
      servidores LDAP, servidores POP3, etc.
  ➔
      Recomendamos el uso de PAM, mecanismo que proporciona un
      interfaz entre las aplicaciones de usuario y diferentes métodos de
      autenticación.
  ➔
      Configuramos de forma que el servidor que tiene instalado Moodle
      permite el acceso PAM a través de la comunicación con el servidor
      LDAP.
  ➔
      El módulo PAM que utiliza Moodle es pam_auth (GPL), que permite
      la configuración PAM a través de PHP.
  ➔
      Dicha configuración ha sido probada con éxito.                       16
Pruebas y estudio de la aplicación
en la universidad




           Esquema con el sistema de autenticación recomendado
                                                                 17
Pruebas y estudio de la aplicación
en la universidad
  ➔
      Por último era necesario analizar la seguridad del sistema Moodle en el
      acceso, más aun tratándose de las cuentas del laboratorio.
  ➔
      Si realizamos capturas, la información viaja en claro.
  ➔
      Necesitamos utilizar HTTPS, preferiblemente sólo en el logueo, para no
      ralentizar en exceso el sistema.
  ➔
      Moodle 1.7 incorpora esta opción, por lo que es la versión que
      recomendamos se use en caso de implantación.




                   Capturas con Ethereal sin y con HTTPS en el proceso de login   18
Recursos
  ➔
      Para intentar que el proyecto pueda ser útil más allá de su
      uso en los laboratorios:
      ➔
          Manuales de uso en inglés y castellano, incluidos en los
          paquetes de descarga.
      ➔
          Proyecto albergado en sourceforge bajo licencia GPL:
          https://sourceforge.net/projects/gturnos (más de 200
          descargas a día de hoy)
      ➔
          Página web en inglés y castellano:
          http://gturnos.sourceforge.net
      ➔
          Proyecto albergado en la sección Modules and Plugins, de
          Moodle.org:
          http://moodle.org/mod/data/view.php?d=13&rid=571
                                                                     19
Conclusiones y trabajo futuro
  ➔
      Se ha conseguido una solución informatizada al problema de reparto
      de turnos:
      ➔
          Modular, segura y multiplataforma.
      ➔
          Integrada en Moodle.
      ➔
          Estable, en fase de producción.
  ➔
      Se ha analizado su implementación en los laboratorios, dando
      recomendaciones de uso argumentadas.
  ➔
      En cuanto a posibles trabajos futuros:
      ➔
          Ampliar los SGBD sobre los que puede trabajar: PostgreSQL,
          Oracle, Microsoft SQL Server, etc. (nuevas versiones de Moodle).
      ➔
          Implementación como bloque multi-instancia, que permita
          trabajar con varios gestores de turnos a la vez.


                                                                             20
Tiempo estimado de desarrollo



Moodle y PHP                                 25%
Diseño e implementación de gTurnos           25%
Análisis de implantación                     15%
Desarrollo de otros recursos para difusión   15%
Memoria                                      20%


                                                   21

Más contenido relacionado

Destacado

So
SoSo
Presentación como crear un aula virtual en moddle
Presentación como crear un aula virtual en moddlePresentación como crear un aula virtual en moddle
Presentación como crear un aula virtual en moddle
rafauhi
 
Aula virtual moodle
Aula virtual moodleAula virtual moodle
Aula virtual moodle
Diana Azas
 
Proyecto innovación red macroregional
Proyecto innovación red macroregionalProyecto innovación red macroregional
Proyecto innovación red macroregional
JOSE RONALD CORREA LARREA
 
Publicación de recursos en un aula virtual con Moodle
Publicación de recursos en un aula virtual con MoodlePublicación de recursos en un aula virtual con Moodle
Publicación de recursos en un aula virtual con Moodle
Víctor Barbero
 
ProyectoMasterProf
ProyectoMasterProfProyectoMasterProf
ProyectoMasterProf
concettadalterio
 
Proyecto Laboratorio Virtual de Electronica- La Paz Bolivia
Proyecto Laboratorio Virtual de Electronica- La Paz BoliviaProyecto Laboratorio Virtual de Electronica- La Paz Bolivia
Proyecto Laboratorio Virtual de Electronica- La Paz Bolivia
Marianela Laura Quisbert
 
Moodle_Instalacion en localhost
Moodle_Instalacion en localhostMoodle_Instalacion en localhost
Moodle_Instalacion en localhost
Carlos Parada Gandos
 
B learning Proyecto de Aula virtual de Postgrado UGMA pfep
B learning Proyecto de Aula virtual de Postgrado UGMA pfepB learning Proyecto de Aula virtual de Postgrado UGMA pfep
B learning Proyecto de Aula virtual de Postgrado UGMA pfep
UGMA
 
Proyecto de innovacion aula virtual con moodle
Proyecto de innovacion aula virtual con moodleProyecto de innovacion aula virtual con moodle
Proyecto de innovacion aula virtual con moodle
Levi Ronald Castro Fernández
 

Destacado (12)

moddle.
moddle.moddle.
moddle.
 
So
SoSo
So
 
Presentación como crear un aula virtual en moddle
Presentación como crear un aula virtual en moddlePresentación como crear un aula virtual en moddle
Presentación como crear un aula virtual en moddle
 
Aula virtual moodle
Aula virtual moodleAula virtual moodle
Aula virtual moodle
 
Proyecto innovación red macroregional
Proyecto innovación red macroregionalProyecto innovación red macroregional
Proyecto innovación red macroregional
 
Publicación de recursos en un aula virtual con Moodle
Publicación de recursos en un aula virtual con MoodlePublicación de recursos en un aula virtual con Moodle
Publicación de recursos en un aula virtual con Moodle
 
Informe proyecto de instalación moodle colegio san nicolás
Informe proyecto de instalación moodle colegio san nicolásInforme proyecto de instalación moodle colegio san nicolás
Informe proyecto de instalación moodle colegio san nicolás
 
ProyectoMasterProf
ProyectoMasterProfProyectoMasterProf
ProyectoMasterProf
 
Proyecto Laboratorio Virtual de Electronica- La Paz Bolivia
Proyecto Laboratorio Virtual de Electronica- La Paz BoliviaProyecto Laboratorio Virtual de Electronica- La Paz Bolivia
Proyecto Laboratorio Virtual de Electronica- La Paz Bolivia
 
Moodle_Instalacion en localhost
Moodle_Instalacion en localhostMoodle_Instalacion en localhost
Moodle_Instalacion en localhost
 
B learning Proyecto de Aula virtual de Postgrado UGMA pfep
B learning Proyecto de Aula virtual de Postgrado UGMA pfepB learning Proyecto de Aula virtual de Postgrado UGMA pfep
B learning Proyecto de Aula virtual de Postgrado UGMA pfep
 
Proyecto de innovacion aula virtual con moodle
Proyecto de innovacion aula virtual con moodleProyecto de innovacion aula virtual con moodle
Proyecto de innovacion aula virtual con moodle
 

Similar a gTurnos presentation-es

2.modelos del proceso
2.modelos del proceso2.modelos del proceso
2.modelos del proceso
Ramiro Estigarribia Canese
 
Presentación1
Presentación1Presentación1
Presentación1
JoSuee LuGo
 
Proyecto Agenda Estudiantil
Proyecto Agenda EstudiantilProyecto Agenda Estudiantil
Proyecto Agenda Estudiantil
Jefferson Arias
 
Modelos de proceso de software
Modelos de proceso de softwareModelos de proceso de software
Modelos de proceso de software
Alvaro Ariel Martinez Mancilla
 
18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...
18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...
18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...Software Guru
 
Plataformas de e learning 1
Plataformas de e learning 1Plataformas de e learning 1
Plataformas de e learning 1Adrian Eleazar
 
Guia de word 2
Guia de word 2Guia de word 2
Guia de word 2
David Castillo
 
Plataformas de el e learning
Plataformas de el e learningPlataformas de el e learning
Plataformas de el e learningAdrian Eleazar
 
358pc
358pc358pc
358pc
Pablo Mora
 
Plataformas FormacióN
Plataformas FormacióNPlataformas FormacióN
Plataformas FormacióN
mlorda
 
Demostración final
Demostración finalDemostración final
Demostración finalcarmensp
 
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...Ianpierr Miranda
 
ATIX20
ATIX20ATIX20
Framework para desarrollo de apps móviles
Framework para desarrollo de apps móvilesFramework para desarrollo de apps móviles
Framework para desarrollo de apps móviles
Iván Campaña Naranjo
 
Presentación (1)
Presentación (1)Presentación (1)
Presentación (1)
Paulo Oyarzo
 
Presentación Proyecto Fin Carrera #SagaPFC
Presentación Proyecto Fin Carrera #SagaPFCPresentación Proyecto Fin Carrera #SagaPFC
Presentación Proyecto Fin Carrera #SagaPFC
Luis Pérez Alcaide
 
Modelos de software
Modelos de softwareModelos de software
Modelos de software
NathalyAndrade10
 
Administración de sistemas
Administración de sistemasAdministración de sistemas
Administración de sistemaskarolpaolaargel
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
George Navarro Gomez
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
George Navarro Gomez
 

Similar a gTurnos presentation-es (20)

2.modelos del proceso
2.modelos del proceso2.modelos del proceso
2.modelos del proceso
 
Presentación1
Presentación1Presentación1
Presentación1
 
Proyecto Agenda Estudiantil
Proyecto Agenda EstudiantilProyecto Agenda Estudiantil
Proyecto Agenda Estudiantil
 
Modelos de proceso de software
Modelos de proceso de softwareModelos de proceso de software
Modelos de proceso de software
 
18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...
18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...
18 19 plataforma moodle, implementación, gestión, impacto y potencialidades e...
 
Plataformas de e learning 1
Plataformas de e learning 1Plataformas de e learning 1
Plataformas de e learning 1
 
Guia de word 2
Guia de word 2Guia de word 2
Guia de word 2
 
Plataformas de el e learning
Plataformas de el e learningPlataformas de el e learning
Plataformas de el e learning
 
358pc
358pc358pc
358pc
 
Plataformas FormacióN
Plataformas FormacióNPlataformas FormacióN
Plataformas FormacióN
 
Demostración final
Demostración finalDemostración final
Demostración final
 
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
 
ATIX20
ATIX20ATIX20
ATIX20
 
Framework para desarrollo de apps móviles
Framework para desarrollo de apps móvilesFramework para desarrollo de apps móviles
Framework para desarrollo de apps móviles
 
Presentación (1)
Presentación (1)Presentación (1)
Presentación (1)
 
Presentación Proyecto Fin Carrera #SagaPFC
Presentación Proyecto Fin Carrera #SagaPFCPresentación Proyecto Fin Carrera #SagaPFC
Presentación Proyecto Fin Carrera #SagaPFC
 
Modelos de software
Modelos de softwareModelos de software
Modelos de software
 
Administración de sistemas
Administración de sistemasAdministración de sistemas
Administración de sistemas
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
 

Más de David Rozas

When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com...
 When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com... When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com...
David Rozas
 
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
David Rozas
 
Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...
Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...
Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...
David Rozas
 
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
David Rozas
 
Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...
Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...
Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...
David Rozas
 
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
David Rozas
 
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
David Rozas
 
Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...
Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...
Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...
David Rozas
 
Drupal: "come for the software, stay for the community". Conociendo la comunidad
Drupal: "come for the software, stay for the community". Conociendo la comunidadDrupal: "come for the software, stay for the community". Conociendo la comunidad
Drupal: "come for the software, stay for the community". Conociendo la comunidad
David Rozas
 
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
David Rozas
 
Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...
Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...
Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...
David Rozas
 
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
David Rozas
 
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
David Rozas
 
Lightning talk - Affective labour and the notion of contribution in FLOSS com...
Lightning talk - Affective labour and the notion of contribution in FLOSS com...Lightning talk - Affective labour and the notion of contribution in FLOSS com...
Lightning talk - Affective labour and the notion of contribution in FLOSS com...
David Rozas
 
Directori català de l’economia col·laborativa
Directori català de l’economia col·laborativaDirectori català de l’economia col·laborativa
Directori català de l’economia col·laborativa
David Rozas
 
Survey Research (SOC2029). Seminar 10: non-response and missing data
Survey Research (SOC2029). Seminar 10: non-response and missing dataSurvey Research (SOC2029). Seminar 10: non-response and missing data
Survey Research (SOC2029). Seminar 10: non-response and missing data
David Rozas
 
Survey Research (SOC2029). Seminar 9: designing a self-completion questionnaire
Survey Research (SOC2029). Seminar 9: designing a self-completion questionnaireSurvey Research (SOC2029). Seminar 9: designing a self-completion questionnaire
Survey Research (SOC2029). Seminar 9: designing a self-completion questionnaire
David Rozas
 
Survey Research (SOC2029). Seminar 8: formulating a research question
Survey Research (SOC2029). Seminar 8: formulating a research questionSurvey Research (SOC2029). Seminar 8: formulating a research question
Survey Research (SOC2029). Seminar 8: formulating a research question
David Rozas
 
Survey Research (SOC2029). Seminar 7: ethics in survey research
Survey Research (SOC2029). Seminar 7: ethics in survey researchSurvey Research (SOC2029). Seminar 7: ethics in survey research
Survey Research (SOC2029). Seminar 7: ethics in survey research
David Rozas
 
Survey Research (SOC2029). Seminar 6: questionnaire design (II)
Survey Research (SOC2029). Seminar 6: questionnaire design (II) Survey Research (SOC2029). Seminar 6: questionnaire design (II)
Survey Research (SOC2029). Seminar 6: questionnaire design (II)
David Rozas
 

Más de David Rozas (20)

When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com...
 When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com... When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Com...
 
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
 
Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...
Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...
Cuando Ostrom se encuentra con blockchain: explorando las potencialidades de ...
 
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
When Ostrom Meets Blockchain: Exploring the Potentials of Blockchain for Comm...
 
Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...
Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...
Ostrom’s crypto-principles? Towards a commons-based approach for the use of B...
 
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
 
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
Self-organisation in Commons-Based Peer Production. Drupal: “the drop is alwa...
 
Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...
Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...
Drupal: the drop is always moving. Autogestión y gobernanza de infraestructur...
 
Drupal: "come for the software, stay for the community". Conociendo la comunidad
Drupal: "come for the software, stay for the community". Conociendo la comunidadDrupal: "come for the software, stay for the community". Conociendo la comunidad
Drupal: "come for the software, stay for the community". Conociendo la comunidad
 
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
 
Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...
Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...
Quantitative Methods II (#SOC2031). Seminar #11: Secondary analysis. Big data...
 
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
 
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
Talk is silver, code is gold? Contribution beyond source code in Free/Libre O...
 
Lightning talk - Affective labour and the notion of contribution in FLOSS com...
Lightning talk - Affective labour and the notion of contribution in FLOSS com...Lightning talk - Affective labour and the notion of contribution in FLOSS com...
Lightning talk - Affective labour and the notion of contribution in FLOSS com...
 
Directori català de l’economia col·laborativa
Directori català de l’economia col·laborativaDirectori català de l’economia col·laborativa
Directori català de l’economia col·laborativa
 
Survey Research (SOC2029). Seminar 10: non-response and missing data
Survey Research (SOC2029). Seminar 10: non-response and missing dataSurvey Research (SOC2029). Seminar 10: non-response and missing data
Survey Research (SOC2029). Seminar 10: non-response and missing data
 
Survey Research (SOC2029). Seminar 9: designing a self-completion questionnaire
Survey Research (SOC2029). Seminar 9: designing a self-completion questionnaireSurvey Research (SOC2029). Seminar 9: designing a self-completion questionnaire
Survey Research (SOC2029). Seminar 9: designing a self-completion questionnaire
 
Survey Research (SOC2029). Seminar 8: formulating a research question
Survey Research (SOC2029). Seminar 8: formulating a research questionSurvey Research (SOC2029). Seminar 8: formulating a research question
Survey Research (SOC2029). Seminar 8: formulating a research question
 
Survey Research (SOC2029). Seminar 7: ethics in survey research
Survey Research (SOC2029). Seminar 7: ethics in survey researchSurvey Research (SOC2029). Seminar 7: ethics in survey research
Survey Research (SOC2029). Seminar 7: ethics in survey research
 
Survey Research (SOC2029). Seminar 6: questionnaire design (II)
Survey Research (SOC2029). Seminar 6: questionnaire design (II) Survey Research (SOC2029). Seminar 6: questionnaire design (II)
Survey Research (SOC2029). Seminar 6: questionnaire design (II)
 

Último

Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Festibity
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
thomasdcroz38
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
AMADO SALVADOR
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 
algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1
yuki22434
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
IsabelQuintero36
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
sarasofiamontezuma
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
JuanAlvarez413513
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
juanchogame18
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
aljitagallego
 
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
SERVANDOBADILLOPOLEN
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
Ing. Julio Iván Mera Casas
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 

Último (20)

Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 
algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
 
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 

gTurnos presentation-es

  • 1. Proyecto de Fin de Carrera Autor: David Rozas Domingo Tutor: José Centeno González
  • 2. Índice: ➔ El problema del reparto de turnos. ➔ ¿Por qué Moodle?. ➔ Objetivos. ➔ Algoritmo de reparto de turnos. ➔ Diseño de la aplicación y ejemplo de uso. ➔ Pruebas y estudio del uso de la aplicación en la universidad. ➔ Recursos. ➔ Conclusiones. 2
  • 3. El problema del reparto de turnos ➔ Proceso anterior: colocar una hoja en la puerta de los laboratorios, y apuntarse manualmente. ➔ Este proceso es: ➔ Incómodo. ➔ Crea listas no compactas y frecuentemente descompensadas. ➔ Por tanto, se requiere una informatización del problema. 3
  • 4. ¿Por qué Moodle? ➔ Moodle es un sistema de aprendizaje colaborativo: ➔ Libre. ➔ Comunidad de usuarios y desarrolladores en vertiginoso crecimiento. ➔ Usado en los laboratorios del GSyC. ➔ Por tanto, aunque inicialmente requiere mayor esfuerzo de aprendizaje, nos ofrece: ➔ Core API muy robusto, con funciones muy testeadas. ➔ Posibilidad de que la aplicación pueda usarse más allá de los laboratorios de la universidad. 4
  • 5. Objetivos ➔ Los objetivos a cubrir por este PFC son: ➔ Diseñar e implementar una herramienta que gestione automáticamente el reparto de turnos. ➔ Integrar dicha herramienta en la plataforma Moodle. ➔ Analizar su implantación en los laboratorios: ➔ Diseñar sistema de seguridad del gestor de turnos. ➔ Buscar y analizar métodos de autenticación seguros. ➔ Difusión de la aplicación a la comunidad de software libre: ➔ Internacionalización. ➔ Creación de manuales de uso. ➔ Publicación en el portal Moodle. ➔ ... 5
  • 6. Algoritmo de reparto de turnos ➔ Algoritmo que tenga en cuenta tanto las necesidades del profesor como las del alumno. ➔ Idea: ➔ Se pueden definir N bloques de tiempo. ➔ Los alumnos se inscriben en dichos bloques con preferencia: lo antes posible, o lo más tarde posible. ➔ Se reordena dinámicamente para cada bloque: ➔ En una sublista P, insertamos todos los que eligieron lo antes posible, respetando su prioridad al insertar por el final. ➔ En una sublista T, insertamos todos los que eligieron lo más tarde posible, respetando su prioridad al insertar por el principio. ➔ Fusión de ambas sublistas. 6
  • 7. Algoritmo de reparto de turnos Array de entrada, ordenado por orden de registro, pero no por preferencias Creación de dos sublistas ordenadas por preferencias, respetando orden de llegada Fusión de sublistas, lista ordenada final 7
  • 8. Diseño e implementación ➔ El lenguaje utilizado en Moodle es PHP: interpretado y multiplataforma. ➔ El SGBD es MySQL, el más usado dentro de Moodle. ➔ El diseño se realizó de forma modular, escalando a través de varios prototipos. ➔ Esquema general de la aplicación: 8
  • 9. Diseño e implementación: ➔ Algunos de estos ficheros son: ➔ block_gturnos.php: clase que hereda de la clase block_list.php del API, para generar los menús. Menú de alumno Menú de profesor ➔ lib.php: librería general de la aplicación, con algunas de las funciones más importantes como ordenar_lista(), calcular_plazas(), etc. 9
  • 10. Diseño e implementación ➔ vista_previa.php: genera una vista previa de la lista de entrega, sólo visible por el profesor. ➔ registro_alumno.php: muestra un formulario con los turnos disponibles para que se registre el alumno. Formulario de registro de alumno Vista previa de lista de entrega 10
  • 11. Diseño e implementación ➔ En lo referente a la seguridad de la aplicación, se han utilizado varias funciones del API de Moodle para evitar el acceso a funciones que no corresponden a su rol, ataques de inyección SQL, ataques XSS, etc. ➔ El sistema de seguridad es el siguiente: ➔ Si la recogida y el filtrado de parámetros es correcto. ➔ Si tiene los permisos necesarios en este curso. ➔ Si es correcto su rol, y su identificador de sesión concuerda. ➔ Ejecutar acciones. ➔ Si no, redirección manual. ➔ Si no, redirección automática. ➔ Si no, mostrar error. ➔ Dichas medidas se han aplicado a todos los ficheros en los que se requiere intervención del usuario: visualización, recogida, confirmación y envío de la información a la base de datos. 11
  • 12. Diseño e implementación ➔ El proceso de instalación y desinstalación es muy sencillo, como el de cualquier otro bloque Moodle. ➔ Para la instalación, se creó un script SQL que genera las tablas necesarias en la base de datos al instalarse. ➔ Para el proceso de desinstalación y el borrado de instancias de gTurnos, se sobreescribieron los métodos de la clase para que ejecuten las sentencias SQL necesarias al borrar. Proceso de instalación y desinstalación de gTurnos, a través del panel de administración general de Moodle 12
  • 13. Diseño e implementación ➔ En cuanto a la internacionalización de la aplicación, gTurnos se puede usar en castellano e inglés. ➔ Igualmente se han traducido el manual de uso y el sitio web. ➔ De esta forma, intentamos que gTurnos se pueda usar más allá de los laboratorios de la universidad. Menú de configuración de bloques de turnos del profesor, en ambos idiomas 13
  • 14. Pruebas con diferentes versiones ➔ La aplicación se desarrolló bajo Moodle 1.6.2. ➔ Se ha probado con éxito bajo Moodle 1.6.3 y 1.7 (últimas versiones a día de hoy). ➔ En Moodle 1.7 aparecen nuevos roles: course_creator (acceso a modo edición) y non_editing_teacher (rol de profesor, sin modo edición). ➔ Se realizó un estudio, y gTurnos se adapta correctamente: ➔ Bajo los roles anteriores, cumple la misma función. ➔ Respecto a non_editing_teacher: puede configurarlo y visualizar la información, pero no puede instanciarlo. ➔ course_creator: puede instanciarlo, pero no visualizarlo ni configurarlo. 14
  • 15. Pruebas con diferentes versiones ➔ En cuanto al SGBD, no hay ningún problema. ➔ Sí lo hay respecto a PHP: ➔ Versiones anteriores a la 5 no incluyen modificadores de control de acceso de los atributos. ➔ Por ello, se desarrolló otra versión para versiones de PHP inferiores a la 5. ➔ También se ha probado con éxito en otros sistemas operativos distintos al que se desarrolló, como Windows XP. Lanzamiento de versiones diferentes en sourceforge.net gTurnos bajo Windows XP 15
  • 16. Pruebas y estudio de la aplicación en la universidad ➔ gTurnos requiere autenticación del usuario. ➔ Queremos que Moodle utilice las cuentas de los laboratorios. ➔ Moodle nos ofrece varias alternativas: cuentas manuales, PAM, servidores LDAP, servidores POP3, etc. ➔ Recomendamos el uso de PAM, mecanismo que proporciona un interfaz entre las aplicaciones de usuario y diferentes métodos de autenticación. ➔ Configuramos de forma que el servidor que tiene instalado Moodle permite el acceso PAM a través de la comunicación con el servidor LDAP. ➔ El módulo PAM que utiliza Moodle es pam_auth (GPL), que permite la configuración PAM a través de PHP. ➔ Dicha configuración ha sido probada con éxito. 16
  • 17. Pruebas y estudio de la aplicación en la universidad Esquema con el sistema de autenticación recomendado 17
  • 18. Pruebas y estudio de la aplicación en la universidad ➔ Por último era necesario analizar la seguridad del sistema Moodle en el acceso, más aun tratándose de las cuentas del laboratorio. ➔ Si realizamos capturas, la información viaja en claro. ➔ Necesitamos utilizar HTTPS, preferiblemente sólo en el logueo, para no ralentizar en exceso el sistema. ➔ Moodle 1.7 incorpora esta opción, por lo que es la versión que recomendamos se use en caso de implantación. Capturas con Ethereal sin y con HTTPS en el proceso de login 18
  • 19. Recursos ➔ Para intentar que el proyecto pueda ser útil más allá de su uso en los laboratorios: ➔ Manuales de uso en inglés y castellano, incluidos en los paquetes de descarga. ➔ Proyecto albergado en sourceforge bajo licencia GPL: https://sourceforge.net/projects/gturnos (más de 200 descargas a día de hoy) ➔ Página web en inglés y castellano: http://gturnos.sourceforge.net ➔ Proyecto albergado en la sección Modules and Plugins, de Moodle.org: http://moodle.org/mod/data/view.php?d=13&rid=571 19
  • 20. Conclusiones y trabajo futuro ➔ Se ha conseguido una solución informatizada al problema de reparto de turnos: ➔ Modular, segura y multiplataforma. ➔ Integrada en Moodle. ➔ Estable, en fase de producción. ➔ Se ha analizado su implementación en los laboratorios, dando recomendaciones de uso argumentadas. ➔ En cuanto a posibles trabajos futuros: ➔ Ampliar los SGBD sobre los que puede trabajar: PostgreSQL, Oracle, Microsoft SQL Server, etc. (nuevas versiones de Moodle). ➔ Implementación como bloque multi-instancia, que permita trabajar con varios gestores de turnos a la vez. 20
  • 21. Tiempo estimado de desarrollo Moodle y PHP 25% Diseño e implementación de gTurnos 25% Análisis de implantación 15% Desarrollo de otros recursos para difusión 15% Memoria 20% 21