You are on page 1of 10

Un Repositorio basado en Servicios Web para el Sistema Generador de Ambientes de Aprendizaje AMBAR

Mara Gertrudis Lpez1, Yosly Hernndez1, Cira Beleo1, Doris Pernalete2, Vanessa Miguel3, Nora Montao1
1Escuela

de Computacin, Facultad de Ciencias, Universidad Central de Venezuela, Caracas, Venezuela

lopezgertrudis@gmail.com, yoslyhernandez@ucv.ve, cironela@gmail.com, nora.montano@ciens.ucv.ve


Nacional Experimental Francisco de Miranda, Decanato de Educacin, Departamento de Informtica y Tecnologa Educativa, Complejo Docente Los Perozo, Coro, Estado. Falcn, Venezuela
2Universidad

dorisjpch@hotmail.com
de Medicina Experimental Facultad de Medicina, Universidad Central de Venezuela, Caracas, Venezuela vanessa.miguel@ucv.ve
3Instituto

Resumen. Este trabajo presenta el diseo y la implementacin de la capa de Servicios Web del repositorio del Sistema Generador de AMBientes de Enseanza-ApRendizaje (AMBAR) como implementacin de una Arquitectura Orientada a Servicios (SOA) y tomando en cuenta lo establecido por los estndares sobre servicios web (IMS General Web Services) y sobre Repositorios de Objetos Digitales IMS DRI (IMS Digital Repositories Interoperability). El sistema desarrollado proporciona un espacio para manipular Objetos de Aprendizaje (OA) y elementos asociados a los ambientes de aprendizaje que pueden ser almacenados y recuperados de la base de datos de AMBAR a travs del Sistema Manejador de Base de Datos Orientado a Objetos de software libre Database for objects (db4o). Est basado en una arquitectura MVC (Modelo Vista Controlador) para los Servicios Web y se hace uso del patrn DAO (Data Access Object) para el acceso a los datos. Los objetos son descritos a travs de una metadata asociada, y su representacin y almacenamiento se basa en el estndar SCORM, para asegurar la interoperabilidad con distintos sistemas de administracin de aprendizaje. La definicin de los Servicios Web para el acceso a la base de datos de AMBAR mejora la interoperabilidad entre las diferentes aplicaciones que constituirn el sistema, ya que as se ofrece una alternativa de software independiente de la plataforma, basada en estndares para la integracin de aplicaciones, la automatizacin de procesos de negocio y la publicacin de la informacin de diversas fuentes. Palabras clave: Objetos de aprendizaje, repositorios de objetos de aprendizaje, IMS DRI, Arquitectura Orientada a Servicios, Servicios Web, SCORM.

