1. Julio 2009 PROYECTO FIN DE CARRERA Ingeniería Técnica en Informática de Sistemas Tutores Francisco J. García Peñalvo Miguel A. Conde González Autora Nazareth Álvarez Rosado ADAPTACIÓN DE CONTENIDOS MOODLE PARA MÓVILES
Buenos días Les voy a presentar mi proyecto fin de carrera titulado : ClayMobile: adaptación de contenidos moodle para móviles. Mis tutores han sido: Francisco García Peñalvo y Miguel Conde Gonzalez.
Comenzaré la presentación con una breve introducción a la temática del proyecto y presentaré sus objetivos principales. A continuación describiré brevemente el sistema y pasaré a citar las técnicas y herramientas utilizadas. Más adelante profundizaré en los aspectos más relevantes al desarrollo que culminaré con una breve demostración del sistema. Para concluir presentaré las lineas futuras, conclusiones y el caracter innovador del proyecto.
En la sociedad actual, las nuevas tecnologías se han introducido en los procesos educativos. Cada vez hay dispositivos tecnológicos más sofisticados y potentes que pueden usarse en los procesos de enseñanza –aprendizaje. El uso de tecnologías web para la formación es conocido como e-learning. Se apoya en un sistema software denominado plataforma educativa que proporciona un espacio de trabajo compartido entre profesores y estudiantes donde desarrollar las actividades formativas. Por ejemplo: en la universidad de salamanca contamos con una plataforma de estas características llamada studium. La evolución del e-learning hacia los dispositivos móviles, se conoce como mobile-learning o m-learning y se está convirtiendo en la nueva tendencia de la formación on-line debido a los grandes avances experimentados en las tecnologías móviles
En la sociedad actual, las nuevas tecnologías se han introducido en los procesos educativos. Cada vez hay dispositivos tecnológicos más sofisticados y potentes que pueden usarse en los procesos de enseñanza –aprendizaje. El uso de tecnologías web para la formación es conocido como e-learning. Se apoya en un sistema software denominado plataforma educativa que proporciona un espacio de trabajo compartido entre profesores y estudiantes donde desarrollar las actividades formativas. Por ejemplo: en la universidad de salamanca contamos con una plataforma de estas características llamada studium. La evolución del e-learning hacia los dispositivos móviles, se conoce como mobile-learning o m-learning y se está convirtiendo en la nueva tendencia de la formación on-line debido a los grandes avances experimentados en las tecnologías móviles
Centrándonos en el proyecto, podemos destacar que ClayMobile es un sistema software basado en un problema real dentro del ámbito de la empresa ClayFormación. Trata de integrar los dispositivos móviles de última generación con una de la plataformas de formación llamada: Moodle. La elección de esta plataforma se fundamenta en que es una plataforma de software libre y una de las más extendidas y conocida del mercado. La finalidad de ClayMobile es permitir a un determinado usuario interactuar con los diversos contenidos formativos
En la diapositiva se plantea un sistema e-learning típico. A la derecha tenemos las plataformas formativas que proporcionan los contenidos A la izquierda tenemos el navegador web (cliente ligero) con el que accedemos a esas plataformas formativas Todo ello mediante el uso de internet. En este proyecto se pretende evolucionar este sistema hacia el m-learning. FASE 2 Acceder a las plat. For. Mediante el navegador de los móviles presenta varios inconvenientes: - Necesitamos una conexion permanente (Esto es costoso económicamente y podemos tener problemas de cobertura en ciertos momentos.) - Como el navegador no es capaz de determinar el tipo de dispositivo móvil no hace una adaptación de contenidos a las características del dispositivo en cuestion por lo que no sacamos rendimiento a las prestaciones del movil. FASE 3 Se crea un sistema de adaptación basado en un conjunto de servicios web que pretende adaptar los contenidos formativos a las características técnicas de los dispositivos. Se crean unas aplicacíones clientes específicas para cada tipo de dispositivo movil, que mediante un sistema de sincronización y caches permite el trabajo en modo offline. Cliente ligero: no adapta contenidos a las características de los dispositivos
Los objetivos planteados para este proyecto han sido los siguientes: Navegación por la jerarquía de contenidos de Moodle (plataformas, categorías, cursos y recursos). Visualización de recursos de cuatro tipos preestablecidos: texto, imágenes, audio y video. Descarga de recursos al dispositivo móvil. Fundamentalmente para poder trabajar con el recurso en modo offline. La adaptación de recursos pretende conseguir dos cosas: Adaptar el recurso a las características técnicas del dispositivo móvil en cuestión (dimensiones de pantalla y colores) Conversión del recurso a formatos compatibles con el dispositivo móvil. Por ejemplo los archivos html a texto plano. Permitir dos modos de trabajo: online y offline con ayuda de la caché. Interfaz amigable al usuario
Los objetivos planteados para este proyecto han sido los siguientes: Navegación por la jerarquía de contenidos de Moodle (plataformas, categorías, cursos y recursos). Visualización de recursos de cuatro tipos preestablecidos: texto, imágenes, audio y video. Descarga de recursos al dispositivo móvil. Fundamentalmente para poder trabajar con el recurso en modo offline. La adaptación de recursos pretende conseguir dos cosas: Adaptar el recurso a las características técnicas del dispositivo móvil en cuestión (dimensiones de pantalla y colores) Conversión del recurso a formatos compatibles con el dispositivo móvil. Por ejemplo los archivos html a texto plano. Permitir dos modos de trabajo: online y offline con ayuda de la caché. Interfaz amigable al usuario
Los objetivos planteados para este proyecto han sido los siguientes: Navegación por la jerarquía de contenidos de Moodle (plataformas, categorías, cursos y recursos). Visualización de recursos de cuatro tipos preestablecidos: texto, imágenes, audio y video. Descarga de recursos al dispositivo móvil. Fundamentalmente para poder trabajar con el recurso en modo offline. La adaptación de recursos pretende conseguir dos cosas: Adaptar el recurso a las características técnicas del dispositivo móvil en cuestión (dimensiones de pantalla y colores) Conversión del recurso a formatos compatibles con el dispositivo móvil. Por ejemplo los archivos html a texto plano. Permitir dos modos de trabajo: online y offline con ayuda de la caché. Interfaz amigable al usuario
Los objetivos planteados para este proyecto han sido los siguientes: Navegación por la jerarquía de contenidos de Moodle (plataformas, categorías, cursos y recursos). Visualización de recursos de cuatro tipos preestablecidos: texto, imágenes, audio y video. Descarga de recursos al dispositivo móvil. Fundamentalmente para poder trabajar con el recurso en modo offline. La adaptación de recursos pretende conseguir dos cosas: Adaptar el recurso a las características técnicas del dispositivo móvil en cuestión (dimensiones de pantalla y colores) Conversión del recurso a formatos compatibles con el dispositivo móvil. Por ejemplo los archivos html a texto plano. Permitir dos modos de trabajo: online y offline con ayuda de la caché. Interfaz amigable al usuario
Los objetivos planteados para este proyecto han sido los siguientes: Navegación por la jerarquía de contenidos de Moodle (plataformas, categorías, cursos y recursos). Visualización de recursos de cuatro tipos preestablecidos: texto, imágenes, audio y video. Descarga de recursos al dispositivo móvil. Fundamentalmente para poder trabajar con el recurso en modo offline. La adaptación de recursos pretende conseguir dos cosas: Adaptar el recurso a las características técnicas del dispositivo móvil en cuestión (dimensiones de pantalla y colores) Conversión del recurso a formatos compatibles con el dispositivo móvil. Por ejemplo los archivos html a texto plano. Permitir dos modos de trabajo: online y offline con ayuda de la caché. Interfaz amigable al usuario
Los objetivos planteados para este proyecto han sido los siguientes: Navegación por la jerarquía de contenidos de Moodle (plataformas, categorías, cursos y recursos). Visualización de recursos de cuatro tipos preestablecidos: texto, imágenes, audio y video. Descarga de recursos al dispositivo móvil. Fundamentalmente para poder trabajar con el recurso en modo offline. La adaptación de recursos pretende conseguir dos cosas: Adaptar el recurso a las características técnicas del dispositivo móvil en cuestión (dimensiones de pantalla y colores) Conversión del recurso a formatos compatibles con el dispositivo móvil. Por ejemplo los archivos html a texto plano. Permitir dos modos de trabajo: online y offline con ayuda de la caché. Interfaz amigable al usuario
En esta diapositiva podemos ver una visión general del sistema soportada por una arquitectura orientada a servicios. En primer lugar ClayMobile cuenta con el sistema de adaptación ( derecha ). Este componente se basa en un conjunto de servicios web que ofrecen los contenidos formativos de las diferentes plataformas MOODLE. Por otro lado, los dispositivos móviles cuentan con unos clientes específicos ( izquierda ) para la comunicación con el sistema de adaptación. A continuación pasaremos a describir con más detenimiento los diferentes elementos de CM.
El sistema de adaptación que es un conjunto de servicios web desplegados en un Servidor de Aplicaciones permite: Autenticación de usuarios Recuperación de la estructura de contenidos y de los recursos formativos de las diferentes plataformas Administración de las plataformas formativas
Las aplicaciones clientes son unos programas que se instalan en el dispositivo móvil y presentan los contenidos a los Usuarios Cada cliente dispone de una interfaz exclusiva Se ha tratado de cubrir la mayor parte de los dispositivos móviles de última generación del mercado por lo que se han elegido : IPHONE ANDROID Compatibles con J2ME
Las técnicas y herramientas utilizadas en este proyecto se pueden observar en la tabla de la diapositiva. Cabe destacar entre todas las técnicas la utilización de dos lenguajes de programación diferentes como son Objetive -C y Java. Por otra parte en las herramientas se han utilizado tres entornos de desarrollo totalmente diferentes como son : netbeans, eclipse y Xcode con interface Builder. Se ha utilizado el Proceso Unificado como metodología base y la metodología de Duran y Bernardez para la elicitación de requisitos
Como aspectos relevantes al desarrollo voy a mencionar: * El ciclo de vida *La arquitectura del sistema desde el punto de vista del análisis y del diseño. * Y por ultimo se presentarán los diferentes modos de trabajo.
Se ha utilizado el PU como metodología base y se ha agilizado con el fin de adaptarse a la embergadura de este proyecto y en particular para la obtención rápida de versiones operativas y evaluables. Esto se refleja en la figura que tenemos en pantalla en la cual podemos ver los 3 incrementos que han marcado hitos fundamentales en el desarrollo del proyecto. Destacar también el uso de la metodología de Durán y Bernárdez para la Elicitación de Requisitos Software, así como el modelo de casos de uso para su representación gráfica.
Para desarrollar este proyecto se ha tenido que hacer un estudio detallado de -Por una parte las tecnologías móviles actuales. -Por otra parte ha sido preciso estudiar a fondo la plataforma Moodle en varios aspectos: Gestión de contenidos formativos a varios niveles Modelo físico de datos Estructura y jerarquía de contenidos Localización física de recursos
La utilizacion de la arquitectura SOA como nucleo de CM ha sido un acierto ya que nos ha garantizado: Interoperabilidad (móvil-moodle) Flexibilidad (interfaz de usuario adaptable) Escalabilidad (fácil crecimiento) Desacoplamiento ( Clientes y servidores con evolución independiente)
La arquitectura de sistema responde a patrón de 3 capas: En primer lugar encontramos la capa de recursos con las plataformas moodle donde se encuentran los contenidos formativos. En segundo lugar los clientes específicos para cada dispositivo móvil. En medio , se encuentra el sistema de adaptación que, como su nombre indica, adapta los contenidos formativos a las características técnicas de los móviles.
En esta figura podemos ver la arquitectura diseñada para los clientes y basada en un patrón de capas de Jacobson. Se asemeja a un modelo vista controlador con una vista y un controlador particular para cada tipo de dispositivo móvil. Sin embargo se destaca la ausencia de la capa correspondiente al modelo ya que ésta se encuentra desplegada en el servidor de aplicaciones a través de los servicios web.
Precisamente, lo que vemos en esta figura, es el modelo con las tres subcapas típicas de este tipo de arquitecturas. * En primer lugar la interfaz del modelo se consigue a través de los dos servicios web que ofrece CM y que responden a un patrón fachada. * A continuación la lógica de la aplicación con las implementaciones de ambos servicios. * Y por último la subcapa de acceso a los datos persistentes en las plataformas moodle a través del API JDBC de acceso a bases de datos
Este es el diagrama de despliegue completo del sistema Como es muy denso simplemente voy a destacar dos aspectos: -En primer lugar la comunicación entre los clientes y el sistema de adaptación a través de SOAP(protocolo que viaja encapsulado en peticiones HTTP) -Por último incidir en la estructura interna del nodo servidor donde cabe mencionar el uso de una serie de bibliotecas externas para la adaptación de contenidos
-En primer lugar la comunicación entre los clientes y el sistema de adaptación a través de SOAP(protocolo que viaja encapsulado en peticiones HTTP)
-Por último incidir en la estructura interna del nodo servidor donde se observa el uso de un conjunto de bibliotecas externas para la adaptación de contenidos
Como conclusiones del proyecto podemos decir que: Proyecto de transferencia de empresa en el cual se combina la innovación con las tecnologías del mercado Procesos críticos debido a la aparición de las nuevas tecnologías y herramientas Amplia cobertura de dispositivos móviles de última generación Trabajo con un gran número de herramientas, tecnologías y sistemas operativos Se basa en arquitectura SOA Si se necesita se puede personalizar el Sistema de Adaptación
Sistema m-learning para la educación y las plataformas formativas Desarrollado en el entorno de una empresa real dedicada a la formación online En fase de pre-explotación Campaña de marketing: Presentacion a clientes Exposición en congresos
Las líneas de trabajo futuras que se plantean son: -incrementar la seguridad en la transferencia y en el acceso al sistema por ejemplo mediante la encriptación o mediante la utilización de protocolos seguros (https). -Compatibilidad con otras plataformas del ámbito del e-learning. No restringirse solamente a moodle puesto que hay otras plataformas formativas con características similares (p.e. Claroline). Compatibilidad con más tipos de contenidos formativos proporcionados por la plataforma de formación como pueden ser los foros, lecciones, cuestionarios etc. Internacionalización de los clientes. Compatibilidad con otros tipos de recursos no contemplados en el proyecto por ejemplo archivos .doc.
ClayMobile ha sido presentado en dos congresos : En primer lugar en Interacción 2009 X Congreso Internacional de Interacción Persona-Ordenador Y en segundo lugar a las IX Jornadas de Promotores de Formación Continua y III Jornadas E -Learning en la Administración Pública
Agradecer a mis tutores y a mi familia por toda la ayuda prestada. Con esto concluyo mi exposición y quedo a disponibilidad del tribunal.