Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Una publicación de la Sociedad de la Educación del IEEE Uma publicação da Sociedade de Educação do IEEE A publication of the IEEE Education Society AGO. 2009 VOL. 4 #ÚMERO/#UMBER 3 (ISS# 1932-8540) (Continúa en la Contraportada...) Revista Iberoamericana de Tecnologías del/da Aprendizaje/Aprendizagem (Latin-American Learning Technologies Journal) Editorial (en español) …...….………………………………............. Martín Llamas y Manuel Castro Editorial (en português)…….…………………................................. Martín Llamas y Manuel Castro i ii ARTÍCULOS SELECCIO#ADOS /ARTIGOS SELECIO#ADOS SIIE2008 Editores Invitados: J. Ángel Velázquez Iturbide y Francisco José García Peñalvo Presentación…………………………………..……………..……………............................................ ………………...……………………...J. Ángel Velázquez Iturbide y Francisco José García Peñalvo 171 Procesamiento de Documentos XML Dirigido por Lenguajes en Entornos de E-Learning................... …............... Antonio Sarasa-Cabezuelo, José-Luis Sierra-Rodríguez, y Alfredo Fernández-Valmayor 175 DidaktosOnLine: uma ferramenta para a construção social do conhecimento ……………………….. ………………..……………............................................ Francislê .eri de Souza e António Moreira 184 Diseño de videojuegos colaborativos y educativos centrado en la Jugabilidad...................................... .........................................................................….....atalia Padilla Zea, José Luís González Sánchez, Francisco L. Gutiérrez, Marcelino J. Cabrera, Patricia Paderewski 191 Generador Sc@ut: Sistema de Creación de Comunicadores Personalizados para la Integración…….. .………………………...............................................Álvaro Fernández, José Luís González Sánchez, Luz Mª Roldán, Mª José Rodríguez-Fórtiz, Mª Visitación Hurtado-Torres, .uria Medina-Medina 199 Formação de Licenciados em Computação no Brasil - Desenvolvimento e Utilização do ROBOKIT.. …………...…………… Marcia Elena Jochims Kniphoff da Cruz, Werner Haetinger, Fabiano Horn 206 Asistentes Interactivos para el Aprendizaje de Algoritmos Voraces …………..................................... ........................ J. Ángel Velázquez Iturbide, Carlos A. Lázaro Carrascosa, e Isidoro Hernán Losada 213 IEEE-RITA (http://webs.uvigo.es/cesei/RITA) DOI (Digital Object Identifier) Pendiente CO�SEJO/CO�SELHO EDITORIAL Presidente (Editor Jefe): Martín Llamas Nistal, Universidad de Vigo, España Vicepresidente (Coeditor): Manuel Castro Gil, UNED, España Miembros: Melany M. Ciampi, COPEC, Brasil Javier Quezada Andrade, ITESM, México Carlos Vaz do Carvalho, INESP, Portugal Edmundo Tovar, UPM, España Secretaría: Pedro Pimenta, Universidade do Minho, Portugal Francisco Mur, UNED, España COMITÉ CIE�TÍFICO Alfredo Fernández Valmayor, Universidad Complutense de Madrid, España Antonio J. López Martín, Universidad Estatal de Nuevo Méjico, USA Antonio J. Méndez, Universidad de Coimbra, Portugal António Vieira de Castro, ISEP, Oporto, Portugal Arturo Molina, ITESM, México Baltasar Fernández, Universidad Complutense de Madrid, España Carlos Delgado, Universidad Carlos III de Madrid, España Carlos M. Tobar Toledo, PUC-Campinas, Brasil Claudio da Rocha Brito, COPEC, Brasil Daniel Burgos, Universidad Abierta de Holanda, Holanda Fernando Pescador, UPM, España Francisco Arcega, Universidad de Zaragoza, España Francisco Azcondo, Universidad de Cantabria, España Francisco Jurado, Universidad de Jaen, España Gustavo Rossi, Universidad Nacional de la Plata, Argentina Héctor Morelos, ITESM, México Hugo E. Hernández Figueroa, Universidad de Campinas, Brasil Ignacio Aedo, Universidad Carlos III de Madrid, España Inmaculada Plaza, Universidad de Zaragoza, España Jaime Muñoz Arteaga, Universidad Autónoma de Aguascalientes, México Jaime Sánchez, Universidad de Chile, Chile Javier Pulido, ITESM, México J. Ángel Velázquez Iturbide, Universidad Rey Juan Carlos, Madrid, España José Bravo, Universidad de Castilla La Mancha, España José Carpio, UNED, España José Palazzo M. De Oliveira, UFGRS, Brasil José Valdeni de Lima, UFGRS, Brasil Juan Quemada, UPM, España Juan Carlos Burguillo Rial, Universidad de Vigo, España J. Fernando Naveda Villanueva, Universidad de Minnesota, USA Juan M. Santos Gago, Universidad de Vigo, España Luca Botturi, Universidad de Lugano, Suiza Luis Anido, Universidad de Vigo, España Luis Jaime Neri Vitela, ITESM, México Manuel Caeiro Rodríguez, Universidad de Vigo, España Manuel Fernández Iglesias, Universidad de Vigo, España Manuel Lama Penín, Universidad de Santiago de Compostela, España Manuel Ortega, Universidad de Castilla La Mancha, España M. Felisa Verdejo, UNED, España Maria José Patrício Marcelino, Universidad de Coimbra, Portugal Mateo Aboy, Instituto de Tecnología de Oregón, USA Miguel Angel Sicilia Urbán, Universidad de Alcalá, España Miguel Rodríguez Artacho, UNED, España Óscar Martínez Bonastre, Universidad Miguel Hernández de Elche, España Paloma Díaz, Universidad Carlos III de Madrid, España Paulo Días, Universidade do Minho, Portugal Rocael Hernández, Universidad Galileo, Guatema Rosa M. Vicari, UFGRS, Brasil Regina Motz, Universidad de La República, Uruguay Samuel Cruz-Lara, Université Nancy 2, Francia Víctor H. Casanova, Universidad de Brasilia, Brasil Vitor Duarte Teodoro, Universidade Nova de Lisboa, Portugal Vladimir Zakharov, Universidade Estatal Técnica MADI, Moscú, Rusia Xabiel García pañeda, Universidad de Oviedo, España Yannis Dimitriadis, Universidad de Valladolid, España Editorial Martín Llamas, Senior member, IEEE, y Manuel Castro, Fellow, IEEE Como ya comentamos en el anterior número de Febrero de 2009, hemos cambiado la frecuencia de aparición de nuestra revista IEEE-RITA de la inicial semestral a la definitiva trimestral, reservando en principio los números de Febrero y Agosto para números especiales, y Mayo y Noviembre para números normales. ¡Y cómo no!: aunque esta sea la regla general, puede haber excepciones, y así en el pasado número de Mayo de 2009, tuvimos la primera al tener la selección de los mejores artículos del ICALT2008 en lengua española y portuguesa. En el presente número vamos a presentar una selección de los mejores artículos de los congresos SIIE2008 y CITA2009. El alcance de cada congreso así como los artículos seleccionados están descritos en las respectivas presentaciones hechas por los editores invitados: José Ángel Velázquez Iturbide y Francisco José García Peñalvo para la selección del SIIE2008, y Xabiel García Pañeda y Álvaro Rendón Gallón para la selección de CITA2009. Así mismo queremos comunicar que hemos empezado los trámites para la inclusión de IEEE-RITA en el IEEE Xplorer, la obtención del DOI (Digital Object Identifier) y que, una vez conseguidos, empezaremos los trámites para la inclusión de IEEE-RITA en el JCR (Journal Citation Report). Creemos que con la inclusión en este prestigioso Índice, culminaríamos la tarea de conseguir que IEEE-RITA sea la herramienta de difusión de la investigación y experiencias dentro del ámbito de la Sociedad de la Educación en Iberoamérica que nos planteamos al principio. A partir de ahí sólo resta seguir animando a la comunidad científica a hacer uso de ella, para que realmente sea el vehículo de difusión científico que todos queremos que sea. Martín Llamas Nistal es Ingeniero de Telecomunicación (1986) y Doctor Ingeniero de Telecomunicación (1994), ambos títulos por la Universidad Politécnica de Madrid. Desde 1987 es profesor en la ETSI de Telecomunicación de Vigo (de la que fue subdirector en el período 1994-1997); actualmente es profesor titular en el Departamentode Ingeniería Telemática de esa misma Universidad. Ha dirigido varios proyectos de investigación en el área de Telemática y es autor o co-autor de más de 200 publicaciones en revistas, capítulos de libros y congresos nacionales e internacionales. Desde Diciembre de 1998 a Septiembre de 2003 fue Director del Área de Tecnologías de la Información y las Comunicaciones de la Universidad de Vigo. Miembro de ATI, de ACM, Senior Member del IEEE y miembro del Comité de Administración de la Sociedad de Educación del IEEE. Desde Abril de 2008 es Chairman del Capítulo Español de la Sociedad de Educación del IEEE. Manuel Castro Gil es Doctor Ingeniero Industrial y Catedrático de Universidad. Ha sido Vicerrector de Nuevas Tecnologías de la UNED, así como Subdirector de Ordenación Académica y de Investigación en la Escuela de Ingenieros Industriales de la UNED, y Director del Centro de Servicios Informáticos de la UNED, siendo actualmente Director de Departamento. Ha participado en numerosos proyectos de investigación como investigador, coordinador y director y ha publicado artículos técnicos en revistas y congresos, tanto nacionales e internacionales. Ha publicado igualmente diversos libros y material multimedia dentro de sus líneas de investigación y docencia, tanto en temas de innovación educativa, docencia e investigación. Es Fellow del IEEE así como miembro del Comité de Administración de la Sociedad de Educación del IEEE y Fundador y Pasado-Presidente del Capítulo Español de la Sociedad de Educación del IEEE. IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 i ISSN 1932-8540 © IEEE Editorial Martín Llamas, Senior member, IEEE, e Manuel Castro, Fellow, IEEE (Traduzido por Carlos Vaz de Carvalho) Como já comentamos no número anterior de Fevereiro de 2009, alteramos a frequência da nossa revista IEEE-RITA passando de um modelo semestral ao definitivo trimestral, reservando em princípio os números de Fevereiro e Agosto para números especiais e Maio e Novembro para números normais. No entanto, embora esta seja a regra geral, pode haver excepções, e assim no número de Maio de 2009, tivemos a primeira ao ter a selecção dos melhores artigos do ICALT2008 em língua espanhola e portuguesa. Neste número vamos apresentar uma selecção dos melhores artigos dos congressos SIIE2008 e CITA2009. O alcance de cada congresso assim como os artigos seleccionados estão descritos nas respectivas apresentações feitas pelos editores convidados: José Ángel Velázquez Iturbide e Francisco José García Peñalvo para a selecção do SIIE2008 e Xabiel García Pañeda e Álvaro Rendón Gallón para a selecção de CITA2009. Queremos ainda comunicar que iniciamos os trámites para a inclusão de IEEE-RITA no IEEE Xplorer, a obtenção do DOI (Digital Object Identifier). Uma vez conseguidos, iniciaremos os trámites para a inclusão de IEEE-RITA no JCR (Journal Citation Report). Cremos que com a inclusão neste prestigioso Índice, culminaríamos a tarefa de conseguir que IEEE-RITA seja a ferramenta de difusão da investigação e de experiências no âmbito da Sociedade da Educação em Iberoamerica a que nos propusemos no início. A partir daí só resta seguir animando a comunidade científica a fazer uso dela, para que realmente seja o veículo de difusão científico que todos queremos que seja. Martín Llamas Nistal é Engenheiro de Telecomunicações (1986) e Doutor Engenheiro de Telecomunicações (1994), pela Universidad Politécnica de Madrid. Desde 1987 é professor na ETSI de Telecomunicación de Vigo (da que foi subdirector no período 1994-1997); actualmente é professor titular no Departamento de Engenharia Telemática dessa mesma Universidade. Dirigiu vários projectos de investigação na área da Telemática e é autor ou co-autor de mais de 200 publicações em revistas, capítulos de livros e congressos nacionais e internacionais. Desde Dezembro de 1998 a Setembro de 2003 foi Director da Área de Tecnologias da Informação e Comunicação da Universidad de Vigo. Membro de ATI, de ACM, Senior Member do IEEE e membro do Comité de Administração da Sociedade de Educação do IEEE. Desde Abril de 2008 é Chairman do Capítulo Espanhol da Sociedade de Educação do IEEE. Manuel Castro Gil é Doutor Engenheiro Industrial e Catedrático de Universidade. Foi Vice-reitor de Novas Tecnologias da UNED, assim como Subdirector de Ordenação Académica e de Investigação na Escuela de Ingenieros Industriales da UNED, e Director do Centro de Serviços Informáticos da UNED, sendo actualmente Director de Departamento. Participou em numerosos projectos de investigação como investigador, coordenador e director e publicou em revistas e congressos, tanto nacionais como internacionais. Publicou igualmente diversos livros e material multimédia dentro das suas linhas de investigação e docência. É Fellow do IEEE e membro do Comité de Administração da Sociedade de Educação do IEEE. IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 ii ISSN 1932-8540 © IEEE Title— Computing in Education and Computing Education Abstract— This invited editorial is an introduction to the special issue of selected papers of SIIE’08, the X International Symposium on Computers in Education, held in Salamanca, Spain, in October 2008. The articles selected deal with a number of issues on Computers and Education. This editorial consists of two parts. First, it gives an overview of the history of the SIIE symposium. Second, it introduces the six articles, classified into two groups: Computers in Education, and Education in Computing. Index Terms— Educational technology, computers & education. I. INTRODUCCIÓN STE número especial contiene una selección de seis comunicaciones presentadas en SIIE’08, el X Simposio Internacional de Informática Educativa (http://siie08.usal.es/). Las comunicaciones seleccionadas tienen un perfil conforme con IEEE-RITA, orientado a la educación en ingeniería o al uso de la ingeniería para la educación, en este caso con el papel destacado de una ingeniería concreta, la Informática. SIIE es un foro internacional para la presentación y debate de los últimos avances en el uso de las Tecnologías de la Información y las Comunicaciones en la educación. También pretende ser un punto de encuentro destacado entre investigadores, técnicos, representantes institucionales o empresariales y profesores que desean compartir sus puntos de vista, su conocimiento y su experiencia. El Simposio goza de una larga tradición y reconocido prestigio en Iberoamérica, y es actualmente una obligada referencia en el área de la Informática Educativa. La primera edición del SIIE se celebró en 1999 en Aveiro, Portugal. Desde entonces, se celebra alternativamente en España y Portugal. Las ediciones celebradas en España fueron J. Ángel Velázquez Iturbide pertenece al Departamento de Lenguajes y Sistemas Informáticos I, Universidad Rey Juan Carlos, C/ Tulipán s/n, Móstoles 28933, Madrid, España (autor de contacto, Tel.: +34 91 664 74 54; Fax: +34 91 488 85 30; e-mail: angel.velazquez@urjc.es). Francisco José García Peñalvo pertenece al Departamento de Informática y Automática, Universidad de Salamanca, Facultad de Ciencias, Plaza de los Caídos s/n, 37008 Salamanca, España (e-mail: fgarcia@usal.es). DOI (Digital Object Identifier) Pendiente. organizadas por la Asociación para el Desarrollo de la Informática Educativa, ADIE, http://www.adie.es/) y una universidad local. Desde esta última edición, SIIE incorpora como organizador al Capítulo Español de la Sociedad de la Educación del IEEE (http://www.ieec.uned.es/ES/). A. X Simposio Internacional de Informática Educativa, SIIE’08 SIIE’08 (http://siie08.usal.es/) se celebró en Salamanca, España, los días 1-3 de Octubre de 2008. El organizador local fue la Universidad de Salamanca. En esta edición se recibieron 165 propuestas, que se sometieron a un proceso de revisión pordos miembros del Comité de Programa (a veces, tres o cuatro) o por revisores adicionales propuestos por aquéllos. Se aceptó un total de 69 envíos como comunicaciones y 20 como pósters [1]. Por tanto, ha quedado garantizado un alto nivel de calidad en las propuestas aceptadas, similar al de otros congresos prestigiosos. La tasa de aceptación fue del 42% para las comunicaciones, y del 54% si también contamos los pósters. Las contribuciones aceptadas cubrieron una gran variedad de temas, repartidas en 21 sesiones de comunicaciones y 2 sesiones de pósters. Los autores de las contribuciones aceptadas han procedido de 12 países: España, Portugal, Brasil, Colombia, Chile, Méjico, Alemania, Argentina, Costa Rica, Cuba, Italia, Uruguay y Venezuela. Estamos especialmente satisfechos de destacar la consolidación de la investigación en Informática Educativa en varios países iberoamericanos, con más de una contribución en el programa del Simposio. Como en las ediciones anteriores del Simposio, se organizaron sesiones plenarias con conferenciantes invitados de renombre internacional. Queremos agradecer a los profesores Claudio Dondi (de Scienter y Presidente de EFQUEL) y a Gorka Palacio (de la Universidad del País Vasco, España) por haber aceptado nuestra invitación para compartir su conocimiento y experiencia en las áreas en las que son conocidos expertos. La tarea de difusión de las novedades presentadas no acabó con el cierre del Simposio. Se han realizado varias selecciones de las mejores comunicaciones para ser publicadas en números monográficos de revistas. Aquí presentamos una selección de seis comunicaciones que comparten un interés en la educación en ingeniería o en el uso de la ingeniería para la educación. La Informática Educativa y Educación en Informática J. Ángel Velázquez Iturbide, Member, IEEE, y Francisco José García Peñalvo Editores Invitados E IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 171 ISSN 1932-8540 © IEEE selección se hizo a partir de las puntuaciones obtenidas en el proceso de revisión y de su adecuación a la temática de la revista IEEE-RITA. II. LOS ARTÍCULOS Presentamos en esta sección los seis artículos seleccionados, agrupados en dos categorías complementarias de la Informática Educativa y educación de la (Ingeniería) Informática. La catalogación de un artículo en una de estas categorías depende del énfasis dado en el propio artículo. Los de la categoría primera inciden en la tecnología, que puede aplicarse a cualquier disciplina, mientras que los segundos usan tecnología informática, pero para la formación específica en Ingeniería Informática. A. Informática Educativa El término Informática Educativa es muy amplio, ya que cubre cualquier técnica hardware o software aplicada a la educación. No es, por tanto, de extrañar que el espectro de tecnologías presentadas sea muy dispar. Sarasa Cabezuelo, Sierra Rodríguez y Fernández-Valmayor son los autores de “Procesamiento de documentos XML dirigido por lenguajes en entornos de e-learning”. Su artículo describe un entorno de procesamiento de XML, llamado XLOP y basado en gramáticas de atributos. Su objetivo es sistematizar el procesamiento de documentos XML en entornos de e-learning. Los autores describen el lenguaje de especificación y el flujo de trabajo de XLOP. Dada una especificación de un lenguaje, XLOP genera un procesador de XML en Java con dos capas diferenciadas: sintáctica y de lógica específica de la aplicación. En el artículo también se muestra su aplicación a dos casos concretos. El artículo “DidaktosOnLine: uma ferramenta para a construção social do conhecimento” tiene como autores a Néri de Souza y Moreira. El trabajo se enmarca en DidaktosOnLine, que es un sistema hipermedia con funciones propios de la Web 2.0 y diseñado según la llamada “teoría de flexibilidad cognitiva” para el aprendizaje de materias complejas. En el artículo se presenta una evaluación de su uso con estudiantes reales. Se describen las características de la evaluación y se presentan los resultados, centrados principalmente en las dificultades encontradas por los estudiantes. El artículo de Padilla Zea y otros autores “Diseño de videojuegos colaborativos y educativos centrados en la usabilidad” presenta pautas de diseño de videojuegos educativos y colaborativos. En el artículo se presenta el concepto de jugabilidad, los atributos que la caracterizan y las facetas o puntos de vista desde los que puede estudiarse. También incluye una guía que ayuda al diseñador a alcanzar varios componentes del aprendizaje colaborativo mediante videojuegos. Las aportaciones anteriores se ilustran mediante extractos del videojuego infantil “Leoncio y sus amigos”, que tiene como objetivo el aprendizaje de las vocales. Fernández y otros autores presentan el artículo “Generador Sc@ut: sistema de generación de comunicadores personalizados para la integración”. El trabajo se centra en la Plataforma Sc@out, un sistema cuyo objetivo es ayudar a niños con problemas de comunicación en el centro escolar. La plataforma consta de un generador y de comunicadores. Un generador es un sistema de creación de comunicadores. Un comunicador es un sistema de ayuda a la comunicación, que puede implementarse en varios dispositivos. El artículo describe los distintos elementos del generador y el modelo hipermedia resultante, definido como una jerarquía de varios niveles de naturaleza distinta. Por último, los autores resumen la experiencia de uso de Sc@ut. B. Educación en la Informática La Informática Educativa puede aplicarse a cualquier disciplina y por tanto también a la propia Ingeniería Informática. Los dos artículos incluidos se centran en la enseñanza de robótica y de algoritmos. Los autores de “Formação de licenciados em computação no Brasil – desenvolvimento e utilização do ROBOKIT” son Jochims Kniphoff da Cruz, Haetinger y Horn. En el marco de la enseñanza universitaria de Ingeniería Informática, describen el proyecto ROBOKIT, concebido para que sus estudiantes puedan realizar prácticas en colegios de familiarización con la Informática. El artículo presenta el proceso de desarrollo de ROBOKIT, lo describe desde un punto de vista técnico y expone varias experiencias de uso. El artículo de Velázquez Iturbide, Lázaro Carrascosa y Hernán Losada “Asistentes interactivos para el aprendizaje de algoritmos voraces” presenta varios ayudantes interactivos para que los estudiantes de Ingeniería Informática experimenten durante el aprendizaje de la técnica de algoritmos voraces. El artículo comienza identificando los objetivos educativos de los ayudantes educativos para después describirlos. Se dedica especial atención a los aspectos de análisis, evaluación y visualización de resultados de los algoritmos, así como a su uso para experimentación interactiva. También se presentan los resultados de sesiones de evaluación en los que se ha medido su usabilidad y eficacia educativa. En concreto, los resultados de las evaluaciones de usabilidad han sido muy útiles para mejorar los ayudantes y conseguir herramientas robustas y usables de software. AGRADECIMIENTOS Queremos agradecer al editor de la revista, Martín Llamas Nistal, la oportunidad de difundir una parte destacada de las contribuciones de SIIE’08 entre la comunidad ingenieril iberoamericana. Este trabajo se ha financiado en parte con los proyectos TIN2008-02670-E/TSI y TIN2008-04103/TSI del Ministerio de Ciencia e Innovación de España. REFERENCIAS [1] J. Á. Velázquez-Iturbide, F. J. García-Peñalvo, y A. B. Gil-González (eds.), X Simposio Internacional de Informática Educativa. Salamanca, España: Ediciones Universidad de Salamanca, 2008. 172 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 ISSN 1932-8540 © IEEE J. Ángel Velázquez Iturbide es Licenciado en Informática (1985) y Doctor en Informática (1990) por la Universidad Politécnica de Madrid, España. Ha sido profesor desde1985 en la Facultad de Informática de la Universidad Politécnica de Madrid. En 1997 se incorporó a la Universidad Rey Juan Carlos, donde actualmente es Catedrático de Universidad y director del Laboratorio de Tecnologías de la Información en la Educación (LITE). Sus áreas de investigación son innovación docente y software educativo para la enseñanza de la programación, visualización del software, visualización de la información, e interacción persona-ordenador. El Dr. Velázquez es miembro de IEEE Computer Society, ACM y ACM SIGCSE. También es secretario de la Asociación para el Desarrollo de la Informática Educativa (ADIE) y vocal de la Junta Directiva de la Asociación Interacción Persona-Ordenador (AIPO). Francisco José García Peñalvo es Licenciado en Informática (1994) por la Universidad de Valladolid y Doctor en Informática (2000) por la Universidad de Salamanca, España, universidad en la que actualmente es Profesor Titular y Vicerrector de Innovación Tecnológica. Es director del GRupo de investigación en InterAcción y eLearning (GRIAL), donde confluyen líneas de investigación interdisciplinares en las áreas del eLearning, la Interacción Persona-Ordenador y la Ingeniería del Software. Es miembro de la Asociación para el Desarrollo de la Informática Educativa (ADIE) y de la Asociación Interacción Persona- Ordenador (AIPO). VELÁZQUEZ ITÚRBIDE Y GARCÍA PEÑALVO: INFORMÁTICA EDUCATIVA Y EDUCACIÓN EN ... 173 ISSN 1932-8540 © IEEE Title— Language-Oriented Processing of XML Documents in e-Learning Environments Abstract— This paper proposes the use of attribute grammars in order to systematize the processing of XML documents in e-Learning environments. For this purpose, it presents XLOP (XML Language-Oriented Processing), an XML processing environment based on this technique. It also illustrates how XLOP is used in two different e-Learning contexts: language- driven production of educational applications, and processing of metadata documents for reusable learning objects. Index Terms— XML processing, Socratic Tutorial, Learning Objects, Metadata, Attribute Grammar I. INTRODUCTION ML es el formato de representación e intercambio básico utilizado en la práctica totalidad de los escenarios de e-Learning. Como ejemplo representativo de la importancia que cobra XML en el dominio de e-Learning puede examinarse cualquiera de los actuales esfuerzos estandarizadores, donde, aparte de proponerse modelos de información para representar aspectos relevantes de los sistemas e-Learning (e.g., evaluaciones, diseños educativos, o perfiles de estudiante), también se proponen vinculaciones de dichos modelos con vocabularios XML específicos [5]. Por lo tanto, la implantación práctica de cualquier solución e-Learning implicará, desde el punto de vista tecnológico, una fuerte componente de procesamiento de documentación XML. De esta forma, el disponer de mecanismos que faciliten el desarrollo de dicha componente de procesamiento se convierte en un factor clave de dicha implantación. XLOP (XML Language-Oriented Processing) es un entorno que utiliza gramáticas de atributos para describir cómo procesar documentos XML marcados con un determinado vocabulario. Las gramáticas de atributos son un formalismo declarativo ampliamente utilizado en la descripción de la sintaxis, las restricciones contextuales (semántica estática), y A.Sarasa es miembro del Departamento de Sistemas Informáticos y Computación de la Universidad Complutense de Madrid. Email: asarasa@fdi.ucm.es. J.L.Sierra y A.Fernández-Valmayor son miembros del Departamento de Ingeniería del Software e Inteligencia Artificial de la Universidad Complutense de Madrid. Email: {jlsierra,Alfredo}@fdi.ucm.es DOI (Digital Object Identifier) Pendiente la traducción de los lenguajes informáticos [8][9]. De esta forma, XLOP sigue un paradigma dirigido por lenguajes en el desarrollo de los programas de procesamiento de documentos XML [3]. De acuerdo con este paradigma, dichos programas se entienden como procesadores de lenguaje, y el proceso de desarrollo en sí se entiende como el proceso de construcción y mantenimiento de dichos procesadores. De hecho, utilizando XLOP es posible generar automáticamente tales procesadores a partir de especificaciones de alto nivel expresadas como gramáticas de atributos. XLOP se ha diseñado para ser integrado con Java. Efectivamente, las funciones semánticas que se utilizan en las gramáticas de atributos XLOP se implementan como métodos en Java. De esta forma, XLOP ofrece una flexibilidad comparable a la de los marcos de procesamiento genéricos para XML (e.g., SAX, DOM, StAX, etc.) [3], y, al mismo tiempo, un nivel de usabilidad comparable al de enfoques específicos (e.g., los ofrecidos por lenguajes de transformación como XSLT) [3]. De hecho, XLOP permite estructurar las aplicaciones de proceso de XML en dos capas perfectamente diferenciadas: - Una capa de lógica específica de la aplicación, que incluye la maquinaria necesaria para soportar la funcionalidad de dicha aplicación (e.g., un marco de aplicación para la representación interna de un tutor inteligente, o un conjunto de clases para el procesamiento de metadatos). - Una capa lingüística de procesamiento XML dirigido por la sintaxis. Esta capa se especifica como una gramática de atributos, especificación que se traduce automáticamente a una implementación ejecutable mediante un generador XLOP. La conexión entre ambas capas se realiza mediante una clase semántica, que implementa en Java las funciones semánticas utilizadas en la gramática de atributos XLOP, y que media entre las dos capas anteriores. De esta forma, el modelo de desarrollo dirigido por lenguajes de XLOP propugna la separación explícita de estas dos capas, así como facilita el desarrollo y el mantenimiento de la capa lingüística, ya que ésta se especifica a un nivel mucho más alto que el conseguido con una implementación directa en Java o en cualquier otro lenguaje de programación. De hecho, el formalismo de las gramáticas de atributos es también de más Procesamiento de Documentos XML Dirigido por Lenguajes en Entornos de E-Learning Antonio Sarasa-Cabezuelo, José-Luis Sierra-Rodríguez, y Alfredo Fernández-Valmayor X IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 175 ISSN 1932-8540 © IEEE alto nivel que una descripción basada en esquemas de traducción [1], del tipo de los soportados por otros enfoques al procesamiento de XML dirigido por lenguajes (e.g., ANTXR [19], un entorno construido sobre la herramienta ANTLR, y RelaxNGCC [7], una extensión del lenguaje de esquema documental RelaxNG utilizada para especificar esquemas de traducción y que permite la generación automática de traductores recursivos descendentes [1]). En este artículo se describe el entorno XLOP, haciendo énfasis en su lenguaje de especificación, así como en su aplicación al procesamiento de XML en entornos de e-Learning. Para ello, en la sección II se comienza describiendo el entorno en sí. En la sección III se ejemplifica el uso del entorno en el desarrollo de un traductor para <e-Tutor>, un sistema para la producción de tutoriales socráticos. En la sección IV se ejemplifica su uso en la comprobación de restricciones sobre documentos de metadatos en Chasqui, un sistema para la creación de repositorios de objetos de aprendizaje en dominios especializados. Por último, en la sección V se resumen las conclusiones obtenidas, así como se esbozan algunas líneas de trabajo futuro. Este trabajo es una versión extendida de [11]. II. EL ENTORNO XLOP A. Gramáticas de Atributos XLOP se basa en el formalismo de las gramáticas de atributos. Este formalismo fue propuesto por Donald E. Knuth a finales de los sesenta como un mecanismo para añadir semántica a los lenguajesincontextuales [8][9]. Una gramática de atributos consta de: - Una gramática incontextual que caracteriza la sintaxis estructural del lenguaje mediante un conjunto de reglas sintácticas o producciones. - Un conjunto de atributos semánticos añadidos a los símbolos de la citada gramática. Estos atributos pueden ser de dos tipos: atributos sintetizados y atributos heredados. Los atributos toman valores en los nodos de los árboles sintácticos impuestos por la gramática incontextual sobre las sentencias. Los valores de los atributos sintetizados representan la semántica de los fragmentos de sentencia que penden de los nodos, mientras que los de los atributos heredados representan información de contexto. Los atributos sintetizados en un nodo se computan a partir de los sintetizados de sus hijos y de los propios atributos heredados del nodo. Por su parte, los atributos heredados se computan a partir de los sintetizados de los hermanos y de los heredados del padre. - Un conjunto de ecuaciones semánticas para cada producción. Estas ecuaciones indican cómo computar los valores de los atributos sintetizados de la cabeza y de los atributos heredados de los símbolos del cuerpo. Para ello aplican funciones semánticas sobre los atributos utilizados en dicho cómputo. El axioma de la gramática también puede tener atributos heredados. Así mismo, los terminales también pueden tener atributos sintetizados, que se denominan atributos léxicos. Los valores de estos atributos se fijarán externamente (e.g., los atributos léxicos se fijarán durante el análisis léxico). Durante la preparación de una gramática de atributos no es necesario especificar explícitamente en qué orden tienen que aplicarse las ecuaciones semánticas para encontrar los valores de los atributos en los árboles sintácticos (es decir, para evaluar dichos atributos). De esta forma, las gramáticas de atributos son mecanismos descriptivos de más alto nivel que los esquemas de traducción soportados por las herramientas típicas de construcción de procesadores de lenguaje (e.g., JavaCC, ANTLR, YACC, o CUP), en los que sí es necesario explicitar el orden de ejecución de las acciones semánticas. Por el contrario, en una gramática de atributos el orden de evaluación se deriva de las dependencias entre los atributos introducidas por las ecuaciones semánticas. El método de evaluación en sí puede ser estático o dinámico. Los métodos estáticos analizan la gramática durante la generación del evaluador para encontrar un orden de evaluación que funciona para cualquier sentencia. Por su parte, los métodos dinámicos deciden el orden de evaluación para cada sentencia particular. En XLOP se adopta un método de evaluación dinámica, ya que los métodos dinámicos aceptan una clase más amplia de gramáticas de atributos que los estáticos, aún a consta de una ligera pérdida de eficiencia. B. El Lenguaje de Especificación de XLOP El lenguaje de especificación de XLOP es un metalenguaje para describir gramáticas de atributos para lenguajes de marcado definidos mediante XML. La Figura 1 muestra la sintaxis de este lenguaje. La gramática incontextual subyacente a una especificación XLOP representa la estructura lógica de un tipo de documentos XML (los detalles de más bajo nivel relativos a la estructura física del documento se ignoran, ya que estos serán tratados por entornos de análisis de XML convencionales [3]). SpecXLOP::= {Regla}+ Regla ::= +oTerminal ‘::=’ { ElementoSintactico }* '{' { Ecuacion }* '}' ElementoSintactico ::= +oTerminal | #pcdata | ElementoXML ElementoXML ::= EtiquetaApertura { ElementoSintactico }* EtiquetaCierre | EtiquetaElmVacio Ecuacion ::= ReferenciaAtributo '=' ExpresionSemantica ExpresionSemantica ::= Funcion '(' (ExpresionSemantica { , ExpresionSemantica }*)? ')' | ReferenciaAtributo ReferenciaAtributo ::= Atributo of ( +oTerminal | #pcdata | EtiquetaApertura) ( '(' +umeroOcurrencia ')' )? Figura 1. Sintaxis del lenguaje de especificación de XLOP. 176 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 ISSN 1932-8540 © IEEE Como puede observarse en la Figura 1, las gramáticas XLOP pueden incluir los siguientes tipos de símbolos terminales: - El símbolo #pcdata . Este símbolo denota un fragmento de contenido textual en el documento procesado. - Etiquetas de apertura (e.g., <Tutorial> ) y de cierre (e.g., </Tutorial> ). Estas etiquetas dependerán del lenguaje particular que se está procesando, y deberán, así mismo, ser convenientemente anidadas. Así mismo, las gramáticas XLOP pueden contener los símbolos no terminales que se consideren necesarios para representar de manera apropiada el resto de la estructura lógica del lenguaje de marcado a procesar. En lo que se refiere a los atributos léxicos, el símbolo #pcdata soporta únicamente un atributo léxico: text . El valor de este atributo será el contenido textual particular representado por el símbolo. Las etiquetas de apertura pueden tener también atributos léxicos, que se denominarán atributos de elemento, y que se corresponderán con los atributos que se especifican explícitamente en los elementos del documento. Por último, los símbolos no terminales pueden tener atributos sintetizados y heredados arbitrarios. En XLOP no es preciso distinguir explícitamente qué atributos son los sintetizados y cuáles los heredados, sino que este hecho se infiere del uso de los mismos en las ecuaciones. Por último, obsérvese que en la referencia a los atributos, que se lleva a cabo utilizando una notación del tipo atributo of refSímbolo, es posible utilizar un número de orden a fin de desambiguar el símbolo concreto al que pertenece el atributo, cuando éste aparezca más de una vez en la producción. Finalmente, es importante notar que el lenguaje XLOP no proporciona mecanismos para definir las funciones semánticas utilizadas en las ecuaciones. Dichas funciones deberán ser definidas externamente, como métodos de la clase semántica. C. El Generador en XLOP XLOP incluye un generador que, tomando como entrada una gramática descrita en el lenguaje de especificación de XLOP, produce una implementación del procesador asociado escrita en CUP [2]. CUP es un sistema de generación de traductores para Java que soporta gramáticas LALR(1), la clase de gramáticas más expresiva para la que es posible generar analizadores sintácticos compactos y eficientes. En la implementación CUP generada, la evaluación de atributos se embebe en el proceso de análisis sintáctico mediante un mecanismo de ejecución retardada, según el cuál la evaluación de las ecuaciones semánticas se hace depender de la disponibilidad de valores para los atributos que intervienen en las expresiones semánticas correspondientes (véase [12] para más detalles del mecanismo). La ejecución de los procesadores generados requiere, además, la clase semántica que implementa las funciones semánticas, los componentes que conforman la lógica específica de la aplicación, y también una serie de clases de conveniencia que configuran el entorno de ejecución XLOP. Entre éstas últimas destaca la implementación de un analizador léxico genérico que transforma el recorrido de la estructura lógica de los documentos (en orden documental) en la secuencia de componentes léxicos esperada por el procesador generado. Este componente conecta con un marco estándar de análisis de documentos XML basado en SAX (un API para el procesamiento al vuelo de documentos XML) [3]. El componente en sí y la estrategia de interconexión con el parser SAX son análogos a los descritos en [10]. La Figura 2 resume la cadena de generación implementada en XLOP. III. PRODUCCIÓN DIRIGIDA POR LENGUAJES DE APLICACIONES EDUCATIVAS: <E-TUTOR> A. Generación de tutoriales con <e-Tutor> En esta sección se ejemplifica el uso de XLOP en el desarrollo de una versión simplificada de <e-Tutor> [13][14][16][17], un sistema para eldesarrollo de tutores socráticos basado en los trabajos seminales de Alfred Bork y su equipo durante los ochenta [4]. Este tipo de sistemas fue muy popular durante las dos últimas décadas del siglo pasado, y, a pesar de las críticas recibidas acerca de su idoneidad pedagógica y de la dificultad de su producción y mantenimiento, aún hoy existe una comunidad muy activa trabajando en estos temas, así como iniciativas tan interesantes como las descritas en [20]. Así mismo, el funcionamiento de este tipo de sistemas está en la base de los mecanismos de adaptación de las últimas versiones de especificaciones e-Learning tan relevantes como QTI [6]. En cualquier caso, el papel jugado por <e-Tutor> no es tanto pedagógico como tecnológico, a fin de permitir experimentar con distintos métodos, técnicas y herramientas de producción y mantenimiento de aplicaciones e-Learning (e.g., desarrollo Generador XLOP Especificación XLOP Implementación en CUP Generador CUP Implementación en Java javac Implementación en JVM Clase semántica y entorno de ejecución XLOP java Procesador Documento XML a Procesar Figura 2. Cadena de generación en XLOP Brasilia Río de Janeiro ¿Cuál es la capital de Brasil? Otra ¡Eso es! Vamos con otra pregunta ¡No! Esa es dónde los carnavales ;) Piensa en el nombre del país … ¡No! La respuesta correcta es Brasilia Prueba con otra… ¡No! Piensa en el nombre del país… (1) (2) (1) (1) (2) Figura 3. Fragmento de un tutorial socrático SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 177 ISSN 1932-8540 © IEEE documental, siguiendo un enfoque precursor de XLOP [17], desarrollo de aplicaciones web educativas dirigido por lenguajes [13][14], o prototipado rápido de lenguajes de modelado educativo [16]). <e-Tutor> interpreta descripciones de tutoriales en los cuáles el estudiante se somete a problemas, para los cuáles construye soluciones a través de un diálogo socrático (maestro – discípulo). El sistema analiza las respuestas del estudiante a las preguntas planteadas, proporciona al mismo una realimentación apropiada, y decide el próximo paso a llevar a cabo en el proceso de aprendizaje. La realimentación dada se puede adaptar a distintos itinerarios de aprendizaje. En el caso más general el proceso de adaptación podría depender de la historia completa de la interacción del estudiante con el sistema, aunque en <e-Tutor> se adopta un mecanismo simple basado en contadores, al estilo de los trabajos de Bork. El sistema asocia contadores a cada posible respuesta de cada pregunta. Cada vez que el estudiante da una respuesta, incrementa el contador asociado. De esta forma, la realimentación y el siguiente paso a dar pueden depender del valor de dichos contadores. La Figura 3 muestra esquemáticamente un ejemplo de este tipo de tutorial. Las cajas con esquinas redondeadas representan puntos de respuesta, donde el alumno debe proporcionar una respuesta a la pregunta realizada. Dichos puntos de respuesta están conectados con potenciales respuestas, que se encierran en una caja compartimentada. Las cajas sombreadas representan las realimentaciones. El flujo de aprendizaje se representa mediante flechas. Las etiquetas numéricas en las flechas que unen compartimentos de respuestas con realimentaciones indican los valores que deben tomar los contadores para que las flechas sean aplicables. <e-Tutor> incluye un lenguaje de marcado basado en XML para describir tutoriales como documentos XML, que, debidamente procesados, permiten ejecutar dichos tutoriales. La DTD de la Figura 4 muestra una versión simplificada de dicho lenguaje XML (la simplificación omite detalles estructurales y presentacionales irrelevantes; véase [17] para una versión más detallada). La Figura 5 muestra una representación XML del fragmento de tutorial de la Figura 3. A continuación se describe brevemente la refactorización de <e-Tutor> utilizando XLOP. B. La Capa de Lógica Específica de la Aplicación La Figura 6 muestra las principales componentes (clases e interfaces) que configuran esta capa, así como sus interrelaciones. Estos componentes constituyen un marco de aplicación para la representación de tutoriales. Dado que en este artículo se está presentando una versión simplificada de <!ELEMENT Tutorial (Start,(Speech|Question|Answer|Feedback)+, End)> <!ELEMENT Start EMPTY> <!ATTLIST Start next IDREF #REQUIRED> <!ELEMENT Speech ( #PCDATA)> <!ATTLIST Speech id ID #IMPLIED next IDREF #REQUIRED> <!ELEMENT Question ( #PCDATA)> <!ATTLIST Question id ID #REQUIRED> <!ELEMENT Answer ( #PCDATA)> <!ATTLIST Answer id ID #REQUIRED forQuestion IDREF #REQUIRED default (yes|no) "yes"> <!ELEMENT Feedback EMPTY> <!ATTLIST Feedback counter NMTOKEN #REQUIRED forAnswer IDREF #REQUIRED speech IDREF #REQUIRED> <!ELEMENT End EMPTY> <!ATTLIST End id ID #REQUIRED> Figura 4. DTD para el lenguaje de <e-Tutor>. <Tutorial> <Start next="..."/> ... <Question id="q1"> ¿Cuál es la capital de Brasil </Question> <Answer id="a11" forQuestion="q1"> Brasilia </Answer> <Answer id="a12" forQuestion="q1"> Río de Janeiro </Answer> <Answer id="a13" forQuestion="q1" default="yes"/> <Feedback counter="1" forAnswer="a11" speech="s1"/> <Feedback counter="1" forAnswer="a12" speech="s2"/> <Feedback counter="2" forAnswer="a12" speech="s4"/> <Feedback counter="1" forAnswer="a13" speech="s5"/> <Feedback counter="2" forAnswer="a13" speech="s4"/> <Speech id="s1" next="..."> ¡Eso es! Vamos con otra pregunta </Speech> <Speech id="s2" next="s3"> ¡No! Esa es dónde los carnavales ;) </Speech> <Speech id="s3" next="q1"> Piensa en el nombre del país... </Speech> <Speech id="s4" next="s5"> ¡No! La respuesta correcta es Brasilia </Speech> <Speech id="s5" next="..."> Prueba con otra... </Speech> <Speech id="s6" next="q1"> ¡No! Piensa en el nombre del país... </Speech> ... <End id="..."/> </Tutorial> Figura 5. Codificación XML del fragmento de tutorial de la Figura 3 TElement <<interface>> Speech Question feedback Answer for * speech End for * Tutorial * start next 0..1 Figura 6. Esbozo de la capa de lógica específica de la aplicación en <e-Tutor> 178 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 ISSN 1932-8540 © IEEE <e-Tutor>, este marco es una versión simplificada del más detallado descrito en [17]. C. La Capa Lingüística La capa lingüística queda definida por la especificación XLOP que se muestra en la Figura 7. Dicha capa lingüística traduce descripciones XML de tutoriales en instanciaciones del marco de aplicación de la Figura 6. La gramática incontextual subyacente representa el mismo lenguaje de marcas expresado por la DTD de la Figura 4. La diferencia es que esta gramática incontextual impone una estructura bien definida sobre los contenidos de los elementos (más concretamente, especifica la secuencia de elementos del tutorial mediante un no terminal TElements , y utiliza recursión a izquierdas en las producciones que definen dicho no terminal, ya que este tipo de recursión es tratada de forma muy eficiente por los analizadores LR subyacentes a la implementación de XLOP). Mientras que dicha estructura no es relevante a nivel de la validación genérica de un documento XML con respecto a su DTD o su esquema, la estructura en sí es fundamental para añadir significado al lenguaje. Por su parte, la traducción se concibe en dos etapas: una etapa de creación de los componentes del tutorial, y otra etapa de enlace de dichos componentes.De esta forma: - La etapa de creación se lleva a cabo asociando un atributo sintetizado unlinkedTutorial con TElements (la secuencia de elementos del tutorial). Este atributo se utiliza para construir un tutorial en el que los elementos aún no están conectados. Cada elemento en sí se sintetiza mediante un atributo element en TElement (categoría sintáctica que representa cada elemento individual). - La etapa de conexión supone propagar el tutorial no conectado a lo largo de la secuencia de elementos. Esto se consigue asociando un atributo heredado finalUnlinkedTutorialh con TElements . Así mismo, esta etapa supone también sintetizar el tutorial final, conectando cada elemento al resto. Esto se consigue asociando un atributo sintetizado tutorial con TElements , así como con Tutorial (éste representará el tutorial finalmente construido). D. La Clase Semántica Por último, es necesario proporcionar la clase Java que implementa las funciones semánticas utilizadas en la especificación XLOP. En el caso de <e-Tutor>, dichas funciones instanciarán clases del marco de aplicación, e invocarán a métodos sobre los objetos resultantes para conectar los mismos. La Figura 8 esboza un fragmento de dicha clase, en el que se detalla la implementación de la función semántica link . Nótese que, aunque desde un punto de vista estrictamente formal las funciones semánticas deberían estar libres de efectos laterales, en esta especificación particular los valores de los atributos de entrada a las funciones destructivas, como link , no volverán a utilizarse, lo que permite modificar destructivamente los valores (objetos Java) a los que se refieren. IV. PROCESAMIENTO DIRIGIDO POR LENGUAJES DE DOCUMENTOS DE METADATOS: CHASQUI A. Restricciones sobre metadatos en Chasqui En esta sección se ilustra el uso de XLOP para soportar un procesamiento no trivial de documentos de metadatos de objetos de aprendizaje en Chasqui. Chasqui es una plataforma Tutorial ::= <Tutorial> <Start/> TElements <End/> </Tutorial> { finalUnlinkedTutorialh of TElements = addStartAnd End(next of <Start>, id of <End>, unlinkedTutorial of TElements) tutorial of Tutorial = tutorial of TElements } TElements ::= TElements TElement { unlinkedTutorial of TElements(0) = addElement(ele ment of TElement, unlinkedTutorial of TElements(1)) finalUnlinkedTutorialh of TElements(1) = finalUnl inkedTutorialh of TElements(0) tutorial of TElements(0) = link(element of TEleme nt,tutorial of TElements(1)) } TElements ::= TElement { unlinkedTutorial of TElements = addElement(elemen t of TElement,newTutorial()) tutorial of TElements(0) = link(element of TEleme nt,finalUnlinkedTutorialh of TElements) } TElement ::= <Speech> #pcdata </Speech> { element of TElement = newSpeech(id of <Speech>,ne xt of <Speech>,text of #pcdata) } TElement ::= <Question> #pcdata </Question> { element of TElement = newQuestion(id of <Question >,next of <Question>,text of #pcdata) } TElement ::= <Answer> #pcdata </Answer> { element of TElement = newAnswer(id of <Answer>,f orQuestion of <Answer>,default of <Answer>, text of #pcdata) } TElement ::= <Feedback/> { element of TElement = newFeedback(counter of <Fe edback>,forAnswer of <Feedback>, speech of <Fee dback>) } Figura 7. Especificación XLOP de la capa lingüística de <e-Tutor>. public class TSemClass { ... public Tutorial link(TElement e,Tutorial t) { String idnext = e.idNext(); if (idnext != null) e.setNext(t.get(idnext)); return t; } ... } Figura 8. Fragmento de la clase semántica para <e-Tutor> que muestra la implementación de la función semántica link . SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 179 ISSN 1932-8540 © IEEE e-Learning que ha evolucionado a partir de varios sistemas web utilizados en la virtualización de dos museos universitarios con fines educativos en la Universidad Complutense (Museo de Historia de la Informática García Santesmases y Museo de Arqueología y Etnología Antonio Ballesteros) [18]. Actualmente es un sistema independiente de dominios concretos y reutilizable en toda experiencia e-Learning que involucre la creación y uso educativo de repositorios de objetos de aprendizaje. Los objetos de aprendizaje en Chasqui tienen asociados documentos XML de metadatos que describen la asignación de valores a ítems de metadatos1 organizados jerárquicamente. Tales ítems no están predeterminados a priori, sino que se crean de manera colaborativa, conforme se añaden nuevos objetos al repositorio, en un enfoque próximo a las tendencias emergentes en etiquetado colaborativo en el contexto de los escenarios Web X.0 (véase [15] para más detalles). A fin de evitar detalles que nos aparten del principal propósito de este trabajo, en la discusión que sigue omitiremos la naturaleza jerárquica de los ítems de metadatos en Chasqui. De esta forma, la DTD que se muestra en la Figura 9 describe (una versión simplificada de) el lenguaje de marcado utilizado en Chasqui para estructurar los documentos de metadatos. De acuerdo con este lenguaje, cada ítem de metadatos posee un nombre (Name) y un valor (Value ). Los documentos en sí son secuencias de estos ítems. La Figura 10 muestra un ejemplo de documento de metadatos. El carácter abierto y evolutivo de los metadatos en Chasqui hace necesario introducir algunos mecanismos de control a fin 1 En Chasqui los ítems de metadatos se denominan atributos. No obstante, en este trabajo evitaremos tal denominación para evitar confusiones. de garantizar la calidad y consistencia de los documentos de metadatos. Para tal fin, los instructores que lideran la construcción del repositorio de objetos de aprendizaje pueden imponer restricciones sobre los documentos asociados con los objetos que se añaden al repositorio. De esta forma, cuando los alumnos añadan nuevos objetos, el sistema podrá chequear dichas restricciones, así como avisar a dichos alumnos de las potenciales violaciones de las mismas. En Chasqui las restricciones que pueden formularse involucran un repertorio completo de asertos básicos, que pueden combinarse utilizando los operadores booleanos habituales (and, or y not). Por motivos de simplicidad, restringiremos nuestra discusión a asertos de tipo Contiene. Un aserto de tipo Contiene obliga a que cada ocurrencia de un ítem de metadatos dado contenga cierta cadena especificada en el aserto. En Chasqui las restricciones también se representan internamente utilizando un lenguaje de marcado basado en XML. La Figura 11 muestra la DTD de dicho lenguaje. La <! ELEMENT Items (Item+)> <! ELEMENT Item (Name,Value)> <! ELEMENT Name ( #PCDATA)> <! ELEMENT Value ( #PCDATA)> Figura 9. Lenguaje de marcado (simplificado) para los documentos de metadatos Chasqui. <Items> <Item> <Name>Descripción </Name> <Value>Informe sobre gramáticas l-atribuidas </Value> </Item> <Item> <Name>Aspecto especificado </Name> <Value>semántica </Value> </Item> <Item> <Name>Formalismo </Name> <Value>gramáticas de atributos </Value> </Item> <Item> <Name>tipo de objeto</ Name> <Value>informe </Value> </Item> </Items> Figura 10. Un documento de metadatos. <!ENTITY % Constraint "(And|Or|Not|Contains)"> <!ELEMENT And (%Constraint;,%Constraint;)> <!ELEMENT Or (%Constraint;,%Constraint;)> <!ELEMENT Not (%Constraint;)> <!ELEMENT Contains (It,Val)> <!ELEMENT It ( #PCDATA)> <!ELEMENT Val ( #PCDATA)> Figura 11. Lenguaje de marcado (simplificado) para las restricciones sobre metadatos. <Or> <Contains> <It>Descripción </It> <Val>gramática </Val> </Contains> <Contains> <It>Formalismo </It> <Val>gramática </Val></Contains> </Or> Figura 12. Un ejemplo de restricción <Check> <Constraint> ... </Constraint> <Items> ... </Items> </Check> Figura 13. Esquema de la entrada al proceso de comprobación de restricciones. AssertionStore +addAssertion(String i, String v) +boolean checkAssertion(String i, String v) +boolean yields(String i, String v) EResul +boolean valueOf() +SIterator newIterator() +int supportSize() SIterator +next() +String item() +String value() produces Figura 14. Lógica específica de la aplicación para la comprobación de restricciones en documentos de metadatos Chasqui. 180 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 ISSN 1932-8540 © IEEE Figura 12, por su parte, muestra un ejemplo de restricción que fuerza a que el término gramática ocurra en todos los valores del ítem Descripción , o en todos los valores del ítem Formalismo . La Figura 13 muestra el tipo de entrada que recibe el servicio Chasqui que chequea las restricciones (un documento XML que agrupa bajo el elemento Check una restricción y un documento de metadatos Chasqui). B. La Capa de Lógica Específica de la Aplicación La Figura 14 esquematiza la lógica específica de la aplicación utilizada en la comprobación de restricciones sobre documentos de metadatos Chasqui. Dicha lógica específica incluye una clase para almacenar la información necesaria sobre los asertos básicos (AssertionStore ), una segunda clase para contener los resultados de evaluación de las restricciones (EResul ), y una tercera clase para iterar sobre tales resultados (SIterator ). C. La Capa Lingüística La Figura 15 muestra la gramática de atributos XLOP que caracteriza el proceso de comprobación de restricciones sobre documentos de metadatos en Chasqui. La gramática incontextual subyacente representa la estructura del documento de tipo Check descrito anteriormente. De nuevo, y por los motivos a los que se ha hecho ya alusión en la sección III, se utiliza recursión a izquierdas para representar la secuencia de ítems en el documento de metadatos. En lo que respecta al procesamiento, éste se concibe en tres etapas diferentes: una primera etapa de recolección en la que se recolectan todos los asertos básicos, una segunda etapa de chequeo en la que se comprueba si dichos asertos básicos se satisfacen o se violan, y una última etapa de evaluación, en la que se comprueba la satisfacción o violación de la restricción en su totalidad. De esta forma: - La etapa de recolección se lleva a cabo sintetizando un atributo basicAssertions que referirá al almacén de asertos (instancia de AssertionStore ) utilizado para almacenar los asertos básicos referidos en la restricción. Este almacén se propaga por las estructuras asociadas al documento de metadatos utilizando un atributo heredado basicAssertionsh . - La etapa de chequeo se lleva a cabo sintetizando un atributo checkedBasicAssertion que hará referencia al almacén de asertos una vez que cada ítem de metadatos haya sido comprobado con respecto a los asertos básicos. El almacén resultante es realimentado de nuevo sobre la estructura de la restricción utilizando un atributo heredado checkedBasicAssertionh . - En la etapa de evaluación se sintetiza un atributo val para la restricción. Este atributo contiene un valor de verdad asociado a la restricción y un conjunto de asertos básicos que justifican dicho valor denominado soporte (esta información se almacena en instancias de EResul ). Para asertos básicos, el valor de verdad se obtiene consultando el almacén de asertos. En condiciones afectadas por el operador +ot se complementa el valor de verdad de la condición y se mantiene el conjunto soporte de la condición. El valor de una condición And depende de los valores de sus argumentos: si ambos valores son CheckDoc ::= <Check><Constraint>C</Constraint> Is</ Check> { basicAssertionsh of Is = basicAssertions of C checkedBasicAssertionsh of C = checkedBasicAsser tions of Is val of CheckDoc = val of C basicAssertions of CheckDoc = checkedBasicAssert ions of Is} C ::= <And> C C </And> { basicAssertions of C(0) = comb(basicAssertions of C(1),basicAssertions of C(2)) checkedBasicAssertionsh of C(1) = checkedBasicA ssertionsh of C(0) checkedBasicAssertionsh of C(2) = checkedBasicA ssertionsh of C(0) val of C(0)= valOfAnd(val of C(1),val of C(2),c heckedBasicAssertionsh of C(0))} C ::= <Or> C C </Or> { basicAssertions of C(0) = comb(basicAssertions of C(1),basicAssertions of C(2)) checkedBasicAssertionsh of C(1) = checkedBasicA ssertionsh of C(0) checkedBasicAssertionsh of C(2) = checkedBasicA ssertionsh of C(0) val of C(0)= valOfOr(val of C(1),val of C(2),ch eckedBasicAssertionsh of C(0))} C ::= <Not> C </Not> { basicAssertions of C(0) = basicAssertions of C (1) checkedBasicAssertionsh of C(1) = checkedBasic Assertionsh of C(0) val of C(0) = valOfNot(val of C(1))} C ::= <Contains> <Attr>#pcdata</Attr> <Val>#pcdata< /Val> </Contains> { basicAssertions of C = newCons(text of #pcdata (0),text of #pcdata(1)) val of C = valOfC(text of #pcdata(0),text of # pcdata(1), checkedBasicAssertionsh of C)} Is ::= <Items> IList</Items> { basicAssertionsh of IList = basicAssertionsh o f Is checkedBasicAssertions of Is = checkedBasicAss ertions of IList } IList ::= IList I { basicAssertionsh of IList(1) = basicAssertions h of IList(0) checkedBasicAssertions of IList(0) = check(che ckedBasicAssertions of IList(1),item of I,val of I) } IList ::= I { checkedBasicAssertions of IList = check(basicA ssertionsh of IList, item of I,val of I) } I ::= <Item> <Name>#pcdata</Name> <Value>#pcdata</V alue> </Item> { item of I = text of #pcdata(0) val of I = text of #pcdata(1) } Figura 15. Especificación XLOP de la capa lingüística para la comprobación de restricciones sobre metadatos en Chasqui. SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 181 ISSN 1932-8540 © IEEE verdad, el valor final es verdad y el soporte es la unión de los soportes de los argumentos, y en caso contrario el valor de verdad es falso y el conjunto soporte es el conjunto más simple que justifica dicho valor. Por último el valor de una condición Or es el dual de una condición And. D. La Clase Semántica La Figura 16 muestra un fragmento de la clase semántica para el procesamiento descrito en esta sección. Obsérvese que la clase maneja internamente estado con el fin de mejorar la eficiencia del procesador finalmente generado. Efectivamente, la clase permite reutilizar el mismo almacén de asertos en todas las operaciones. Esta optimización no compromete, sin embargo, el carácter declarativo de dicha especificación. V. CONCLUSIONES Y TRABAJO FUTURO XLOP proporciona una abstracción dirigida por lenguajes que introduce dos capas bien diferenciadas en la construcción de componentes y/o aplicaciones e-Learning que hacen un uso intensivo de documentación XML: una capa con la lógica específica de la aplicación, y una capa lingüística. La capa lingüística se especifica a alto nivel, como una gramática de atributos, y se conecta con la capa de la lógica específica mediante una clase semántica, que implementa las funciones semánticas utilizadas en la gramática. XLOP facilita el desarrollo y mantenimiento de las capas lingüísticas, ya que éstas se especifican a un grado muy alto de abstracción. Actualmente se están realizando distintas extensiones del lenguaje de especificación de XLOP (e.g., operadores definidos por el usuario, funciones semánticas no estrictas, capacidades de modularización, o tipado estático de las especificaciones). Como trabajo futuro se buscará la integración de XLOP con lenguajes para gramáticas documentales XML. Así mismo se desarrollará un entorno gráfico de depuración. Por último, se aplicará XLOP a experiencias e-Learning adicionales. AGRADECIMIENTOSEl grupo de investigación UCM 921340 y los proyectos TIN2005-08788-C04-01, TIN2007-68125-C02-01, y Santander/UCM PR34/07-15865 han financiado este trabajo. REFERENCIAS [1] Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D. 2007. Compilers: principles, techniques and tools (second edition). Addison-Wesley [2] Appel, A.W. 1997. Modern Compiler Implementation in Java. Cambridge Univ. Press [3] Birbeck, M et al. 2001. Professional XML 2nd Edition. WROX Press, Birminghan,UK [4] Bork, A. 1985. Personal Computers for Education. Harper & Rows [5] Fernández-Manjón, B., Sierra, J.L., Moreno-Ger, P., Martínez-Ortiz, I. Uso de Estándares Aplicados a TIC en Educación. Informe Técnico 16, Centro Nacional de Información y Comunicación Educativa (CNICE), ares.cnice.mec.es/informes/16/ [6] IMS. IMS Question and Test Interoperability 2.1. www.imsglobal.org/question/ [7] Kawaguchi, K. 2002. Flexible Data-Biding with RelaxNGCC. Extreme Markup Languages 2002, 4-9 Agosto, Montreal, Canada [8] Knuth, D. E. 1968. Semantics of Context-free Languages. Math. Syst. Theory 2(2), 127–145. Ver también Math. Syst. Theory 5(1), 95–96 [9] Paaki, J. 1995. Attribute Grammar Paradigms – A High-Level Methodology in Language Implementation. ACM Comp. Surveys, 27(2), 196-255. [10] Sarasa, A., Navarro, I., Sierra, J.L, Fernández-Valmayor, A. 2008. Building a Syntax Directed Processing Environment for XML Documents by Combining SAX and JavaCC. 3rd Int. Workshop on XML Data Management Tools & Techniques. DEXA’08. 1-5 Sept., Turin, Italia [11] Sarasa, A., Sierra, J.L., Fernández-Valmayor, A. 2008. Procesamiento de documentos XML dirigido por lenguajes en entornos de e-Learning. SIIE’08, 1-3 Oct., Salamanca, España. [12] Sarasa, A., Temprado, B., Sierra, J.L., Fernández-Valmayor, A. 2008. XML Language-Oriented Processing with XLOP. 5th Int. Symp. on Web and Mobile Information Services. AINA’09. 26-29 Mayo, Bradford, UK [13] Sierra, J.L., Fernández-Manjón, B., Fernández-Valmayor, A. 2007. Language-Driven Development of Web-Based Learning Applications. Advances in Web Based Learning - ICWL 2007, LNCS 4823, 520-531 [14] Sierra, J.L., Fernández-Manjón, B., Fernández-Valmayor, A. 2008. A Language-Driven Approach for the Design of Interactive Applications. Interacting with Computers 20(1), 112-127 [15] Sierra, J.L., Fernández-Valmayor, A. 2008. Tagging Learning Objects with Evolving Metadata Schema. ICALT’08. 1-5 Julio, Santander, España. [16] Sierra, J.L., Fernández-Valmayor, A., Fernández-Manjón, B. 2007. How to Prototype an Educational Modeling Language. SIIE’07, 14-16 Nov., Porto, Portugal. [17] Sierra, J.L., Fernández-Valmayor, A., Fernández-Manjón, B. 2008. From Documents to Applications Using Markup Languages. IEEE Software 25(2), 68-76 [18] Sierra, J.L., Fernández-Valmayor, A., Guinea, M., Hernánz, H. 2006. From Research Resources to Virtual Objects: Process model and Virtualization Experiences. J. of Ed. Tech. & Society, 9(3), 56-68. [19] Stanchfield, S., ANTXR: Easy XML Parsing based on The ANLR Parser Generator. Java Due.com, Hillcrest Comm. & FGM, Inc. javadude.com/tools/antxr/index.html [20] XTutor web site. 2007. icampus.mit.edu/xtutor. Vis. 21 Abril 2008 Antonio Sarasa-Cabezuelo es Licenciado en Ciencias Matemáticas por la Universidad Complutense de Madrid (España), dónde actualmente ejerce como Profesor Colaborador. Coautor de más de 50 artículos publicados en actas de conferencias y revistas, colabora también con RED.ES y el Ministerio de Industria, Turismo y Comercio de España en diversas iniciativas e-Learning (especificación LOM-ES y proyecto AGREGA). Sus intereses investigadores incluyen la creación y despliegue de objetos educativos estandarizados, y el procesamiento de documentos XML dirigido por lenguajes, campo este último en el que está realizando su Tesis Doctoral. public class CheckingSemanticClass { private AssertionStore astore; public CheckingSemanticClass() { astore = new AssertionStore(); } public AssertionStore newCons(String i, String v) { astore.addAssertion(i,v); return astore; } public AssertionStore comb(AssertionStore a1, AssertionStore a2) { return astore; } ... } Figura 16. Fragmento de la clase semántica para la comprobación de restricciones sobre metadatos en Chasqui. 182 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 ISSN 1932-8540 © IEEE José-Luis Sierra-Rodríguez es Doctor en Informática por la Universidad Complutense de Madrid (España), dónde actualmente ocupa una plaza de Profesor Titular de Universidad. El Dr. Sierra es coautor de más de 70 artículos de investigación publicados en revistas y actas de conferencias internacionales. Sus intereses investigadores incluyen la Ingeniería del Software orientada a lenguajes, los lenguajes de marcado y el desarrollo dirigido por lenguajes de Sistemas e- Learning. Alfredo Fernández-Valmayor es Doctor en Ciencias Físicas por la Universidad Complutense de Madrid (España), y Profesor Titular de Universidad en dicha universidad, dónde también dirige el Campus Virtual de la institución. El Dr. Fernández-Valmayor es coautor de más de 70 artículos científicos publicados en revistas y actas de conferencias internacionales. Sus intereses investigadores se centran en los usos educativos de los lenguajes de marcado y en el desarrollo y autoría de materiales para sistemas de educación basados en web. SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 183 ISSN 1932-8540 © IEEE Title— DidaktosOnLine: a tool for the social construction of knowledge Abstract—This paper proposes a reflection around the instruments and strategies developed within Educational Technology (ET) practical classes, with two groups of students at the University of Aveiro, Portugal. Students were asked to collaboratively develop educational materials based on Cognitive Flexibility Theory (CFT). DidaktosOnLine (DOL), which has Social Web characteristics (http://didaktos.ua.pt) and was developed by University of Aveiro researchers, offers an environment for social construction and interaction, rich in context dependent information, discussion and critical questioning. Results show that students in both groups adhered to DOL, working collaboratively, evidencing some difficulties in diverse domains, reported in this paper. Index Terms — Web 2.0, eLearning, DidaktosOnLine, Cognitive Flexibility Theory (CFT). I. INTRODUÇÃO PIRO e colaboradores propuseram uma teoria de aprendizagem e de ensino que enfatiza a necessidade de trabalhar conhecimentos complexos e pouco-estruturados em contraste a conhecimentos simples e de domínios bem- estruturados. A aprendizagem é encarada como um processo de reconstrução a partir da experiência e do ambiente onde se contextualiza, devendo este proporcionar ao aluno múltiplas interpretações [1, 2]. A Teoria da Flexibilidade Cognitiva (TFC) preocupa-se com a aquisição de nível avançado de conhecimento complexo e pouco-estruturado, como o comprovam vários estudos (por exemplo, [3-5] e sugere que se apresente a complexidade em pequenas unidades, sendo estas analisadas através de múltiplas perspectivas, que vão facultar uma melhor compreensão do assunto em análise. Caracteriza-se pela interacção de vários conceitos que são pertinentes na aplicação a um caso, sendo a combinação desses conceitos inconsistente em casos do mesmo tipo. Este domínio é tratado por Moreira et al. [6, 7] F. Neri de Souza, Departamento de Didáctica e Tecnologia Educativa, CIDTFF, Campus de Santiago, Universidade de Aveiro, 3810-193 Aveiro, Portugal (e-mail fns@ua.pt). A. Moreira, Departamento de Didáctica e Tecnologia Educativa, CIDTFF, Campus de Santiago, Universidade de Aveiro, 3810-193 Aveiro, Portugal (e- mail moreira@ua.pt). DOI (Digital Object Identifier)Pendiente como um domínio holístico-integrativo do conhecimento. Este facto não é uma limitação da teoria, mas uma especificidade que até então nunca tinha sido proposta. Se pretendemos que os alunos usem de modo flexível o conhecimento, ele deve ser ensinado de uma forma flexível. Spiro et al. [8] consideram os sistemas hipertexto e hipermédia adequados e convenientes para implementar a teoria, uma vez que estes sistemas podem proporcionar múltiplas travessias de uma dada paisagem cognitiva e sua integração em múltiplos casos e mini-casos. De forma resumida, os pressupostos de base da TFC assentam nos princípios de que para se aprender num domínio de estruturação holístico-integrativa, isto é, num domínio pouco estruturado de nível avançado, detentor de complexidade, é necessário cruzar esse domínio (ou paisagem conceptual) a partir de pontos de vista diferenciados. Esse domínio, pelas suas características, deve ser representado por casos ilustrativos do mesmo, e estes, por sua vez, decompostos em unidades menores, cognitivamente manejáveis (mini- casos), que tornem salientes as especificidades do domínio. Tal decomposição promoverá o desenvolvimento da flexibilidade cognitiva necessária à sua compreensão, evitando os enviesamentos redutores próprios da rigidez cognitiva, com especial relevo para a utilização de analogias múltiplas capazes de compreender toda a complexidade de um dado fenómeno. Isto é conseguido por recurso a Hipertextos de Flexibilidade Cognitiva que, por fomentarem um ensino- aprendizagem de acesso aleatório, permitem cruzamentos de uma dada paisagem conceptual mediante preceitos de revisitação dos mesmos conceitos a partir de um ponto de vista fundamentado na repetição não replicada do conhecimento. Quer isto dizer que, num dado momento, o mesmo conceito é visitado no âmbito de elementos contextuais diversos dos que o contextualizarão numa outra visita. Embora a TFC possa ser implementada em ambientes multimédia do tipo Web 1.0, mesmo que numa filosofia open source [9], é certamente em contextos Web 2.0 que as características de trabalho colaborativo flexível e distribuído poderão ser melhor aplicadas. Os sites considerados Web 2.0 ou Web Social permitem aos utilizadores fazer muito mais do que apenas aceder a informações em diferentes formatos ou em diferentes sequências; permitem desconstruir e construir socialmente os conteúdos desejados. Os utilizadores podem construir conhecimento de forma interactiva numa plataforma na rede de computadores, podem executar aplicações de software através de um browser vulgar, colocar os próprios dados em rede e exercer controlo sobre estes dados. Os sites Web 2.0 são DidaktosOnLine: uma ferramenta para a construção social do conhecimento Francislê Neri de Souza e António Moreira S IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 184 ISSN 1932-8540 © IEEE considerados por O’Reilly [10] como aqueles que proporcionam um efeito de rede através de uma "arquitectura de participação", que encoraja o envolvimento activo dos seus utentes, em vez de os transformar em utilizadores passivos. O conceito de Web como plataforma de participação e interacção tem muitas das características que necessitamos para promover, em contexto educacional, a aprendizagem activa, colaborativa e rica em casos, mini-casos e travessias conceptuais. De acordo com diversos autores [10, 11] as características da Web 2.0 são as seguintes: participação activa do utilizador, rica em experiência, conteúdo dinâmico, meta dados, padrão Web, escalabilidade, abertura, liberdade e inteligência colectiva por meio de participação do utente. II. OBJECTIVOS E FERRAMENTAS WEB 2.0 DO ESTUDO Um ambiente distribuído é aquele em que os alunos podem desenvolver colaborativamente a desconstrução e a construção do conhecimento, e onde todos podem ter acesso ao trabalho. O factor portabilidade é crítico, pois a aprendizagem colaborativa exige não somente um ambiente distribuído, mas também multi-plataforma. Tal portabilidade é possível com a plataforma DidaktosOnLine (DOL) - http://didaktos.ua.pt [6, 7]. Os objectivos deste trabalho foram introduzir os conceitos subjacentes à TFC e incentivar o desenvolvimento de projectos através da utilização do DOL. Também procurámos compreender quais as principais dificuldades sentidas pelos estudantes nas vertentes teórica, prática e de trabalho de grupo. Considerando que Web 2.0, como reconhece O’Reilly [10], não tem fronteiras rígidas, mas antes, um núcleo gravitacional onde os conceitos de Web Social são caracterizados, o DOL é uma plataforma Web 2.0 pelas razões que passamos a descrever. DIDAKTOS é um acrónimo para “Didactic Instructional Design for the Acquisition of Knowledge and Transfer to Other Situations”, desenvolvido por Moreira e colaboradores [6, 7], para utilização local. O DidaktosOnLine é um sistema de hipertexto de flexibilidade cognitiva inspirado nos pressupostos da Teoria da Flexibilidade Cognitiva e que dele derivou, em formato distribuído. Pode ser usado na desconstrução e construção de conteúdos de qualquer área disciplinar numa perspectiva holístico-integrativa. O DidaktosOnLine é uma open shell que permite aos utilizadores (professores e alunos), mediante a escolha prévia de um número específico de conteúdos (casos), dividi-los em pequenas unidades (mini-casos) que minimizem a sobrecarga cognitiva para o utilizador final (alunos). No entanto, os mini- casos são conceptualmente ricos e detentores de complexidade. Outra funcionalidade do DidaktosOnLine é a possibilidade de inclusão de actividades no decorrer do estudo dos casos e dos mini-casos, tais como a formulação de perguntas ou a elaboração de uma explicação sobre determinado aspecto ou travessia conceptual. Na figura 1, apresentamos o aspecto geral do DidaktosOnLine e exemplos de mini-casos. A seguir apresentamos um Caso de um projecto desenvolvido no Centro Competência Nónio – Século XXI da Fig. 1. Aspecto geral de um caso no DidaktosOnLine. NERI DE SOUZA Y MOREIRA: DIDAKTOSONLINE: FERRAMENTA PARA CONSTRUÇÃO DO ... 185 ISSN 1932-8540 © IEEE Universidade de Aveiro, desenvolvido por Leonel Rocha, para alunos de Ciências do 8º ano de escolaridade (13-14 anos). “Caso: O Dióxido de Carbono - O mau da fita. Descrição do caso: Devido ao Aquecimento Global, o Dióxido de Carbono é apelidado do "mau da fita". Será que é mesmo? O desenvolvimento deste caso é baseado no texto de Tomás de Montemor publicado no Notícias Magazine de 08.Set.2002 com o titulo "O Gás Indeciso" Mini-casos - O papel do Dióxido de Carbono... - Os irmãos Carbono feitos prisioneiros! - O plano de fuga do irmão "Carbono 1" - O "Carbono 2" torrando ao Sol... - Na paisagem queimada ainda restava como prisioneiro o "Carbono 3" - O "Carbono 1" levou um tiro e ...” Na Figura 2 apresentamos o Mini-caso “Os irmãos Carbono feitos prisioneiros!” Para uma descrição mais detalhada do sistema ver [7, 12]. III. DESCRIÇÃO DO ESTUDO Antes do início do semestre lectivo foi discutida com o professor da disciplina de Tecnologia Educativa a implementação de algumas estratégias para a utilização do DOL. A inovação na disciplina teve em conta um trabalho que procurava analisar os desafios de inserir a TFC em duas turmas de formação de professores (inicial e em serviço) do ano anterior [5]. “Results show that the in-service group is more pro-active and committed to discussion of the theory and its application, showing higher levels of interaction between its members. Future implementations of the ET course under the same format will have to pay special attention to CFT jargon and associated concepts, offering strategies that may overcome these comprehension problems, and also the provision of a variety of good commented examples of the application of CFT, rendering it clearer for the students. A set of guidelines and a glossary are also instruments under construction,
Compartir