1 Introduccin
Un repositorio de objetos para el aprendizaje es un sistema software que almacena recursos educativos y sus metadatos (o solamente estos ltimos), y que proporciona algn tipo de interfaz de bsqueda de los mismos, bien para interaccin con humanos o con otros sistemas software [1]. La funcionalidad fundamental de un repositorio es la de bsqueda de objetos de aprendizaje, y existen varias posibilidades para su implementacin, tales como: Interfaces de bsqueda interactivas, para uso de humanos. Interfaces de consulta que puedan ser utilizadas por agentes software, por ejemplo, mediante Servicios Web. Adems de la funcionalidad de bsqueda, otra funcin importante de los repositorios es la de hacer de intermediario con otros repositorios, lo que se denomina federacin de repositorios, lo cual permite que con una sola bsqueda, se busque en muchos repositorios distribuidos, ampliando as las posibilidades de encontrar OA relevantes para l usuario o sistema que hace la bsqueda. Esto ltimo implica crear aplicaciones como un conjunto de componentes distribuidos a travs de una red de dispositivos que trabajan de forma conjunta. Por esta razn y para satisfacer la necesidad existente de estandarizar la comunicacin entre distintas plataformas y lenguajes de programacin surgen los Servicios Web. Estos proporcionan muchos beneficios, ya que mejoran la interoperabilidad entre diferentes aplicaciones, simplifican la conectividad de la lgica de negocio y aportan gran independencia entre la aplicacin que utiliza el Servicio Web y el propio servicio [2]. Para el Sistema Generador de Ambientes de Enseanza-Aprendizaje Constructivistas (AMBAR), hacer uso de los Servicios Web para manipular los recursos disponibles en su repositorio es de gran importancia, por cuanto las diferentes aplicaciones que constituirn y que interactuarn con el sistema podrn hacer uso del repositorio sin preocuparse por los lenguajes de programacin utilizados en el desarrollo de sus aplicaciones, su ubicacin o las plataformas en que fueron implementadas. Por todo lo mencionado se implement la capa de Servicios Web del repositorio de AMBAR, para lo cual se utiliz una metodologa gil y los siguientes patrones: patrn de arquitectura de software que separa los datos, la interfaz de usuario, y la lgica de control en tres componentes Modelo, Vista y Controlador (MVC) para la construccin de la aplicacin que permite el acceso al respositorio y los Servicios Web. Patrn Objeto de Acceso a Datos (DAO), el cual es un componente de software que suministra una interfaz comn entre la aplicacin y uno o ms dispositivos de almacenamiento de datos para el acceso a los datos. El resultado obtenido es una arquitectura orientada a Servicios y basada en estndares, de bajo acoplamiento entre sus capas, es decir, los Servicios Web desarrollados son independientes los unos de los otros, de la aplicacin que los invoca y de los datos que manipulan, lo cual permite independizarlos del Sistema Manejador de Base de datos utilizado, logrando as una mayor escalabilidad al poder hacer uso de diferentes motores de bases de datos.

2 Antecedentes
Actualmente, en la Escuela de Computacin de la Facultad de Ciencias de la Universidad Central de Venezuela se lleva a cabo un proyecto de investigacin y desarrollo llamado Sistema Generador de AMBientes de Enseanza-ApRendizaje Constructivistas basado en Objetos de Aprendizaje (AMBAR). Este sistema tiene como objetivo principal proporcionar una plataforma tecnolgica que permita almacenar, generar, utilizar y reutilizar los Objetos de Aprendizaje (OA) y Patrones de Aprendizaje en distintos ambientes instruccionales [3], [4]. Ahora bien, no es posible pensar en OAs si no se les concibe almacenados en repositorios y etiquetados con su respectiva metadata ya que los objetos aislados no tienen ninguna relevancia ni significado real. Es por esto que surge el repositorio de AMBAR, que es considerado uno de sus componentes fundamentales, porque debe ser capaz de almacenar y gestionar de una manera eficiente tanto los OAs, como los ambientes de aprendizaje a definir y utilizar. En [5] se presenta la primera iteracin del repositorio de AMBAR, la cual dio como resultado la seleccin de Database for Objects (Db4o) como Sistema Manejador de Bases de Datos Orientado a Objetos a utilizar en el repositorio de AMBAR, ya que es eficiente para el procesamiento de las consultas, provee los mecanismos apropiados para el manejo de los objetos, provee interoperabilidad y brinda APIs que permiten que la implementacin sea ms sencilla e intuitiva. A partir de estos resultados se decidi adoptar Db4o como SMBDOO para el desarrollo de la siguiente iteracin del proyecto. En la iteracin realizada en [5], el diseo y la implementacin de la BDOO del repositorio AMBAR cont con cuatro clases principales: Framework, Actividad, Metadata y OA_Fundamental que modelan el siguiente comportamiento: un Framework tiene asociada una o ms actividades, una actividad puede tener asociada a otra actividad u objetos de Aprendizajes fundamentales los cuales a su vez pueden ser de varios tipos: Audio, Flash, Imagen, Aplicaciones Java, Pginas Web, Presentacin PowerPoint, Texto, Video, archivos XML y finalmente, la metadata que contiene informacin relacionada con los objetos y las actividades almacenadas previamente en la BDOO. En este trabajo se desarrolla la capa de Servicios Web de base de datos de AMBAR implementando todas las clases del modelo conceptual de AMBAR y una aplicacin Web como caso de estudio, que permite hacer uso de los Servicios para realizar las pruebas correspondientes.

3 Desarrollo del Repositorio de AMBAR basado en Servicios Web


A continuacin se presentan los elementos ms resaltantes para comprender el trabajo realizado para desarrollar el repositorio de AMBAR basado en una arquitectura orientada a Servicios Web.

3.1 Modelo Conceptual El modelo conceptual del repositorio de AMBAR se presenta en la figura 1 y representa todos los tipos de OAs y de elementos necesarios para manipular los diseos y ambientes de aprendizaje sustentados en AMBAR.

Figura 1. Diagrama de clases detallado del repositorio de AMBAR

Los Ambientes de Aprendizaje estn definidos como objetos dentro del repositorio y estn contextualizados por la implementacin de mtodos instruccionales especficos y pueden incorporar otros OAs y varias clases de enlaces. El Ambiente de Aprendizaje provee el contexto o la estructura para el aprendiz, por lo que tiene asociado las competencias que se pretenden desarrollar y los prerequisitos que los aprendices deben cumplir para participar en el ambiente. Los ambientes tambin se relacionan con sus participantes, que pueden jugar distintos roles en uno o varios Ambientes de Aprendizaje. Un Ambiente de Aprendizaje es equivalente a una Organizacin de Contenido del estndar SCORM [6] y es un mapa que representa el uso planeado del contenido a travs de unidades estructuradas de instruccin o Actividades, (representadas por la clase Actividad). Las actividades incluidas en un Ambiente de Aprendizaje pueden ser de dos tipos: actividades simples y actividades estructuradas. Las actividades estructuradas estn formadas por otras actividades que a su vez pueden ser simples o estructuradas. Las actividades atmicas u actividades hoja, es decir, las actividades que no contienen otras actividades (representadas por la clase Actividad Simple) por lo general van a tener un recurso de aprendizaje asociado (un OA Fundamental o un OA de

Informacin Combinada), que es usado para realizar la actividad. Tambin tienen asociadas distintas clases de servicios, como por ejemplo servicios de interaccin y comunicacin (representados por la clase servicio), los que permiten realizar actividades individuales, colaborativas, presenciales o a distancia. Los OA Fundamentales representan contenido independiente del contexto. Este tipo de objetos puede incluir grficos, videos, definiciones, explicaciones descontextualizadas o lecturas, casos particulares y definicin de problemas, entre otros. Estos OA son equivalentes a los Assets de SCORM que se corresponden con una representacin electrnica de medios, tales como texto, imgenes, sonidos objetos de evaluacin (assessment objects) o cualquier otra pieza de data que puede ser desplegada y presentado al aprendiz. Los distintos tipos de OA Fundamentales que se pueden manipular en el repositorio de AMBAR son: audio, imagen, texto, video, aplicaciones Java, archivos XML, archivos flash, pginas Web y presentaciones Power Point. Se pueden agrupar varios OAs Fundamentales juntos para construir otros y en algunos casos, los OAs Fundamentales pueden ser lanzados como parte de una experiencia de aprendizaje. Un OA Fundamental puede ser descrito con Metadata, al igual que las Actividades y los Ambientes para permitir bsquedas y descubrimientos dentro del repositorio, potenciando as las posibilidades de reuso. Los OAs de Informacin Combinada pudieran existir en un continuo desde un nivel micro hasta un nivel macro desde contenido con un contexto mnimo aadido (por ejemplo, enlaces dentro de un caso de estudio a perspectivas y temas, pudiendo incluir metas de aprendizaje) hasta actividades de aprendizaje ms completas o estrategias instruccionales como tutoriales, micromundos, simulaciones, etc. Estos objetos tambin pudieran poblar los Ambientes de Aprendizaje y artefactos de los aprendices o podran ofrecerse como ayuda o gua. Los OAs de Informacin combinada son equivalentes a los SCOs (Sharable Content Objetcs) del estndar SCORM. Un OA de Informacin combinada es una coleccin de uno o ms OAs Fundamentales, coleccin que representa un recurso de aprendizaje lanzable que utiliza el SCORM RTE para comunicarse con un Learning Management System (LMS). UN OA de Informacin combinada representa el ms bajo nivel de granularidad de un recurso de aprendizaje rastreado y/o mantenido por un LMS usando el SCORM Run-Time Environment Data Model. La nica diferencia entre un OA de Informacin combinada y un OA Fundamental es que el OA de Informacin combinada se comunica con un LMS usando las interfaces de programacin definidas por el estndar SCORM para tal fin. 3.2. Implementacin del modelo conceptual y de los servicios web asociados La implementacin del repositorio de AMBAR se realiz en tres ciclos de desarrollo a travs de los cuales se implementaron los servicios asociados a cada una de las clases del modelo conceptual en su totalidad y se colocaron disponibles a travs de Servicios Web utilizando AXIS, una implementacin OpenSource de SOAP (("Simple Object Access Protocol")) que proporciona un entorno de ejecucin para Servicios Web implementados en Java. Adicionalmente se desarroll una aplicacin para probar los Servicios Web disponibles y para proveer una interfaz de estos servicios al usuario

final. Cada ciclo de desarrollo consisti en la aplicacin de las fases del Proceso Unificado (Inicio, Elaboracin, Construccin, Transicin).pero de una manera gil. A continuacin se detallan cada uno de los ciclos de desarrollo realizados. 3.2.1 Primer ciclo de desarrollo Durante el primer ciclo de desarrollo se definieron los Servicios Web relacionados con los OAs y su metadata asociada en base a lo plasmado en el modelo conceptual de repositorio de AMBAR. En este ciclo se desarrollaron seis Servicios Web, que son: Almacenar OA: consiste en almacenar un OA Fundamental o de Informacin Combinada en la base de datos describindolos a travs de la metadata asociada. Buscar OA: consiste en localizar un OA almacenado en la base de datos de dos maneras: por palabra clave definida en la metadata asociada o bsqueda de todos los OA almacenados en la base de datos. Modificar OA: consiste en modificar la descripcin del OA a travs de la clase metadata asociada al mismo. Eliminar OA: consiste en eliminar un OA de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otros objetos o instancias de las clases del modelo conceptual. Agregar OA Fundamental: consiste en agregar un OA Fundamental a otro OA Fundamental almacenado Crear OA de Info Combinada: consiste en crear un OA de Informacin Combinada (SCO de SCORM), agrupando varios OA Fundamentales en un Package Interchange File (PIF) para luego ser almacenado en la base de datos de AMBAR. 3.2.2 Segundo ciclo de desarrollo Durante el segundo ciclo de desarrollo se definieron los Servicios Web relacionados con las actividades y sus servicios asociados. En este ciclo se desarrollaron nueve Servicios Web, que son: Almacenar Actividad: consiste en almacenar una actividad simple o estructurada en la base de datos describindolas a travs de la metadata asociada, que se integra de la primera iteracin. Buscar Actividad: consiste en localizar una actividad almacenada en la base de datos de dos maneras: por palabra clave definida en la metadata asociada o bsqueda de todas las actividades almacenadas en la base de datos. Modificar Actividad: consiste en modificar la descripcin de la actividad a travs de la clase metadata asociada. Eliminar Actividad: consiste en eliminar una actividad de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otros objetos o instancias de las clases del modelo conceptual.

Agregar Actividad: consiste en realizar todas las asociaciones que tiene la clase actividad (actividad simple o actividad estructurada) con otras clases. Almacenar Servicio: consiste en almacenar un servicio en la base de datos. Buscar Servicio: consiste en localizar un servicio almacenado en la base de datos de dos maneras: por el nombre o bsqueda de todos los servicios almacenados en la base de datos. Modificar Servicio: consiste en modificar los atributos que describen el servicio. Eliminar Servicio: consiste en eliminar un servicio de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otra clase existente.

3.2.3 Tercer ciclo de desarrollo Durante el tercer ciclo de desarrollo se definieron los Servicios Web relacionados con el ambiente de aprendizaje y las clases relacionadas con l como son: Competencia, Prerequisito, Mtodo y Participante, clase que a su vez est relacionada con la clase rol. En este ciclo se desarrollaron veintiocho servicios web, que son: Almacenar Ambiente: consiste en almacenar un ambiente de aprendizaje en la base de datos. Describindolo a travs de la metadata asociada, que se integra de la segunda iteracin. Buscar Ambiente: consiste en localizar un ambiente de aprendizaje almacenado en la base de datos de dos maneras: por palabra clave definida en la metadata asociada o bsqueda de todos los ambientes de aprendizaje almacenados en la base de datos. Modificar Ambiente: consiste en modificar la descripcin del ambiente de aprendizaje a travs de la clase metadata asociada. Eliminar Ambiente: consiste en eliminar un ambiente de aprendizaje de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otra clase existente. Agregar Ambiente: consiste en realizar todas las asociaciones que tiene la clase ambiente de aprendizaje con otras clases. Almacenar Participante: consiste en almacenar un participante en la base de datos. Buscar Participante: consiste en localizar un participante almacenado en la base de datos de dos maneras: por atributos nombre, apellido, usuario, organizacin o bsqueda de todos los participantes almacenados en la base de datos. Modificar Participante: consiste en modificar los atributos de un participante. Eliminar Participante: consiste en eliminar un participante de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otra clase existente.

Almacenar Rol: consiste en almacenar un rol en la base de datos. Buscar Rol: consiste en localizar un rol almacenado en la base de datos bsqueda de todos los roles almacenados en la base de datos. Modificar Rol: consiste en modificar los atributos de un rol. Eliminar Rol: consiste en eliminar un rol de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otra clase existente. Agregar Rol: consiste en realizar todas las asociaciones que tiene la clase rol con otras clases. Almacenar Mtodo: consiste en almacenar un mtodo en la base de datos. Buscar Mtodo: consiste en localizar un mtodo almacenado en la base de datos de dos maneras: por atributo nombre o bsqueda de todos los mtodos almacenados en la base de datos. Modificar Mtodo: consiste en modificar los atributos de un mtodo. Eliminar Mtodo: consiste en eliminar un mtodo de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otra clase existente. Almacenar Competencia: consiste en almacenar una competencia en la base de datos. Buscar Competencia: consiste en localizar una competencia almacenada en la base de datos de dos maneras: por atributo nombre o bsqueda de todos las competencia almacenadas en la base de datos. Modificar Competencia: consiste en modificar los atributos de una competencia. Eliminar Competencia: consiste en eliminar una competencia de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otra clase existente. Agregar Competencia: consiste en realizar todas las asociaciones que tiene la clase competencia con otras clases. Almacenar Prerequisitos: consiste en almacenar los prerequisitos en la base de datos. Buscar Prerequisitos: consiste en localizar los prerequisitos almacenados en la base de datos por bsqueda de todos los prerequisitos almacenados en la base de datos. Modificar Prerequisitos: consiste en modificar los atributos de los prerequisitos. Eliminar Prerequisitos: consiste en eliminar los prerequisitos de la base de datos de AMBAR, eliminando tambin todas las asociaciones que pueda tener con otra clase existente. Agregar Prerequisitos: consiste en realizar todas las asociaciones que tiene la clase prerequisitos con otras clases.

3.3. Tecnologas utilizadas en la implementacin Las tecnologas y herramientas utilizadas para el desarrollo del repositorio basado en Servicios Web de AMBAR fueron las siguientes: Java Server Pages (JSP) Java Servlets Lenguaje de programacin JavaScript Kit de desarrollo Java (J2ee SDK) Servidor Apache Tomcat Axis: Apache Axis es una implementacin OpenSource de SOAP (("Simple Object Access Protocol")) que proporciona un entorno de ejecucin para Servicios Web implementados en Java. Sistema Manejador de Base de Datos Orientada a Objetos Database for objects (db4o): se trata de un framework de persistencia que permite guardar objetos Java o .NET de forma directa y transparente. No utiliza una base de datos relacional para almacenar los objetos, ya que, aqu los objetos son almacenados en la base de datos tal y como ellos son, proporcionando mayor velocidad de acceso y ms rendimiento. StartUML: es una aplicacin para generar diagramas de UML. Plataforma Eclipse: es una plataforma de software de Cdigo abierto independiente de una plataforma para desarrollar lo que el proyecto llama "Aplicaciones de Cliente Enriquecido" Dreamweaver: es un editor WYSIWYG de pginas web.

4 Conclusiones y trabajos futuros


Mediante el desarrollo de este trabajo se logr implementar la capa de servicios de base de datos del Sistema Generador de Ambientes de Enseanza-Aprendizaje AMBAR, lo que permite la adaptacin del repositorio de AMBAR a lo establecido por el estndar IMS DRI [7].con respecto a los repositorios de objetos digitales y por el estndar IMS General Web Services [8], pudiendo as proveer de una manera estandarizada los servicios de acceso al repositorio tanto para aplicaciones propias del Sistema AMBAR como para aplicaciones externas que hagan bsquedas federadas en repositorios de OAs. La utilizacin de Servicios Web para interactuar con el repositorio de AMBAR permitir un desarrollo ms fcil, modular e independiente de todas las aplicaciones que conformarn el sistema AMBAR puesto que para ellas ser transaparente la forma en como se maneja y accede la base de datos del sistema, ya que lo nico que tendrn que hacer es invocar a los Servicios Web disponibles para tal fin. Actualmente se est desarrollando un repositorio de metadata basado en el estndar LOM [9] para AMBAR, sustentado tambin en una arquitectura orientada a servicios. Esto permitir proveer la gama completa de Servicios Web asociados a la manipulacin de metadata basada en los estndares LOM, IMS DRI y el estndar IMS General Web Services.

Agradecimientos
Este trabajo fue financiado por el Consejo de Desarrollo Cientfico y Humanstico (CDCH) de la UCV mediante el proyecto No. PG 03-00-6032-2005 en su segunda etapa.

Referencias
1. Sicilia, M.A.: Estndares en e-learning. En Buenas Prcticas de E-Learning. UDIMA. ANCED. Captulo 16. (2007) Disponible en: http://www.buenaspracticas-elearning.com/indicebuenas-practicas-e-learning.html 2. The ServerSide. Disponible en: http://www.programacion.com/java/tutorial/servic_web 3. Miguel, V., Lpez, M. G., Montao, N.: Ontologa del Dominio del Sistema Generador de Ambientes de Enseanza-Aprendizaje Constructivistas Basados en Objetos de Aprendizaje (AMBAR). III Simposio Pluridisciplinar sobre Objetos de Aprendizaje y Diseos de Aprendizaje apoyados en las tecnologas (OD@06). Oviedo, Espaa. (2006) 4. Lpez M. G., Miguel V., Montao N.: Sistema Generador de AMBientes de EnseanzaApRendizaje Constructivistas basados en Objetos de Aprendizaje (AMBAR): la interdisciplinareidad en los ambientes de aprendizaje en lnea. RED. Revista de Educacin a Distancia. Ao VIII. Nmero 19. (2008). Disponible en:http://www.um.es/ead/red/19/gertrudis.pdf 5. Lopez, M. G., Miguel, V., Montao N.: Prototipo del Repositorio de Objetos de ApRendizaje de un Sistema Generador de AMBientes de Enseanza-Aprendizaje basados en Objetos de Aprendizaje (AMBAR). III Simposio Pluridisciplinar sobre Objetos de Aprendizaje y Diseos de Aprendizaje apoyados en las tecnologas (OD@06). Oviedo, Espaa. (2006) 6. Advanced Distributed Learning. SCORM2004. http://www.adlnet.gov/scorm/index.aspx 7. IMS Global Learning Consortium. Digital Repositories Specification. (2003). Disponible en: http://www.imsglobal.org/digitalrepositories/index.html 8. IMS Global Learning Consortium. General Web Services Specification. (2005). Disponible en: http://www.imsglobal.org/gws/index.html 9. IEEE Learning Technology Standards Commitee: Learning Object Metadata.(2005). IEEE 1484.12.1. Disponible en: http://ltsc.ieee.org/wg12/

You might also like