PATRONES DE DISEテ前 APLICADOS AL DESARROLLO DE ODES Y ENTORNOS EDUCATIVOS BASADOS EN TIC
DIRECCIÓN DE LA SERIE Instituto de Tecnologías Educativas (ITE) Ministerio de Educación
Dirección: Antonio Pérez Sanz y Alfonso Berlanga Reyes Coordinación: María Luisa Gutiérrez de la Concepción, Nieves Gutiérrez de la Concepción y Antonio Galisteo del Valle Corrección y revisión: Antonio Galisteo del Valle y Pamela Fernández Sánchez
AUTORES Susana Montero, Telmo Zarraonadía, Paloma Díaz e Ignacio Aedo
PUBLICACIÓN Dirección: Antonio Pérez Sanz Producción ejecutiva: Antonio Galisteo del Valle, María Luisa Gutiérrez de la Concepción y Nieves Gutiérrez de la Concepción Diseño gráfico: Aurelio Lorenzo Pérez y May Ann Allidem Caluza Edición web: Antonio Estévez Funes
2
Resumen Ejecutivo Para que un sistema de e-learning tenga éxito es preciso afrontar una serie de retos tanto pedagógicos como tecnológicos, que requieren contar con un equipo que incluya expertos de diferentes campos, como psicólogos, pedagogos, ingenieros web, ingenieros de usabilidad, ingenieros de ipo, programadores, etc. Es decir, se necesita un equipo multidisciplinar que, por otro lado, no suele estar al alcance de todos los proyectos. En muchos casos, el proyecto es acometido por una única persona o por un equipo pequeño, encargados de todo el desarrollo web, así como de sus contenidos, por lo que el equipo puede no poseer todas las habilidades y toda la experiencia que sería necesaria para generar un entorno lo más útil posible. El objetivo de este informe es familiarizar al lector con el concepto de patrón de diseño, un mecanismo que ha sido utilizado en diferentes áreas de conocimiento para capturar y comunicar conocimiento experto. Además, se pretende presentar una panorámica de patrones de diseño procedentes de diferentes áreas que pueden ayudar a resolver los problemas relacionados con el diseño y desarrollo de sistemas elearning, los cuales se expondrán en este informe. Por ejemplo, los patrones aquí presentados pueden ayudar al lector a decidir qué tipos de actividades relacionadas con un aprendizaje activo se deben incluir, o cómo organizar un curso, tanto su estructura como su interfaz web para que sea usable. Para una compresión completa de este informe es necesiario que el lector tenga unos conocimientos sobre los patrones de diseño. La primera parte de este informe se ha dedicado a realizar una panorámica de ese dominio, incluyendo conceptos y ejemplos que ayuden al lector a crearse una opinión del potencial y limitaciones en el uso de patrones de diseño. Si por el contrario, el lector ya posee dichos conocimientos, puede dirigirse directamente a la segunda parte de este documento donde se presentan una serie de proyectos que han llevado a cabo diferentes universidades para plasmar su conocimiento y experiencia en el diseño y desarrollo de sistemas e-learning, desde diferentes perspectivas: software, materiales de aprendizaje y pedagogía. Además, se presenta al lector una selección de patrones orientados al desarrollo de ODEs y de entornos educativos basados en web. A continuación, se enumeran las secciones incluidas en este documento, acompañadas de un breve resumen de sus contenidos: 1. Introducción. Esta sección describe una panorámica del ámbito de este informe, señalando la motivación de su desarrollo, a partir de una serie de problemas que puede plantear el desarrollo de un sistema de e-learning y cómo la reutilización de conocimiento y de experiencias pasadas en el desarrollo de otros sistemas a modo de patrones de diseño, podrían ser de gran ayuda. 2. Conceptos Básicos. Esta sección recopila una serie de conceptos sobre los patrones de diseño a partir de la literatura clásica de este dominio, necesarios para que el lector no familiarizado con este mecanismo pueda llegar a entender el verdadero potencial de los mismos, así como sus limitaciones. 3. El proceso de desarrollo en e-learning. En esta sección se describen los problemas relacionados con el desarrollo de una experiencia educativa en un
3
4.
5.
6.
7.
entorno virtual, con el objetivo de poner de manifiesto cómo el conocimiento y la experiencia recogida en modo de patrones de diseño podrían dar soporte a los mismos. Patrones en e-learning. Esta sección es fruto del estudio exhaustivo del estado actual de los patrones de diseño para e-learning, recopilando varias propuestas relevantes que han sido publicadas en diferentes conferencias, así como proyectos de investigación centrados en la creación de repositorios de patrones de e-learning. Una selección de patrones para e-learning. En esta sección se seleccionan y describen una serie de patrones que permiten tener una guía en el diseño de plataformas educativas y ODEs, y se ofrece al lector un ejemplo de cómo la combinación de una serie de estos patrones puede dar como resultado el diseño de un sistema e-learning. Conclusiones. Se recogen una serie de ideas finales que ponen de manifiesto tanto los beneficios como los posibles problemas que puede encontrar el lector en la adopción y aplicación de patrones en el diseño de sistemas e-learning. Bibliografía. Se enumeran de manera alfabética todas aquellas referencias utilizadas para la elaboración de este documento.
Los autores de este informen esperan llegar a transmitir a sus lectores que la utilización de patrones de diseño como medio para registrar y consumir conocimiento y experiencias puede aportar beneficios en el desarrollo y en la mejora de otros sistemas de aprendizaje con la ventaja de no empezar desde cero y más cuando esta área requiere de conocimientos y habilidades de tan diversa índole.
4
Este informe fue encargado por el Instituto Superior de Formación y Recursos en Red para el Profesorado, actualmente Instituto de Tecnologías Educativas del Ministerio de Educación, a los profesores Susana Montero, Telmo Zarraonandía, Paloma Díaz e Ignacio Aedo del grupo de investigación DEI perteneciente al Departamento de Informática de la Universidad Carlos III de Madrid en el año 2007, a raíz de sus investigaciones relacionadas con los patrones de diseño, los sistemas e-learning y el modelado de aplicaciones web. El tema central es el uso de patrones de diseño como mecanismo de reutilización software. El objetivo es descubrir a los lectores de este informe las cualidades de los patrones de diseño para registrar y reutilizar el conocimiento experto aplicado al desarrollo de ODEs y de entornos educativos basados en las TIC. Susana Montero es profesora titular interina en la universidad donde se licencia y doctora en Informática siendo su tesis “Integración de patrones en el proceso de diseño de sistemas hipermedia mediante el uso de ontologías”. Sus áeras de trabajo están relacionadas con la hipermedia, la web, métodos de desarrollo y la representación del conocimiento aplicado al proceso de desarrollo hipermedia. Telmo Zarraonandía es licenciado y doctorado en Informática por la Universidad de Deusto y la Universidad Carlos III de Madrid respectivamente. Desde octubre de 2003 trabaja como profesor ayudante en la Universidad Carlos III de Madrid donde obtuvo su doctorado en 2007 con la tesis titulada “Adaptaciones de unidades de aprendizaje en tiempo de ejecución”. Ha participado en diversos proyectos relacionados con el área de la educación asistida por ordenador, publicado numerosos artículos en revistas internacionales y conferencias y colaborado como co-chair en la International Conference on Advanced Learning Technologies 2008. Sus áreas de trabajo incluyen los sistemas de aprendizaje adaptativos, los entornos virtuales, el desarrollo de videojuegos y las tecnologías de la Web. Paloma Díaz es licenciada y doctora en Informática por la Universidad Politécnica de Madrid. Desde 1992, ha estado trabajando como profesora en la Universidad Carlos III de Madrid, donde en la actualidad es catedrática del Departamento de Informática y responsable del grupo de investigación Sistemas Interactivos (Laboratorio DEI). Ha dirigido diversos proyectos de investigación relacionados con la temática de este informe y es también coautora de varios artículos de investigación en revistas internacionales de prestigio en el área de tele-educación, como son British Journal of Educational Technology, Journal of Educational Technology and Society, SIGCSE Bulletin o IEEE Transactions on Education. Paloma Díaz es vice-chair de IEEE Technical Committee on Learning Technology desde el año 2002 y ha participado como miembro del comité de programa y revisora de múltiples conferencias internacionales. Es también miembro del Capítulo Español para la Sociedad de la Educación de IEEE (Red CESEI). Ignacio Aedo es licenciado y doctor en Informática y, en la actualidad, es catedrático en la Universidad Carlos III de Madrid. Sus áreas de trabajo tienen que ver con los sistemas interactivos en general en temas como con la hipermedia, la web, los libros electrónicos, las metodologías de desarrollo y los sistemas de información, y su aplicación en los ámbitos de la educación/aprendizaje y la gestión de emergencias. En la actualidad, Ignacio Aedo es vice-chair del Comité Técnico de Tecnologías para el Aprendizaje de IEEE.
5
1. INTRODUCCIÓN ....................................................................... 8 2. CONCEPTOS BÁSICOS ......................................................... 12 2.1. ¿QUÉ SON LOS PATRONES? ........................................ 12 2.2. ORIGENES Y FILOSOFÍA ................................................ 14 2.3. FORMATOS DE PATRONES ........................................... 18 2.4. CATÁLOGOS Y LENGUAJES DE PATRONES ............... 20 2.4.1. Catálogos de patrones ................................................ 21 2.4.2. Lenguajes.................................................................... 24 2.5. ¿DÓNDE HAN SIDO UTILIZADOS?: DOMINIOS DE APLICACIÓN ............................................................................. 27 2.5.1. Ingeniería del software ................................................ 27 2.5.2. Diseño web ................................................................. 29 2.5.3. Interacción persona-ordenador (HCI - Human Computer Interaction)............................................................................... 33 2.5.4. Otros modos de uso .................................................... 35 2.6. EL PAPEL DE LOS PATRONES EN EL CICLO DE VIDA DEL DESARROLLO .................................................................. 36 2.7. PROBLEMAS Y LIMITACIONES DE LOS PATRONES ... 40 2.8. RECOMENDACIONES PARA EL USO DE PATRONES.. 41 3. EL PROCESO DE DESARROLLO EN E-LEARNING............. 43 3.1. PROBLEMAS RELACIONADOS CON EL DISEÑO, DESARROLLO Y UTILIZACIÓN DE OBJETOS DIGITALES EDUCATIVOS ............................................................................ 44 3.2. PLATAFORMAS DE EXPLOTACIÓN .............................. 47 4. PATRONES EN E-LEARNING ................................................ 49 4.1. ¿POR QUÉ PATRONES PARA E-LEARNING?............... 50 4.2. PROYECTOS ACTUALES ............................................... 51 4.2.1. PROYECTO E-LEN..................................................... 52 4.2.2. PROYECTO E-DILEMA .............................................. 58 4.2.3. PROYECTO PERSON-CENTERED E-LEARNING..... 65 4.3. OTROS TIPOS DE PATRONES RELACIONADOS.......... 75 4.3.1. Patrones Pedagógicos ................................................ 75 4.3.2. Patrones para web ...................................................... 76 4.3.3. Patrones de Interacción............................................... 83 4.3.4. Patrones de Usabilidad ............................................... 84
6
4.3.5.
Patrones de Seguridad................................................ 85
5. UNA SELECCIÓN DE PATRONES PARA E-LEARNING....... 86 5.1. EJEMPLOS DE PATRONES PARA PLATAFORMAS EDUCATIVAS ............................................................................ 86 5.1.1. Estudiante activo ......................................................... 87 5.1.2. Curso .......................................................................... 90 5.1.3. Fases preliminares ...................................................... 93 5.1.4. Fases de presentación ................................................ 94 5.1.5. Fases de evaluación ................................................... 97 5.2. EJEMPLOS DE PATRONES PARA OBJETOS DIGITALES EDUCATIVOS ............................................................................ 99 5.2.1. Página de inicio........................................................... 99 5.2.2. Diseño de página ...................................................... 102 5.2.3. Mostrando el contenido de la página......................... 103 5.2.4. Patrón Usando Color................................................. 105 5.2.5. Patrón Gestión de cuestionarios on-line .................... 107 5.3. EJEMPLO DE COMBINACIÓN DE PATRONES ............ 109 6. CONCLUSIONES .................................................................. 112 7. BIBLIOGRAFÍA..................................................................... 114
7
1. INTRODUCCIÓN Las Tecnologías de la Información y de la Comunicación (TIC) se hallan a día de hoy presentes en prácticamente todos los ámbitos de la vida cotidiana. En particular, la web o WWW (World Wide Web) gracias a ser un medio de difusión y comunicación abierto, a su flexibilidad y a la sencillez de uso de la tecnología asociada, ha propiciado las condiciones técnicas necesarias para una revolución en la gestión del conocimiento y en el proceso de enseñanza-aprendizaje, es decir, en la formación electrónica o e-learning. Los sistemas de e-learning pueden ser muy versátiles y dar soporte a una formación a medida que trasciende las limitaciones geográficas y temporales de los esquemas tradicionales de enseñanza-aprendizaje. La posibilidad de desarrollar materiales más interactivos y que se adapten al estilo y ritmo de aprendizaje del alumno pero, que al mismo tiempo, ofrezcan espacios para el trabajo en grupo, las discusiones sincrónicas y asíncronas y el contacto con el docente, han revolucionado, en cierta medida, el concepto de educación a distancia. En un curso de e-learning el alumno no tiene por qué sentirse aislado ni depender tan sólo de sí mismo para avanzar en su proceso de aprendizaje. Las capacidades de comunicación a distancia que nos ofrece la web hacen posible el trabajo en grupo sin necesidad de que el grupo esté físicamente reunido y, a la vez, si es necesario se puede recurrir al uso de chats y otros mecanismos de comunicación sincrónica para establecer conversaciones cuando sea necesario y fortalecer las relaciones interpersonales. Asimismo, el seguimiento del estudiante puede ser más sencillo, en la medida en que el profesor puede ser consciente del trabajo que éste está realizando en la plataforma de e-learning. Este tipo de entorno de enseñanza-aprendizaje no se consigue tomando una serie de materiales didácticos y poniéndolos en la web. Para que un sistema de e-learning tenga éxito es preciso afrontar una serie de retos tanto pedagógicos como tecnológicos que hagan que el curso final facilite realmente el proceso de aprendizaje. Existen retos pedagógicos, en tanto en cuanto estos sistemas no deben ser meros contenedores de información digital, sino que ésta debe ser transmitida de acuerdo a unos modelos y patrones pedagógicamente definidos para dar satisfacción a las necesidades específicas de los estudiantes. Existen retos tecnológicos, en tanto en cuanto el proceso de enseñanza-aprendizaje se sustenta, total o parcialmente, en aplicaciones software, principalmente desarrolladas con tecnología web, que gestionan los contenidos digitales y ofrecen una serie de servicios para impartir y poder realizar el seguimiento de los cursos on-line. A la hora de plantear el desarrollo de una experiencia de e-learning surgen, en una primera aproximación, dos aspectos fundamentales a considerar: la disponibilidad de contenidos de calidad con el formato y características requeridas, y la disponibilidad de una plataforma que, además de permitir la distribución de los contenidos entre los participantes de la experiencia educativa, sirva como soporte al desarrollo del propio proceso educativo y ofrezca los necesarios servicios de autenticación, seguridad, comunicación y apoyo al desarrollo de las diferentes actividades de aprendizaje. Con respecto al primer aspecto, un enfoque apropiado es la reutilización de los contenidos u Objetos Digitales Educativos (ODEs), ya que son costosos de producir. El primer paso para favorecer la reutilización de un ODE consistiría en separar el objeto del
8
contexto, para posteriormente adaptar el objeto de forma que satisfaga las necesidades del proceso educativo en construcción, que suele ser realizado por un instructor. Con respecto a la plataforma que da soporte al sistema o Learning Management System (LMS) es necesario examinar las características de la misma y evaluar si los servicios que el LMS ofrece nos permitirán el desarrollo adecuado de las actividades de aprendizaje planificadas. Así, entre otros aspectos, será necesario establecer: § § § §
qué tipo de roles desempeñarán los participantes de la experiencia, qué tipo de interacciones llevarán a cabo, cómo se llevará a cabo la evaluación del alumno, qué información sobre su actividad será necesario almacenar.
Por otro lado, y con independencia del tipo de proceso educativo a implementar, conviene considerar también aspectos como la escalabilidad de la plataforma, la facilidad de integración de la misma con otras herramientas y servicios, los mecanismos que ofrece para la importación/exportación de datos, el modo de gestión del perfil y CV del participante, etc. Dada la diferente naturaleza de las decisiones a tomar es preciso contar con diferentes perfiles como psicólogos expertos en aprendizaje, ingenieros informáticos o administradores de sistemas. En una segunda aproximación, al convertirse la web en la infraestructura básica para desarrollar los procesos de enseñanza-aprendizaje no presenciales, es necesario tener en cuenta otros asuntos durante el diseño de estos sistemas relacionados con la tecnología web, como son el diseño de sistemas web, la interacción entre los usuarios y el sistema, la usabilidad de la aplicación, así como la seguridad de la información contenida. Al igual que en el desarrollo de un determinado material educativo se deben cuidar con especial atención los aspectos didácticos, en el desarrollo de aplicaciones basadas en la tecnología web hay que resolver una serie de problemas de diseño. El experto en diseño web tendrá que organizar los contenidos, con ayuda de pedagogos, decidir qué herramientas de ayuda a la navegación son necesarias para acceder a la información, cómo se presentarán los contenidos en la interfaz de manera que sean comprensibles y atractivos para los alumnos, e incluso cómo deben ser personalizados o adaptados según las necesidades de los diferentes tipos de usuario. Los sistemas de aprendizaje son aplicaciones interactivas, en tanto en cuanto, los objetos de aprendizaje pueden ser fácilmente ajustados, modificados o manipulados de acuerdo con las preferencias del usuario. Un experto en interacción personaordenador (ipo) aportará al diseño del sistema factores como comunicación, consistencia, flexibilidad, realimentación, ayuda, minimización de errores, haciendo así la interacción de los estudiantes con el sistema lo más natural e intuitiva posible. Pero tener en mente estos problemas no es suficiente. Un diseño de la interfaz poco adecuado, o estructuras de menú poco intuitivas que distraigan al estudiante de su objetivo de aprendizaje, perdiendo el tiempo en aprender cómo se usa el sistema en vez de centrarse en aprender un concepto o una habilidad, puede ser el detonante del fracaso del sistema, a pesar de contar con contenidos de alta calidad. La usabilidad es el campo que estudia el desarrollo de sistemas fáciles de usar y de aprender. El experto en usabilidad deberá identificar los problemas y las dificultades de uso del sistema y obtener soluciones y recomendaciones de rediseño que permitirán disponer
9
de un sistema más fácil de usar y más eficiente para alcanzar sus objetivos, aportando así un avance en la madurez de los procesos de desarrollo y de los procesos de enseñanza/aprendizaje. Además, los sistemas e-learning son sistemas multiusuario en los que diferentes grupos de usuarios, como los directores del programa, los autores del curso, los editores, los coordinadores, los instructores, los tutores, los estudiantes y los administradores tienen acceso a diferentes documentos y servicios del sistema, aunque compartan algunos de ellos. Por lo tanto, el control del acceso al sistema es un asunto importante a tener en cuenta. Un experto en seguridad deberá diferenciar los diferentes roles que acceden e interactúan en el sistema, proteger la información contra accesos no autorizados, decidir a qué partes del sistema puede acceder cada tipo de usuario y con qué privilegios, así como la forma en que tiene que ser presentada dicha información. Tras la exposición de estos problemas relacionados con el diseño de los sistemas elearning, nos encontramos que llevar a cabo este tipo de proyectos es una tarea compleja que necesita contar con un equipo que incluya expertos de diferentes campos. Es decir, se necesita un equipo multidisciplinar que, por otro lado, no suele estar al alcance de todos los proyectos. En muchos casos, el proyecto es acometido por una única persona o por un equipo pequeño, encargados de todo el desarrollo web, así como de sus contenidos, por lo que el equipo puede no poseer todas las habilidades y toda la experiencia que sería necesaria para generar un entorno lo más útil posible. También nos encontramos con otra barrera. No se aprende y se enseña igual en un entorno virtual que en un entorno presencial. Por lo tanto, es necesario capacitar a los tutores para el entorno virtual, formarles en los nuevos modelos pedagógicos, en la adaptación a la diversidad y métodos de aprendizaje activo (aprendizaje cooperativo y colaborativo, resolución de problemas, simulaciones, aprendizaje basado en casos, aprendizaje basado en proyectos, etc.). Por ello, el desarrollo y la utilización de los sistemas de e-learning conllevan una serie de problemas complejos que involucran conocimientos y habilidades procedentes de diferentes áreas, cuya justa combinación es esencial para su éxito. Asumiendo las restricciones de cualquier proyecto mínimamente realista, en el que no pueden participar expertos en todas las áreas, un enfoque que puede ayudar en gran medida es la posibilidad de reutilizar el conocimiento experto de esas diversas áreas. Los expertos, sea cual sea su campo de especialización, no suelen crear soluciones completamente nuevas en cada problema que se presenta, sino que se basan en su experiencia para adaptar soluciones que ya han funcionado en la resolución de problemas anteriores. Así pues, suelen reutilizar su conocimiento para aplicarlo en los nuevos problemas. Si esta experiencia o conocimiento pudiese ser registrado o guardado de manera que pudiera ser comunicado de forma efectiva a otras personas, se podría facilitar la reutilización de dicho conocimiento. Para ello se requieren formatos que sean entendibles, de manera que haya tanto un almacenamiento de conocimiento como una transferencia efectiva del mismo.
10
El objetivo de este informe es introducir al lector en el concepto de patrón de diseño, un mecanismo que ha sido utilizado en diferentes áreas de conocimiento para capturar y comunicar conocimiento experto. Además, se pretende presentar una panorámica de patrones de diseño procedentes de diferentes áreas que pueden ayudar a resolver los problemas relacionados con el diseño y desarrollo de sistemas e-learning aquí expuestos. El concepto de patrón de diseño surge en el campo de la arquitectura de la mano del arquitecto Christopher Alexander, como un mecanismo literario para documentar la esencia de una solución a un problema recurrente en el diseño arquitectónico. Dos décadas después, la idea de Alexander fue acogida con rotundo éxito dentro de la ingeniería del software tras la publicación del libro Design Patterns: Elements of Reusable Object-Oriented Software (Gamma et al., 1994). Este libro sirvió para asentar las bases de los patrones de diseño en la comunidad del desarrollo de software orientado a objetos y convertir los patrones de diseño en un tema central de la reutilización software. Muchos otros dominios, tanto relacionados con el software como no, han adoptado este mecanismo para documentar las mejores prácticas y lecciones aprendidas en la resolución de problemas complejos. Que se haya conseguido o no una mayor reutilización en todos los dominios merced a los patrones es un tema que no se puede aseverar de manera categórica, puesto que la capacidad para reutilizar una solución depende en gran medida de los conocimientos y habilidades de diseñadores y/o desarrolladores en el uso de patrones. En este documento recogeremos los conceptos más importantes de este mecanismo de recolección y, potencialmente, reutilización de conocimiento, con el fin de que aquellos lectores menos familiarizados con este tema obtengan una panorámica de qué es un patrón, qué formato tiene, cómo se organizan los patrones de una misma disciplina y cómo se pueden aplicar al desarrollo de software. Además se recogen las experiencias más relevantes de su utilización en dominios como la ingeniería software, el diseño web y la interacción persona-ordenador. En una segunda parte se recogen las experiencias llevadas a cabo en el dominio específico del e-learning. El contexto de e-learning no ha sido ajeno a la utilización de patrones ni a los beneficios de éstos. Los patrones se pueden aplicar de manera casi natural porque los materiales didácticos y las herramientas de aprendizaje pueden mantener una estructura relativamente “estable”, que hace posible “registrar” una solución que se puede aplicar y volver a aplicar varias veces, es decir, que encaja perfectamente dentro de los objetivos de los patrones de diseño. Dentro de los proyectos sobre patrones de e-learning más notables encontramos tres proyectos bastante relevantes que se comentarán en este documento. En primer lugar, el proyecto E-LEN tenía como objetivo desarrollar y difundir conocimiento sobre buenas prácticas para el diseño e implementación de entornos de aprendizaje soportados tecnológicamente. El proyecto E-DILEMA recoge una colección de patrones pedagógicos de alto nivel y patrones de diseño de interfaces que proporcionan soporte a la hora de seleccionar y diseñar actividades de aprendizaje y cursos a través del diseño de páginas individuales. Finalmente, el proyecto PCeL agrupa diferentes experiencias personales de actividades de aprendizaje en forma de patrones sobre tipos de cursos clásicos en términos de prácticas de e-learning, métodos para evaluar la actividad de los participantes, diferentes formas de recuperar información sobre cualquier aspecto del curso o de las actividades de aprendizaje que lo componen, o
11
para fomentar la interacción e interactividad entre participantes, instructores, tutores y/o invitados. También veremos cómo los patrones que se pueden considerar en este área no tienen que ser exclusivamente patrones pedagógicos, sino que se pueden aplicar patrones de otras áreas como son los patrones web, de interacción, de usabilidad y de seguridad puesto que al final se trata de construir un sistema software que dé soporte al proceso de aprendizaje, y para este cometido son muchos los tipos de conocimientos necesarios, como ya hemos comentado anteriormente. Finalmente, cabe mencionar que los patrones siempre se suelen confeccionar de forma colaborativa e informal, a partir de la experiencia personal. Los patrones pueden jugar un rol importante a la hora de ayudar a los técnicos, profesores, diseñadores educativos y expertos en la materia a compartir un lenguaje común y más rico, facilitando la comunicación entre equipos inter-disciplinares y con diferentes perspectivas, así como dotarles de una herramienta para registrar su conocimiento y experiencias creando una fuente común de conocimiento con el objeto de ser reutilizado.
2. CONCEPTOS BÁSICOS En esta sección el lector podrá encontrar una introducción a conceptos esenciales y generales relacionados con los patrones de diseño. La finalidad perseguida es que el lector que no esté familiarizado con los patrones de diseño entienda el objetivo de los mismos, su alcance y estructura, así como las dificultades asociadas a su uso, antes de pasar a analizar su utilización en el contexto específico de los sistemas de elearning (objetos digitales y/o entornos de explotación).
2.1. ¿QUÉ SON LOS PATRONES? Los expertos no siempre crean soluciones novedosas ante nuevos problemas, sino que tratan de utilizar su experiencia para adaptar soluciones que ya han funcionado en la resolución de problemas anteriores, de manera que reutilizan su conocimiento para aplicarlo en los nuevos problemas. Es decir, cuando encuentran buenas soluciones las usan y las vuelven a usar de manera repetida. Esta experiencia o capacidad de reutilizar conocimiento es precisamente lo que los hace ser expertos. Si esta experiencia o conocimiento pudiese ser registrada, podría ser comunicada a otras personas que, a su vez, también podrían reutilizar ese conocimiento. Para ello se requieren formatos que sean entendibles, de manera que haya tanto un almacenamiento de conocimiento como una transferencia efectiva del mismo. En este sentido, los patrones son una forma literaria de documentar las mejores prácticas y lecciones aprendidas en la resolución de un problema complejo dentro de un dominio de diseño concreto, ya sea éste la arquitectura urbanística, el desarrollo de software o el diseño de cursos. Teniendo en cuenta que una de las cualidades principales de los patrones debería ser su capacidad para comunicar soluciones
12
reutilizables a personas sin experiencia en ese dominio de diseño, un factor crítico es cómo realizar dicha descripción de tal manera que el destinatario sea capaz de comprender la motivación, la esencia y la utilidad del patrón. Es decir, que sea capaz de decidir si va a utilizar el patrón o no para resolver el problema al que se enfrenta. Para ello, los patrones de diseño, al igual que los cuentos, van relatando al lector su propia historia, es decir, el contexto en el cual el patrón puede ser aplicado, el problema y los motivos que llevaron a su creación, cómo los elementos que lo forman colaboran para proporcionar una solución reutilizable, y finalmente, a modo de moraleja, describen las consecuencias de aplicar el patrón, permitiendo así al diseñador novato evaluar las alternativas que tiene y los problemas adicionales a los que se puede enfrentar. Esta estructura es lo que se conoce como formato del patrón. Utilizando otra analogía, un patrón es como la pieza del patrón de sastre que se utiliza para confeccionar vestidos y trajes, pues tal pieza, aparte de contener las especificaciones de corte y confección, suele representar una parte de tal producto textil, por ejemplo la manga de una chaqueta, y es la combinación de una serie de patrones la que conforma y define el producto final, en el caso de la chaqueta la unión de un patrón de manga izquierda, derecha, solapa, frente y espalda. Es decir, que los patrones nunca se utilizan de manera aislada sino en combinación con otros patrones, con el fin de resolver problemas complejos. Para ello los patrones tienen que estar organizados de alguna manera que facilite su interconexión. En concreto, podemos encontrar catálogos y lenguajes de patrones, los cuales pueden ser complementarios. §
Un catálogo de patrones es una clasificación de un conjunto de patrones utilizando uno o más criterios, permitiendo que la búsqueda de una solución a un problema concreto sea más sencilla. Siguiendo con la analogía de los patrones de confección textil, sería como organizar los patrones textiles por criterios tales como el tipo de prenda que queremos confeccionar (p.e. blusas, vestidos, faldas, pantalones) o por el tipo de elemento a confeccionar (p.e. perneras, cuerpos, mangas). El uso del catálogo consistiría en determinar primero qué problema queremos resolver (p.e. confeccionar una blusa o la manga de una blusa), ir a esa categoría o intersección de categorías (p.e. blusas de manga larga, manga corta, sin manga, con puño, sin puño) y seleccionar de entre los patrones que se encuentran en dicha categoría, el patrón o patrones que mejor se ajusta a las necesidades específicas de nuestro problema. Por ejemplo, para confeccionar una blusa de manga con puño abotonado probablemente usaremos un patrón para la blusa, otro para la manga con puño y un tercer patrón para el puño abotonado.
§
Un catálogo presenta una colección de soluciones relativamente independientes, mientras que un lenguaje de patrones es una organización más compleja, en la cual subyace también el conocimiento de cómo aplicar un conjunto de patrones y en qué orden hay que hacerlo para que el proceso sea lo más efectivo posible. Esta efectividad resulta obvia si se cuenta con suficiente experiencia, pero es difícil de documentar y transmitir a los no expertos. La colección de patrones que se recopilan en un lenguaje no son completamente independientes, ya que tienen como objetivo común la resolución de un problema complejo (p.e. la confección de una blusa), y por
13
ello están interconectados entre sí. Cada patrón resuelve parte del problema y guía hacia otros problemas que deben ser considerados (p.e. el patrón de la blusa nos llevará a elegir patrones para el cuerpo delantero, el cuerpo trasero, las mangas y el cuello). Así se forma una red donde cada patrón depende de los patrones de menor escala que contiene (p.e. el patrón manga contiene el patrón puño) y de los patrones de mayor escala en los que está contenido (p.e. el patrón manga depende del patrón blusa), ayudando al diseñador a navegar entre la red de patrones para seleccionar aquellos que ayudan a solucionar de manera completa y satisfactoria un determinado problema. Si bien al hablar de confección textil las relaciones pueden parecer obvias, las interrelaciones entre patrones software no son tan obvias para el diseñador, máxime cuando nos encontramos con un dominio de diseño como el e-learning en el que se precisa conocimiento multidisciplinar. Es en este tipo de casos donde los lenguajes pueden demostrar su potencial utilidad, ayudando al diseñador novato a percibir problemas que ni siquiera imaginaba que podían existir, por estar éstos dentro de un ámbito de conocimiento ajeno a su especialidad. Como reflexión final de esta sección, podemos añadir que un patrón no es una solución en sí misma, sino la documentación de la forma en que construyeron soluciones a problemas similares en el pasado, lo cual permite una mejor gestión de la experiencia y transferencia de conocimiento. Un patrón tampoco es un fragmento de código directamente reutilizable, sino que ofrece una descripción más o menos detallada de una posible forma de abordar un determinado problema que tiene que ser evaluada y adaptada por el diseñador de acuerdo con sus necesidades concretas. En resumen, un patrón nos ayuda a diseñar una solución adecuada y a justificar su validez, pero no nos da la solución directamente aplicable.
2.2. ORIGENES Y FILOSOFÍA En los años 70, el arquitecto Christopher Alexander se cuestionó si había una base objetiva para medir la calidad de un diseño arquitectónico, es decir, si existía alguna forma de identificar qué es lo que hace a un diseño ser bueno o malo. Tras observar edificios, ciudades, calles, etc., descubrió que las construcciones de calidad tenían cosas en común que permitían alcanzar lo que él denominó la “cualidad sin nombre” (Quality Without a Name ó QWAN), una característica o algo que no podemos identificar y que determina la calidad del objeto estudiado. Para aclarar esta definición, podemos utilizar un ejemplo tomado también de la obra de Alexander: “Si nos fijamos en las construcciones de una determinada zona rural, observaremos que todas ellas poseen apariencias parejas (tejados de pizarra con gran pendiente, etc.), pese a que los requisitos personales por fuerza han debido ser distintos. De alguna manera la esencia del diseño se ha copiado de una construcción a otra, y a esta esencia se pliegan de forma natural los diversos requisitos. Diríase aquí que existe un patrón que soluciona de forma simple y efectiva los problemas de construcción en tal zona” (Alexander, 1979). En 1977, en el libro A Pattern Language, Alexander presenta junto a otros colegas estas teorías y el uso de la metáfora de patrón, que define de la siguiente manera:
14
“describe un problema que ocurre una y otra vez en nuestro entorno, y que describe la esencia de la solución a ese problema, de tal modo que se puede usar esta solución un millón de veces más, sin utilizarla dos veces de manera igual“ (Alexander et al., 1977, p. x). La metáfora de patrón se puede resumir como un mecanismo que hace posible capturar la esencia de una solución a un problema recurrente en el diseño arquitectónico. Los patrones no son pues ni creados ni inventados, son identificados por un principio invariante que se manifiesta a través de diferentes sitios y culturas. En ese mismo libro, los autores recopilan una colección jerárquica de 253 patrones de diseño arquitectónico con un formato específico propuesto por Alexander, en los que se describe la planificación de ciudades y la construcción de edificios. Su método de capturar el conocimiento fue innovador y reflejaba un conocimiento práctico hasta entonces solo adquirible mediante años de experiencia. El objetivo de estos patrones era hacer accesible ese conocimiento a los profanos en la materia para que pudiesen crear sus propias estructuras, desde la selección del emplazamiento de un edificio hasta la distribución de una habitación, dotándoles para ello del vocabulario necesario (es decir, los patrones) para expresar sus ideas y diseños y así poder comunicarse con los profesionales y hacer las construcciones más “usables” y agradables a sus habitantes, mejorando su confort y calidad de vida. Además, aunque cada patrón sugería una solución a un determinado problema, éstos estaban interconectados formando lo que se conoce como lenguaje de patrones (véase la definición en la sección anterior). De esta manera, los patrones podían ser combinados para acometer el diseño de construcciones complejas y de gran tamaño (por ejemplo, diseñar una ciudad o un barrio), o para diseñar un entorno más pequeño (una habitación o un parque). Basándose en las relaciones existentes entre los patrones que formaban el lenguaje, éste fue organizado en tres diferentes planos: el plano de los patrones aplicables a la planificación de ciudades, el de patrones para la arquitectura y construcción, y el de patrones para la decoración de interiores. Los patrones de Alexander siguen todos la misma estructura: “Por conveniencia y claridad, cada patrón tiene el mismo formato. Primero, hay una foto que muestra un ejemplo arquetípico del patrón. Segundo, después de la foto, cada patrón tiene un párrafo introductor que establece el contexto del patrón al explicar de qué manera éste ayuda a completar ciertos patrones más amplios. Luego hay tres asteriscos para indicar el comienzo del problema y un título en negrita. Este título condensa lo esencial del problema en una o dos frases. Luego del título viene el cuerpo del problema. Esta es la sección más larga. Describe los antecedentes empíricos del patrón, la evidencia de su validez, el rango de las diversas maneras en que el patrón puede manifestarse en un edificio, etc. Luego, también en negrita como el título, viene la solución el núcleo del patrón que describe el campo de las relaciones físicas y sociales que se requieren para resolver el problema planteado, en el contexto definido..." (Alexander et al., 1977, pp. 10, 11). Un ejemplo de patrón es North Face pattern (patrón cara norte) (Alexander et al., 1977, pp. 761-763). En la siguiente figura se puede ver el texto completo de este
15
patrón tal y como aparece en el libro original, en la cual se han señalado cada una de sus partes.
Figura 2.2.a. Descripción del patrón North Face (Alexander et al., 1977). Nombre
Contexto
Problema
Solución
Otros patrones
16
Este patrón se aplica a cualquier edificio que tiene una cara norte. La principal justificación de la existencia del patrón es que el sol a menudo proyecta una larga sombra detrás del edificio, creando una región sombreada no deseada. Una solución es rellenar esa región de sombra con cosas que no requieran luz solar, como por ejemplo un aparcamiento. Así, el patrón relaciona un contexto particular, identifica las razones subyacentes para ese patrón y ofrece una solución. Por lo tanto, cada patrón representa en sí mismo un plan general que puede ser usado en un proceso de diseño para resolver un problema específico. Una vez que la solución ha sido aplicada, se pueden plantear nuevos problemas tales como la forma de planificar un aparcamiento para el coche o un sitio para almacenar la basura, pero estos problemas serán tratados por otros patrones, en nuestro ejemplo Car Connection y Bulk Storage, respectivamente. Cada patrón incluye dibujos que esquematizan el problema planteado y la solución propuesta. En la figura 2.2.b se pueden ver ambos dibujos para el patrón North Face. Como se puede observar, los dibujos son muy intuitivos y no es preciso ser un arquitecto para entenderlos. Figura 2.2.b. Patrón North Face (Alexander et al., 1977).
Problema planteado
Solución propuesta
Alexander intentó demostrar de manera práctica la utilidad de este enfoque del “Lenguaje de Patrones” aplicándolo en diferentes construcciones: en un plano para la Universidad de Oregón, en el diseño de un restaurante en Linz, Austria, y en la construcción de casas en el norte de México. En este último experimento descrito en The Production of Houses (Alexander et al., 1985) propone reemplazar la construcción mecánica de los sistemas de producción por otros más humanos, involucrando a las familias que van a habitar en esas construcciones. Para ello, cada familia ayudó a diseñar y a construir su propia casa, intentando satisfacer sus propias necesidades utilizando para ello el marco definido por el lenguaje de patrones. Las familias estudiaron un lenguaje de patrones, que incluía 21 patrones relacionados con la construcción de casas. Aunque el proyecto completo no se terminó, cinco casa fueron construidas siguiendo este enfoque. Este lenguaje de patrones permitió a las familias construir la casa que ellos necesitaban, siendo al mismo tiempo cada una de ellas una variante de la casa tipo descrita por el lenguaje de patrones. Alexander destacó de esta experiencia cinco aspectos principales: primero, que la gente trabajó a una determinada hora cada día; segundo, cada familia contribuyó con al menos algunas labores físicas; tercero, siempre se completaba algún detalle cada día; cuarto, la gente se ayudaba en las operaciones más arduas; y quinto, había una celebración al final de cada operación. El resultado no fue solamente un entorno de trabajo más agradable sino que la gente también se sintió más segura y consciente de su potencial.
17
El concepto de patrón es tan genérico que dos décadas después fue acogido con un rotundo éxito dentro de la ingeniería del software tras la publicación del libro Design Patterns: Elements of Reusable Object-Oriented Software (Gamma et al., 1994). Este libro sirvió para asentar las bases de los patrones de diseño en la comunidad software y convertir los patrones de diseño en un tema relevante para los desarrolladores, profesionales e investigadores, dando lugar a diferentes conferencias anuales - v.g. la serie PLOP, Pattern Languages Of Programs (PLOP, 2008) - y grupos de estudio en diferentes áreas – (Hillside Group, 2007), (IFIP TC13 HCI Patterns Task Group, 2005) o Security Patterns Community (Security Patterns Comunity, 2008) -. Se puede decir que la contribución de Gamma et al. (1994) a la reutilización del software ya ha hecho historia. Como conclusión de esta sección, hay que resaltar que los patrones de diseño son ante todo una técnica para compartir y capturar conocimiento sobre un determinado ámbito de diseño. En la siguiente sección se comentan qué son los formatos de patrones, es decir la estructura utilizada para registrar ese conocimiento, y los componentes de esa estructura que son utilizados en diferentes dominios.
2.3. FORMATOS DE PATRONES Teniendo en cuenta que una de las cualidades principales de los patrones es la de comunicar soluciones reutilizables a otros diseñadores, un factor crítico es cómo realizar dicha descripción de tal manera que el destinatario sea capaz de comprender la motivación, la esencia y la utilidad del patrón. Los patrones de diseño, al igual que los cuentos, van relatando al lector su propia historia, es decir, el contexto en el cual el patrón puede ser aplicado, el problema y los motivos que llevaron a su existencia, cómo los elementos que lo forman colaboran para proporcionar una solución reutilizable, y, finalmente, a modo de moraleja, describen las consecuencias de aplicar el patrón, permitiendo así evaluar al propio lector las alternativas de diseño a las que se puede enfrentar. Todo ello debería estar redactado en un lenguaje carente de tecnicismos y acompañado de ilustraciones que esquematicen la solución que propone el patrón, convirtiendo así a los patrones en una herramienta de comunicación que permita llevar a cabo un proceso de diseño participativo (Alexander et al., 1985). Desde que Alexander publicó sus primeros patrones de diseño, se han desarrollado diferentes formatos según las necesidades de cada dominio de diseño, pero manteniendo su estructura original. En la literatura podemos encontrar diferentes formatos para describir un patrón según el nivel de detalle con el que se quiera hacer la descripción (Rising, 2003). Así, el formato descrito en (Gamma et al., 1994) y conocido como el formato “GOF” puede considerarse como el más completo y detallado, llegando a incluir campos tales como el pseudocódigo o los diagramas de diseño, que hacen casi directa la implementación software del patrón. Otro de los formatos más usados es el propuesto por Alexander (1997), el cual describe la solución del patrón de forma más abstracta, mostrando un dibujo que representa dicha solución y permitiendo que sea implementado de diferentes maneras. Este tipo de patrón más abstracto puede ser más apropiado cuando se trabaja con conocimiento de diseño multidisciplinar, como ocurre en el caso de e-learning, puesto que el número de tecnologías involucradas es muy elevado y, además, algunos patrones no tienen
18
tanta relación con la implementación del software como con la estrategia pedagógica a adoptar. Sin embargo en todos los formatos se deberían reconocer claramente en menor o mayor medida los siguientes campos (Appleton, 2000): § Nombre: Un nombre descriptivo y único que ayude a identificar y referenciar al patrón. § Problema: Descripción resumida en una o dos frases que describe la intención del patrón, es decir, las metas y objetivos que se quieren alcanzar. § Contexto: Problema recurrente en el que es aplicable el patrón. Suelen usarse ejemplos del estado inicial del sistema antes de que el patrón sea aplicado. § Fuerzas: Descripción de las fuerzas, los objetivos y restricciones relevantes para ese patrón, y de cómo éstas interaccionan entre ellas o con las metas que deseamos alcanzar. Además se puede incluir un escenario concreto que sirva de motivación para el patrón. La noción de fuerza generaliza los tipos de criterios que justifican al patrón. § Solución: Suele ser un conjunto de instrucciones que describen cómo construir el producto resultante. La descripción puede ir acompañada de dibujos, diagramas o esquemas de la solución. Es el corazón del patrón. El patrón North Face nos indica las siguientes instrucciones: “Haz de la cara norte del edificio una cascada que descienda hacia el suelo para que el sol que normalmente proyecta una larga sombra hacia el norte alcance el suelo inmediatamente al lado del edificio”. § Ejemplos: Ejemplos, que pueden ser visuales, que ayudan al lector a entender el uso y la aplicabilidad del patrón (el contexto inicial, cómo el patrón transforma el contexto, y el contexto resultante). En el patrón North Face se presenta un ejemplo visual de la aplicación del patrón sobre el contexto inicial, como se puede ver en la parte derecha de la figura 2.2.b. § Contexto resultante: Indica el estado del sistema después de aplicar el patrón, incluyendo sus consecuencias (positivas y negativas). § Exposición razonada: Expone cómo funciona el patrón y por qué es útil. Mientras que la solución muestra la estructura visible del patrón, la exposición explica sus mecanismos subyacentes. § Patrones relacionados: Patrones que se pueden combinar con este, o es posible aplicar a partir del contexto resultante, o representan soluciones alternativas. Como ya se mencionó, el patrón North Face se puede combinar con otros patrones para sacar partido de esa zona, como son Car Connection, BulK Storage, Compost, Closets between rooms, es decir, elementos que no necesitan de la luz natural. En la siguiente figura podemos ver como cada uno de los campos del formato del patrón interacciona con la solución del patrón:
19
Figura 2.3.a. Interacción entre los campos del formato de un patrón (Bolchini, 2000)
2.4. CATÁLOGOS Y LENGUAJES DE PATRONES Con el crecimiento del número de patrones relacionados con un determinado dominio de diseño, la acumulación de información evoluciona hacia una masa carente de estructura y significado, que hace que el diseñador se vea incapaz de navegar por ella para encontrar las soluciones que necesita. Asimismo, al tratar de resolver un problema complejo que requiere la aplicación sucesiva de varios patrones, el diseñador novato se puede sentir abrumado ante la tarea de escudriñar todo el conjunto de patrones y cribar aquello que realmente necesita. Los patrones recogen conocimiento, pero puesto que este conocimiento está interrelacionado, es preciso organizarlo de alguna forma que sea significativa para el diseñador. Habitualmente los patrones se han organizado en catálogos y lenguajes para conseguir un uso más efectivo. El objetivo de estas herramientas es encauzar los esfuerzos del diseñador a la hora de encontrar el patrón o patrones que mejor se adapten a las necesidades del problema que está tratando de resolver.
20
2.4.1. Catálogos de patrones Un catálogo es un grupo de patrones clasificados por uno o más criterios y relacionados entre sí, los cuales pueden ser utilizados de forma conjunta o independiente. Estos criterios permiten organizar los patrones en grupos que comparten el mismo conjunto de propiedades, y dependiendo de los criterios elegidos se pueden definir esquemas de clasificación con diferentes dimensiones. Los esquemas de clasificación ponen de manifiesto las principales cualidades de los patrones y ayudan a reducir el tamaño del espacio de búsqueda. En la literatura se pueden encontrar los siguientes criterios utilizados para clasificar diferentes tipos de patrones (Kardell, 1997): §
§
§
§
§
§
Por su dominio. Dentro del campo de la ingeniería del software, los patrones no están restringidos a resolver problemas de diseño o de arquitectura software. Considerando el problema del diseño, se han propuesto gran cantidad de patrones en diferentes áreas, como pueden ser los de sistemas distribuidos, concurrentes o paralelos (Schmith et al., 2000) o colaborativos (Guerrero y Fuller, 2001). Por su paradigma. Cada paradigma tiene sus propios patrones. Un patrón de diseño imperativo (uno de los paradigmas de la programación) podría dirigir un problema similar que un patrón de diseño orientado a objetos, pero la solución se describiría en términos de cada paradigma. Un ejemplo de este tipo sería el patrón Decorator (Gamma et al., 1994) que es presentado según el paradigma de la orientación a objetos y el patrón Navigational Context (Rossi et al., 1997) que es el mismo patrón pero adaptado al paradigma del hipertexto. Por su granularidad. Los patrones también pueden ser clasificados dependiendo del nivel al cual se dirijan. La clasificación más famosa es la descrita en (Buschmann et al., 1996), donde en el nivel más bajo se encuentran los patrones específicos del lenguaje de programación, en el nivel medio se ubican los de diseño y en el nivel superior los patrones referentes a la arquitectura del sistema. Por su nivel de abstracción. De una manera similar a la anterior, los patrones software se pueden clasificar en: patrones conceptuales, que son descritos mediante términos y conceptos de un dominio de aplicación específico; patrones de diseño, que describen construcciones software, complementando el espacio conceptual abierto por los patrones conceptuales; y patrones de programación, que estarían en el nivel más bajo de abstracción, cuyas soluciones son descritas mediante construcciones propias de los lenguajes de programación (Riehle y Zullighoven’s, 1996). Por su propósito. El propósito representa qué tipo de problemas resuelve el patrón. Este criterio fue usado inicialmente por Gamma et al. (1994), quienes establecieron las siguientes categorías: creación, estructurales y de comportamiento. Por su alcance. Dentro de un mismo paradigma y usando el mismo entorno de desarrollo, los patrones pueden ser clasificados según el espacio del entorno en el que se aplica la solución del patrón. En el paradigma de la orientación a objetos, por ejemplo, el patrón puede ser aplicado a una clase o a un objeto (Gamma et al., 1994).
21
§
Por las relaciones entre patrones. En 1995, Zimmer examinó la naturaleza de las relaciones entre los patrones a través del campo “Patrones relacionados”, centrándose en las relaciones entre los aspectos del problema y la solución, dando lugar a tres tipos de relación: el patrón X usa el patrón Y en su solución, el patrón X es similar al patrón Y, y el patrón X puede ser combinado con el patrón Y. Posteriormente, viendo que la relación más predominante era “X usa Y”, los patrones fueron organizados en niveles de uso, como se ve en la figura 2.4.1.a.
Estos criterios, tanto de manera individual como en combinación, permitirían definir esquemas de clasificación. En el catálogo de Gamma et al. (1994) que se muestra en la figura 2.4.1.a, se puede ver como sus 23 patrones están organizados por dos criterios: propósito (de creación, estructurales y de comportamiento) y ámbito (clase y objeto). Para cada una de las intersecciones entre categorías de los dos criterios encontramos una serie de patrones que son aplicables. Figura 2.4.1.a. Catálogo de patrones de diseño de Gamma et al. (1994). [Esta tabla representa el espacio bidimensional que permite catalogar los patrones del catálogo Gamma según el ámbito en el que se aplican (clase u objeto) y el propósito del mismo (de creación, estructural, o de comportamiento]
Este mismo conjunto de patrones fue utilizado por Zimmer (1995) para organizarlos atendiendo a cómo los patrones utilizaban otros patrones en su solución. El resultado fue organizar los patrones en diferentes niveles: patrones de diseño básico (los patrones más utilizados), patrones de diseño para problemas típicos del software (los patrones que se sirven de los básicos) y patrones de diseño específicos para un dominio de aplicación (no son utilizados por otros patrones).
22
Figura 2.4.1.b. Patrones de Gamma et al. (1994) organizados por niveles de uso. [Espacio de categorización jerárquico, donde los patrones son organizados por sus relaciones de uso (p.e. la utilización del patrón Interpreter conlleva la aplicación de los patrones Composite, Visitor e Iterator]
La definición o selección de los criterios de organización para un determinado catálogo dependerá del objetivo de dicha clasificación, que normalmente suele ser ayudar al usuario de patrones a reducir el espacio de búsqueda de patrones ante un problema de diseño al que se esté enfrentando. A la hora de seleccionar cuáles van a ser esos criterios, se han de tener en cuenta una serie de propiedades (Kardell, 1997): §
§
§
Criterios universales. Los criterios no deberían ser sólo extraídos a partir del estudio de los patrones existentes, sino también teniendo en cuenta cuál es el objetivo de dichos criterios, siendo así válidos para todos los patrones, tanto si ya han sido escritos como si no. Criterios conceptuales. Un criterio debería permitir definir categorías que sean, conceptualmente, subconjuntos de ese criterio, proporcionando información más detallada al usuario sobre el problema general para el cual puede ser utilizado el patrón. De esta forma, el catálogo es más fácil de aprender y de usar. Criterios útiles. Además de poseer las propiedades anteriormente mencionadas, el criterio debe reflejar un objetivo global de la categorización que sea relevante para sus usuarios y pueda determinar su utilidad.
Aunque el catálogo permite una organización de los patrones, realmente no solventa el problema de la selección del patrón más adecuado dado un problema de diseño complejo. En primer lugar, el diseñador debe comprender el esquema de clasificación usado en el catálogo, que no siempre es obvio para un diseñador no experto. En
23
segundo lugar, debe buscar la parte del catálogo en la que podrían encontrarse aquellos patrones que son aplicables a su problema. Finalmente, aunque los patrones del catálogo puedan indicar de forma explícita la aplicación de otros patrones, esta orientación es sólo a nivel de patrones y no a nivel del problema que se está intentando resolver. Además, estas relaciones no suelen formar parte de la estructura del catálogo (Noble, 1998).
2.4.2. Lenguajes Alexander resolvió el problema de la selección de un patrón organizando sus patrones en lo que denominó un lenguaje de patrones. Este lenguaje tiene un vocabulario, que son los patrones en sí, y una gramática, que son las relaciones existentes entre los patrones. Así se forma una red donde cada patrón depende de los patrones de menor escala que contiene y de los patrones de mayor escala donde está contenido. Por lo tanto, un lenguaje es una colección, que tiene una cohesión que revela las estructuras y las relaciones de sus componentes para cumplir un objetivo compartido, facilitando una solución detallada a un problema de diseño de gran escala cuyo propósito es el de guiar e informar al diseñador según atraviesa las relaciones de uso desde los patrones más generales a los más específicos (Coplien, 1998). En la figura 2.4.2.a puede verse parte de un lenguaje de patrones para el diseño de aplicaciones hipermedia (Montero, 2005) donde los patrones son organizados de mayor a menor nivel de abstracción (lectura de los patrones de arriba abajo en la figura), siendo el patrón raíz y el más general [A] Hypermedia Application y cuyos enlaces representan tres tipos diferentes de relación estructural entre ellos: composición (X utiliza a Y para su solución), asociación (X sugiere un nuevo problema que es tratado por Y) y especialización (X trata con una especialización del problema que aborda Y). Figura 2.4.2.a. Fragmento del mapa de un lenguaje para el diseño de aplicaciones hipermedia (Montero, 2005)
24
En la figura 2.4.2.b encontramos un mapa de los patrones que conforman un lenguaje para escribir patrones de diseño (Meszaros y Doble, 1996). Este lenguaje captura las mejores prácticas para la escritura de patrones. Sus patrones fueron obtenidos a partir de la experiencia de los revisores de la conferencia más importante de patrones, conocida como PLOP (Pattern Languages Of Programs). Por lo tanto, este lenguaje guía a los potenciales escritores de patrones sobre cómo capturar una experiencia en la resolución de un problema repetitivo de su dominio de diseño para compartirlo con otros.
Figura 2.4.2.b. Mapa de los patrones que conforman un lenguaje para escribir patrones de diseño (Meszaros y Doble, 1996)
25
Los patrones son agrupados en cinco secciones nombradas de la A a la E: §
§ § § §
Sección A: Asignación del contexto, introduce el concepto de “Patrón” (una solución a un problema en un contexto) y de “Lenguaje de Patrones” (colecciones de patrones que están relacionados para resolver el mismo problema o parte de una solución más grande, fraccionando el problema) para que podamos decidir hacia qué parte del lenguaje nos queremos dirigir. Sección B: Estructura del patrón, contiene patrones que describen el contenido y la estructura individual de los patrones, tanto si son individuales o forman parte de un lenguaje de patrones. Sección C: Nombrar y referenciar, contiene patrones que describen técnicas sobre cómo dar un nombre a los patrones e incluir referencias a otros patrones dentro del propio patrón. Sección D: Hacer los patrones entendibles, contiene patrones que capturan técnicas para hacer que los patrones y lenguajes de patrones sean más fácil de leer, entender y aplicar. Sección E: Estructura del Lenguaje, contiene patrones que describen el contenido y estructura de los lenguajes de patrones.
A la hora de utilizar un lenguaje de patrones, en la terminología de Alexander et al. (1977), el diseñador tendría que atravesar el lenguaje de patrones para generar un diseño concreto. Para ello, propuso los siguientes pasos para llevar a cabo la selección del conjunto de patrones que resuelven un determinado problema : 1. Elegir el patrón que mejor describe el alcance global del proyecto. 2. Ir al final del patrón, donde se referencian los patrones de menor escala que soportan ese patrón, y hacer una lista con los que potencialmente se podrían aplicar al proyecto. 3. Para cada patrón seleccionado en el paso 2, repetir el paso anterior y también examinar los patrones de mayor escala que aparecen al comienzo de cada patrón, añadiendo todos los que sean relevantes a la lista. 4. Repetir los pasos 2 y 3 hasta conseguir una lista de patrones. 5. Ajustar la lista de patrones añadiendo material propio, modificando los patrones existentes para que sean más relevantes a la situación actual o creando nuevos patrones. Siguiendo con el lenguaje de Meszaros y Doble (1996), y siendo la primera vez que nos enfrentamos a la escritura de un patrón, nuestro punto de partida sería el patrón Pattern de la sección A. Este patrón nos propone que capturemos tanto el problema como la solución, así como las razones por las que esa solución es aplicable. Para lograrlo deberíamos aplicar el patrón Mandatory Elements Present. Por lo tanto, nuestro siguiente paso es ir a ese patrón y leer el problema y las razones por las cuales deberíamos aplicarlo y, si se ajusta a nuestras necesidades, leer la solución. En este caso, el patrón nos presenta cuál es la información necesaria que tiene que cubrir un patrón. Para ello, nos sugiere una serie de campos que están explicados en los patrones: Evocative Pattern Name, Context-Free Problem, Solution Clearly Related to Forces, Visible Forces. De manera iterativa iríamos a estos patrones, leeríamos el problema que nos plantea y si nos proponen otros patrones, los añadiríamos. Este proceso termina cuando no hay más patrones que incluir para resolver nuestro problema inicial o los que nos aconsejan están fuera del alcance de nuestro problema.
26
De esta forma, el diseñador navega por el lenguaje de patrones para solucionar un problema complejo aplicando soluciones de manera paulatina. En general, la estructura de un lenguaje de patrones tendría la forma de un grafo dirigido, generalmente con pocos ciclos, donde los nodos representan patrones y los enlaces las relaciones entre patrones. Un patrón inicial en la raíz del grafo esboza la solución general que proporciona el lenguaje al problema de gran escala que está abordando. Este patrón está relacionado con otros patrones de menor escala, que a su vez proporcionan soluciones, exponiendo más subproblemas que usan patrones de menor escala para resolverlos, como puede verse en la figura en la figura 2.4.2.a. En la ingeniería del software todavía no se ha llegado a la riqueza lingüística expresada por el lenguaje de patrones de Alexander, hablando en términos de patrones, aunque ha habido varias aproximaciones en diferentes dominios. Además, para ayudar a los usuarios a hacer frente a las dificultades de entender cuándo y cómo usar los patrones, actualmente se están proponiendo especificaciones más formales. Estas especificaciones aportan tanto una descripción semántica bien definida como un modelo de razonamiento, con el objetivo de complementar la descripción textual con la que son descritos los patrones y así permitir el desarrollo de herramientas software para incorporar sistemáticamente patrones en el diseño de sistemas (Lucrédio et al., 2003), verificar su presencia (Albin-Amiot y Guéhéneuc, 2001), o encontrar los más adecuados a un determinado problema (Gomes et al., 2002).
2.5. ¿DÓNDE HAN APLICACIÓN
SIDO
UTILIZADOS?:
DOMINIOS
DE
Después del rotundo éxito de los patrones de diseño en el área de la orientación a objetos, otras áreas de la ingeniería del software aplicaron dicho concepto para capturar sus mejores prácticas de diseño. Posteriormente, otros dominios software relacionados, como son la hipermedia o web y la interacción persona-ordenador, dieron también el salto a los patrones con sus propios matices. En la actualidad, los patrones se han utilizado como forma de documentación interna en compañías o como introducción a nuevos dominios emergentes, recibiendo estos patrones el nombre de pre-patrones puesto que los dominios de diseño a los que pertenecen no están suficientemente establecidos y, en consecuencia, no existe suficiente experiencia, por lo que los patrones están en realidad basados en el uso del sentido común y de la reutilización de conocimiento de otras disciplinas. A continuación, se detallan cada uno de estos campos de forma más detallada.
2.5.1. Ingeniería del software Los investigadores y profesionales se vieron atraídos por el potencial de los patrones para hacer explícito aquello que el experto hace muchas veces implícitamente, cuando emplea procedimientos en un nivel muy abstracto para dar solución a problemas que
27
aparecen recurrentemente, de tal manera que otros diseñadores o desarrolladores no tan expertos puedan beneficiarse de ese conocimiento y aplicarlo en otro dominio. En los años siguientes a la publicación del GoF1 se ha producido un auge en la investigación de patrones, extendiéndose a otras áreas del desarrollo software, incluyendo: • • • •
patrones de análisis: conjunto de reglas que permiten modelar un sistema de forma satisfactoria (Fowler, 1997), patrones de procesos: serie de acciones para desarrollar software (Ambler, 1998), patrones de arquitectura: formas de descomponer, conectar y relacionar sistemas (Buschmann et al., 2001) y patrones de programación: patrones de bajo nivel en un lenguaje de programación concreto (Alur et al., 2003).
A medida que ha aumentado el uso de los patrones se ha tenido certeza de que éstos pueden mejorar la productividad y calidad de las soluciones software gracias a las siguientes cualidades (Chambers et al., 2000): •
•
•
Promueven la reutilización del diseño. Los patrones de diseño capturan experiencias en la resolución de problemas de diseño cuya utilidad o necesidad se ha evidenciado repetidamente en diferentes proyectos. Por lo tanto, la aplicación de un patrón lleva implícita la reutilización de esos diseños. Forman un vocabulario común de diseño. Los nombres de los patrones pueden ayudar a los diseñadores a comunicarse de una manera más eficiente, extendiendo su vocabulario y siendo capaces de transmitir el problema y la solución como un todo comprensible mediante el nombre del patrón. Mejoran la documentación. La utilización de un patrón en el desarrollo de un sistema permite conocer qué solución se ha aplicado y por qué, puesto que el patrón no es una idea del programador sino una solución probada y reconocida en una comunidad de desarrollo.
Otras muchas áreas relacionadas con el software también han registrado su conocimiento con patrones, como por ejemplo los sistemas distribuidos, concurrentes o paralelos (Schmidt, 2006), la interacción persona-ordenador (Tidwell, 2008), el comercio electrónico (Adams et al., 2001), o la inteligencia artificial (Peters, 2003). Además, el modelo descriptivo de los patrones ha demostrado también su efectividad en otras áreas no relacionadas con el software, como la organización de grupos humanos (Keidel, 1995). Un ejemplo de patrón de diseño del área de la orientación a objetos es el patrón Singleton (Gamma et al., 1994). Este patrón asegura que una clase tiene una única instancia, y proporciona un punto de acceso global a esa instancia. Utilizando un ejemplo no software, el cargo del presidente de los Estados Unidos es un Singleton. En un determinado momento, sólo hay un presidente en activo. A pesar de la identidad
1
Gang of Four, nombre con el que se conoce familiarmente al libro “Design Patterns, Elements of Reusable Object-Oriented Software”.
28
personal del presidente en activo, el título "Presidente de los Estados Unidos" es un acceso global que identifica a la persona en el cargo.
Figura 2.5.1.a. Diagrama de Objetos para el patrón Singleton usando el ejemplo de la presidencia (Duell, 1997).
2.5.2. Diseño web En 1996, en el seno del grupo de investigación del LIFIA liderado por Gustavo Rossi, surgen los primeros trabajos sobre patrones de diseño aplicados al desarrollo de aplicaciones hipermedia, dándose a conocer algunos patrones para la creación de aplicaciones orientadas a objetos con funcionalidad hipermedia (Rossi et al., 1996) muy cercanos al estilo de los patrones de Gamma et al. (1994). Sus siguientes trabajos se centran ya en problemas de diseño de las aplicaciones hipermedia (Rossi et al., 1997) y se hace una primera aproximación para la creación de un lenguaje de patrones aplicado a este dominio (Garrido et al., 1997). Además, en Design reuse in hypermedia application development (Rossi et al., 1997), se puso de manifiesto la necesidad de motivar a la comunidad hipertexto a discutir el asunto y producir un catálogo de patrones relacionados. Este periodo termina con un workshop (Rossi et al., 1999a) donde se discuten las principales carencias con las que contaba el espacio de patrones de diseño hipermedia y se proponen una serie de intenciones futuras. Además, en ese mismo año, se crea el primer repositorio web de patrones hipermedia (Bolchini, 2002) y se investiga cómo integrar los patrones en el proceso de diseño (Rossi et al., 1999b). Sin embargo, con el auge de las aplicaciones web y la necesidad de que el desarrollo esté centrado en el usuario final, reaparecen los patrones de diseño con una nueva perspectiva. Aunque tanto los patrones anteriores como éstos tienen en común las necesidades de los usuarios, la diferencia radica en cómo son explicadas las soluciones que proponen los patrones. Mientras que en el primer caso se utiliza un vocabulario propio de los métodos de diseño, que los hace comprensibles sólo a diseñadores hipermedia experimentados en ese método concreto, este nuevo estilo de descripción de los patrones, que se ha recogido tanto en libros (van Duyne et al., 2002; Graham, 2003) como en repositorios web (van Welie, 2007; Addison-Wesley, 2002), los expone con un lenguaje comprensible tanto para diseñadores como para usuarios, permitiendo nuevos modos de uso de los patrones.
29
Los patrones de diseño hipermedia están pensados para capturar soluciones a problemas de diseño derivados del modelado de las principales características de una aplicación hipermedia o web, como son la navegación, presentación, dominio de la aplicación, comportamientos interactivos, personalización y seguridad. Por ejemplo, cuando un diseñador menos experimentado tiene que afrontar el modo de navegar por la aplicación web que está diseñando, puede no conocer todas las herramientas de navegación que ayudan al usuario a moverse por el sitio sin que le parezca difícil o imposible de encontrar lo que está buscando. En este caso, el patrón B1 - Multiple ways to navigate (van Duyne et al., 2002) propone una organización en la página principal de la aplicación para las principales herramientas de navegación, búsqueda y navegación secuencial. Figura 2.5.2.a. Página www.amazon.com, Agosto, 2001 B1 Multiple Ways to Navigate Amazon.com entiende que la intención como el impulso son motivadores de la navegación. Los usuarios pueden buscar lo que ellos tienen la intención de comprar, usando herramientas de exploración y de búsqueda. El sitio también proporciona enlaces a elementos que los usuarios pueden no tener intención de comprar pero pueden seguir los enlaces de todas maneras.
Contexto Este patrón es usado por todos los patrones incluidos en el grupo A, proporcionando un esquema que ayuda a los usuarios a navegar por los sitios web.
30
Problema Los usuarios navegan por los sitios web de diferentes maneras. Si alguna de las herramientas de navegación no está o es difícil de encontrar, los usuarios sentirán que es tedioso utilizar ese sitio web. Los usuarios navegan a través de un sitio web para recoger información y llevar a cabo sus objetivos. Puede buscar información, actividades o productos de diferentes modos. Un usuario puede tener algo específico en mente y usar las herramientas de búsqueda. Otros pueden preferir navegar por el sitio siguiendo los enlaces. Un tercer tipo de usuario sólo sabe vagamente lo que quiere y desea echar un vistazo y ver qué le puede interesar. Debido a que los usuarios se mueven a través de un sitio web de diferentes modos, el sitio necesita ofrecerles diferentes modos de navegar. La intención y el impulso llevan a los usuarios a actuar A partir de la observación, hemos identificado dos cosas que llevan a los usuarios a actuar: la intención y el impulso. Si un sitio web omite la navegación basada en la intención, puede parecer superficial y estrafalario, mientras que si se omite la navegación basada en el impulso puede parecer aburrido. Toma ventaja de estos dos estilos de navegación para que el usuario tenga una experiencia satisfactoria. Diferentes motivaciones llevan a diferentes estilos de navegación La navegación familiar ayuda al usuario a tener una clara idea de cómo moverse por el sitio. Las opciones de navegación incluyen la búsqueda, la exploración, el siguiente paso o wizard. Los estilos de navegación sobre elementos relacionados y de promoción funcionan mejor con el comportamiento impulsivo. Colocar las herramientas donde los usuarios puedan encontrarlas y usarlas No sólo tiene sentido que cada herramienta de navegación aparezca en un sitio específico para que el usuario pueda encontrarla, sino que coincida con las experiencias adquiridas en visitas a otros sitios web. La colocación consistente de las herramientas de navegación es uno de los modos más importantes de hacer la navegación sencilla. Una vez que se accede a una página, el usuario debe encontrar los enlaces que le posibilitarán completar sus objetivos e intenciones. Coloca las herramientas que llevan al usuario a realizar sus metas cerca del punto en que comienzan a leer. Esta localización asegura que las herramientas serán encontradas y usadas. Las herramientas que ayudan al usuario a continuar o completar sus metas también necesitan estar cerca de la parte de arriba de la página, para que el usuario pueda verlas sin tener que hacer desplazamientos por la página. Estas herramientas funcionan mejor si se sitúan en el lado opuesto de la página (arriba a la derecha) desde donde el usuario comienza a leer. Los usuarios tienden a explorar la página desde el principio al final, así que esperan que los enlaces de continuación queden en la parte baja de la página. Debido a que no puedes garantizar que tus usuarios tengan una reacción impulsiva, este tipo de herramientas de navegación deberían ocupar un espacio menos valioso en la pantalla. Puedes ponerlas en la parte inferior de la página o en el lado opuesto a donde los usuarios comienza a leer (lado derecho).
31
Solución Asegúrate de que tus usuarios completan sus metas, pon herramientas de navegación tanto de búsqueda (search) como de acceso a los contenidos (browse). Coloca esas herramientas de navegación arriba y al comienzo de la página. Sitúa herramientas de navegación al siguiente contenido (continue) tanto en la parte derecha como al final de la página. Incluye siempre herramientas de navegación hacia contenidos relacionados o de promoción (relate y promote), pero siempre lo más abajo de la página.
Figura 2.5.2.b. Solución del patrón B1-Multiple ways to navigate [Proporciona a tus usuarios diferentes modos de navegar, dependiendo de sus metas y deseo, y así mantenerlos enganchados].
Considera estos otros patrones Dar a los usuarios diferentes modos de navegar: Sitúa un SEARCH ACTION MODULE (J1) o un enlace a STRAIGHTFORWARD SEARCH FORMS (J2) en la parte de arriba de cada página, proporcionando una consistente NAVIGATION BAR (K2) en cada página, y proporciona BROWSABLE CONTENT (B2). Haz más fácil para todo el mundo navegar por el sitio web con SITE ACCESSIBILITY (B9). Ayuda a los usuarios a completar sus tareas usando ACTION BUTTONS (K4) y enlaces a CONTEXT-SENSITIVE HELP (H8) situado en la parte derecha de arriba de la página. Usa un PROCESS FUNNEL (H1) para tareas donde su finalización sea absolutamente necesaria. Proporciona la capacidad de navegación por impulso usando CONSISTENT SIDEBARS OF RELATED CONTENT (I6) y promociones que usen DESCRIPTIVE, LONGER LINK NAMES (K9).
32
2.5.3. Interacción persona-ordenador (HCI - Human Computer Interaction) Mientras que en la comunidad de la orientación a objetos los patrones de diseño son escritos por y para ingenieros del software o personas con habilidades y conocimientos similares que los utilizan como mecanismo de reutilización del software, en el caso de la comunidad de la interacción persona-ordenador se vuelve a la idea original de Alexander, que postulaba los patrones como herramienta de comunicación entre profesionales (arquitectos) y usuarios del sistema (habitantes). Concretamente, esta comunidad aboga por una lingua franca, no sólo formada por un vocabulario sino por un marco conceptual que permita la comunicación entre todos los miembros que tienen que cooperar en el diseño de los sistemas interactivos, es decir, diseñadores, usuarios y otros agentes involucrados (stakeholders) a través de un lenguaje de patrones (Erickson, 2000; Borchers, 2000). Estos patrones están orientados a solventar los problemas que los usuarios finales encuentran cuando interactúan con sistemas, siendo la usabilidad la cualidad esencial que se pretende primar en el diseño. Las colecciones de patrones de interacción se encuentran disponibles en libros (Borchers, 2001) o en web (Tidwell, 2008) con un total de más de 250 patrones publicados. A modo de ejemplo, mostramos a continuación el patrón Progress Indicator (Tidwell, 2008). Figura 2.5.3.a. Solución del patrón Progress Indicator aplicado a la descarga de un fichero (Tidwell, 2008). Patrón Progress Indicator
Qué: Mostrar al usuario cuánto se ha realizado en una operación que consume tiempo. Cuándo usar: Una operación que consume tiempo interrumpe la interfaz de usuario, o se ejecuta en segundo plano, más allá de dos segundos. Por qué: Los usuarios se ponen impacientes cuando no perciben cambios en la interfaz de usuario.
33
Incluso si estás cambiando el puntero del ratón a un reloj (que deberías hacerlo si el resto de la interfaz está bloqueado), no quieres que el usuario espere una cantidad de tiempo indeterminada. Los experimentos han mostrado que si los usuarios ven una indicación de que algo está pasando, son mucho más pacientes, incluso si tienen que esperar más tiempo que sin un indicador de progreso. Quizás es porque saben que “el sistema está pensando”, y no sólo colgado o esperando a que ellos hagan algo. Cómo: Muestra un indicador con animación que indique cuánto se ha realizado hasta el momento. Tanto verbal como gráficamente (o ambos), muéstrale al usuario: * Qué está sucediendo * Qué proporción de la operación se ha completado * Cuánto tiempo queda * Cómo parar la operación
La mayoría de los lenguajes para interfaces gráficos de usuarios incluyen algún elemento para implementar la caja de diálogo, pero el indicador de progreso tiene que ser actualizado de manera consistente, mientras la operación sigue avanzando. Si puedes, mantén el resto de la interfaz de usuario activa. No bloquees la interfaz mientras el indicador de progreso está visible. Si es posible cancelar la operación cuyo progreso se está monitorizando, ofrece un botón de cancelar o similar cerca del indicador de progreso. Mira el patrón Cancelability para más información.
El éxito del diseño de un sistema interactivo requiere la participación de personas procedentes de diferentes disciplinas, como la ingeniería del software, el diseño de interfaces de usuario, el dominio de la aplicación en el cual el sistema será usado, el marketing, la escritura técnica, el diseño gráfico, etc. Teniendo en cuenta este problema, se ha explorado el uso de los patrones como un medio de comunicación. Erickson (2000) especula con la posibilidad de una lingua franca para todas las personas involucradas en el diseño de un sistema interactivo, incluido los usuarios del sistema final. Borchers (2001) discute el uso de lenguajes de patrones como medio para mejorar la comunicación entre expertos de diferentes dominios. Teniendo en cuenta estas hipótesis, Dearden et al. (2002) estudian si los lenguajes de patrones pueden mejorar la participación del usuario en el diseño. En dicho estudio se adoptó el mismo proceso participativo que siguió Alexander (1985) en The production of houses, recibiendo una respuesta positiva por parte de los usuarios sobre la ayuda que supuso el lenguaje durante la realización de un prototipo, aunque también hubo críticas sobre el formato utilizado para describir los patrones. Además, los patrones han sido utilizados para enseñar los conceptos básicos de la interacción persona-ordenador a estudiantes de diferentes cursos. En los trabajos de Borchers (2002) y Seffah (2003), los alumnos concluyeron que los patrones habían
34
resultado útiles tanto para retener los principios de diseño, adoptando rápidamente el vocabulario de los patrones, como para formular sus propias experiencias de diseño.
2.5.4. Otros modos de uso Teniendo en cuenta que el objetivo de los patrones de diseño es capturar el conocimiento experto en la resolución de problemas, una pregunta surge con fuerza: ¿Cuándo una disciplina es lo suficientemente madura para poder beneficiarse del uso de los patrones? Chung et al. (2004) acuñaron el término “pre-patrones” para referirse a este conocimiento de diseño estructurado en un dominio naciente y cuyos patrones no tienen un uso extendido. Entre estos dominios podemos encontrar: computación ubicua (Landay y Borriello, 2003) u hogares digitales (Saponas et al., 2006). Para constatar la efectividad de estos patrones y de su uso se realizaron diversos estudios empíricos (Chung et al., 2004; Saponas et al., 2006) cuyos resultados revelaron que los pre-patrones tienen un efecto positivo durante las fases tempranas del diseño, ya que permiten a los diseñadores generar ideas así como conseguir respuestas a preguntas específicas que les surgen durante esa fase, evitando así que ciertas cuestiones queden sin resolver para posteriores fases. Además, los diseñadores participantes en las evaluaciones afirmaron que los pre-patrones serían útiles en dominios que no fuesen familiares a los diseñadores. Algunas compañías están utilizando los patrones internamente como una herramienta. Los creadores de Yahoo! (Leacock et al., 2005) procedieron a diseñar y construir un repositorio de patrones de diseño de interacción que sirviese de estándar para todas las unidades, evitando así que sus múltiples unidades de negocio resolvieran el mismo problema de diferentes maneras, debilitando así la imagen de la compañía y desarrollando productos menos usables. Otra compañía que pasó por lo mismo fue eBay (Reffell y Alpern, 2006). Esta empresa comenzó a tener problemas con la consistencia del diseño en sus diferentes productos y afrontaron este problema con la creación de una librería de patrones. Primero, definieron una guía de estilo que sirviese de estándar, pero no llegó a funcionar porque algunas de las recomendaciones eran muy generales y otras muy específicas. De ese libro extrajeron las mejores prácticas que fueron documentadas como patrones. Pero aún tenían un problema, la documentación era estática, y las modificaciones y actualizaciones eran farragosas. Por ello pensaron en crear un lenguaje en XML que recogiese las soluciones de los patrones e implementar los diseños de manera más rápida. Sin embargo, esto no proporcionaba explicaciones del por qué de la utilización de esos componentes y de cómo deberían ser empleados en las aplicaciones de eBay. Finalmente, optaron por crear una aplicación web de patrones para comunicar los patrones a la vez que incluían enlaces al código de implementación.
35
2.6. EL PAPEL DE LOS PATRONES EN EL CICLO DE VIDA DEL DESARROLLO Cualquier ciclo de desarrollo software tiene al menos fases para el análisis, el diseño, la implementación, las pruebas de la aplicación en desarrollo y en el caso del desarrollo de aplicaciones interactivas, también se incluye una fase de evaluación de la utilidad y la usabilidad. Cada fase crea una imagen más detallada del sistema que la anterior. Muchos desarrolladores tienen como motivación reducir el esfuerzo y el tiempo de este ciclo de vida del desarrollo. Cuando estamos desarrollando una aplicación, nos encontramos con problemas que ya hemos visto antes y nos preguntamos: “¿Cómo voy a resolver este problema esta vez?”. De hecho, para muchos problemas, buscamos la solución a un problema similar en el pasado para intentar reaplicarla. Los patrones son esa herramienta para capturar y comunicar este entendimiento y experiencia, creando conocimiento de diseño persistente entre profesionales de una comunidad. Un diseño de software efectivo requiere considerar asuntos que pueden no ser visibles hasta más allá de su implementación. Reutilizar los patrones de diseño ayuda a prevenir asuntos sutiles que pueden causar problemas mayores. Aunque los patrones no son un método o proceso de desarrollo, pueden complementarlos. Los patrones fueron inicialmente introducidos para ser reutilizados durante la fase de diseño [los patrones de diseño presentados en Gamma et al (1994)], pero muchos profesionales se dieron cuenta de su utilidad en otras fases del desarrollo. La amplia aceptación de los patrones de diseño ha permitido cubrir todo el ciclo de vida del desarrollo software, creando nuevos tipos de patrones encargados de registrar el conocimiento de cada una de las fases (figura 2.6.a), acelerando así cada una de ellas. Figura 2.6.a. Diferentes tipos de patrones para cada una de las fases de desarrollo.
A continuación, se describen los tipos de patrones que dan soporte a diferentes fases del desarrollo: §
Patrones del dominio: -
Cuando desarrollamos un sistema que se encuadra dentro de cierto tipo o género, es muy útil consultar patrones específicos de ese dominio en el que estamos. Estos patrones nos servirán como referencia
36
conceptual del dominio del problema, ayudándonos a identificar cuáles son los requisitos o características más relevantes de ese dominio. Por ejemplo, en el dominio web para aplicaciones de subastas on-line, el lenguaje de patrones para la administración de un sitio de subastas (Re et al, 2001) permite identificar las principales características de estos tipos de sistemas: tratan con recursos (billetes de avión, libros, cds, etc.) que son intercambiados entre clientes, que pueden ser personas u organizaciones. Estos recursos pueden ser clasificados en categorías y pueden existir diferentes tipos de subastas, que tienen diferentes reglas. En cada subasta hay negociaciones entre las partes implicadas, hay pujas que hay que administrar. Todas estas tareas tienen que ser controladas por la casa de subastas. §
Patrones de Análisis: -
Describen un conjunto de prácticas destinadas a elaborar modelos de los conceptos principales de la aplicación que se va a construir (Fowler, 1997). La intención principal de estos patrones es ayudar a las personas que realizan el trabajo de modelado, pues no siempre tienen experiencia al respecto y, en la mayoría de los casos, construyen sus modelos sin referencia alguna. Los patrones de análisis se diferencian de los de diseño en que se centran en aspectos sociales, de organización y económicos, los cuales son primordiales en el análisis de requisitos y la aceptación y usabilidad del sistema final. Por ejemplo el patrón Negociación (Hamza y Fayad, 2004) proporciona un modelo que analiza los principales conceptos de la negociación, siendo conceptos que podemos encontrar en diferentes aplicaciones relacionadas con la compra o venta de propiedades, subastas y compras online, aplicaciones y dispositivos web. La solución propuesta está enfocada en el concepto de la negociación, intentando extraer sus principales componentes, de manera independiente del dominio de aplicación, para que los desarrolladores lo puedan utilizar según sus necesidades. Esos componentes son: Acuerdo, que representa el resultado de la negociación; Parte, que representa a los participantes de la negociación (persona, grupo u organización); Medio, que representa el medio a través el cual la negociación tiene lugar; Contexto, que representa las cuestiones que tienen que ser negociadas.
§
Patrones de Arquitectura: -
Expresan un paradigma fundamental para estructurar u organizar un sistema software. Proporcionan un conjunto de subsistemas o módulos predefinidos, con reglas y guías para organizar las relaciones entre ellos. Por ejemplo, el patrón Broker se utiliza para sistemas software distribuidos con componentes desacoplados que interaccionan mediante invocaciones de servicios remotos. Un componente Broker es responsable de coordinar la comunicación. Este patrón podría complementar al patrón Negociación, visto en el punto anterior,
37
proporcionando una arquitectura a la aplicación, ya que posiblemente las partes de la negociación estén distribuidas, y el componente Broker puede actuar como medio de la negociación. §
Patrones de Diseño: -
Proporcionan un esquema para refinar los subsistemas o componentes de un sistema software y sus relaciones. Describen estructuras recurrentes de comunicar componentes que resuelven un problema de diseño en un contexto particular. Son patrones de un nivel de abstracción menor que los patrones de arquitectura, que están, por lo tanto, más próximos a lo que sería el código fuente final. Su uso no se refleja en la estructura global del sistema. Por ejemplo, el patrón Proxy (Gamma et al., 1994) permite acceder a un recurso mediante un intermediario, con varios propósitos, tales como diferir la carga, controlar el acceso, hacer caché, etc. Los recursos a los que se puede querer acceder mediante un intermediario podrían ser archivos, conexiones de red, objetos muy grandes, etc. Este patrón se utiliza para diseñar los componentes que actúan como clientes y servidores en el patrón Broker. Relacionado con el patrón Negociador estaría el diseño de las partes, que actuarían como clientes, y el diseño del negociador y el medio, que actuaría como servidor, para así controlar el acceso al contexto de la negociación.
§
Patrones de Implementación: -
Patrones de bajo nivel, específicos de un lenguaje de programación determinado. Describe cómo implementar aspectos particulares de los componentes de un patrón de diseño usando las características y potencialidades de un lenguaje de programación concreto. Por ejemplo, los patrones J2EE representan soluciones expertas para problemas recurrentes en aplicaciones web de negocio basadas en la tecnología java. El patrón Business Delegate (Sun Microsystems, 2002) reduce el acoplamiento entre los clientes de la capa de presentación y los servicios de negocio y serviría para implementar el patrón Proxy en aplicaciones J2EE. Así, si estamos utilizando el patrón Negociación en el dominio de la web para un sistema de subastas, las partes que entrarían en la negociación (clientes) tendrían un acceso común y previo al medio en el que se está produciendo la negociación, aislándolo en caso de que éste fallase y tuviese que ser reemplazado el servidor que gestiona la subasta.
Con esta primera aproximación, encontramos patrones de diferentes niveles de abstracción que nos ayudan a dar solución a los principales problemas de cada fase de desarrollo, como son las particularidades del dominio (patrones del dominio y patrones de análisis), qué arquitectura seleccionar para el tipo de aplicación a desarrollar (patrones de arquitectura), cómo diseñar los componentes de esa arquitectura (patrones de diseño) y cómo implementar sus componentes utilizando una determinada tecnología (patrones de implementación). Esta aproximación nos permite
38
ir profundizando en el nivel de detalle de la aplicación acorde a las fases del ciclo de vida de desarrollo reutilizando el conocimiento experto de otros desarrolladores. El problema de esta aproximación es que los patrones forman parte de colecciones independientes y cada paso de nivel viene marcado por el estudio del siguiente tipo de patrones para su posterior aplicación, teniendo en cuenta los patrones seleccionados en la anterior fase. También es cierto que siempre pueden ser aplicados de manera independiente, es decir, sólo utilizar patrones para alguna de las fases de desarrollo. Por ello, en muchos dominios software definen un lenguaje de patrones específico para ese dominio, donde los patrones son organizados por niveles de abstracción y enlazados de mayor a menor nivel para dirigir una aproximación basada en patrones. Por ejemplo, en el campo de IPO (Interacción Persona Ordenador) podemos encontrar un lenguaje de patrones para dar soporte al proceso de diseño de la interfaz (Granlund et al, 2001). Este lenguaje se caracteriza porque los patrones están doblemente enlazados para soportar cada paso del proceso de diseño (definición del sistema, análisis de tareas, y diseño conceptual). Por ejemplo, los patrones de tareas indican los patrones de estructura y navegación, los cuales a su vez indican los patrones de diseño a utilizar, y viceversa. En la figura 2.6.b se puede observar el proceso de diseño basado en patrones para esta aproximación, donde se muestra como cada fase del proceso (elementos circulares) está soportada por unos patrones concretos (elementos cuadrados). Figura 2.6.b. Proceso de diseño basado en patrones para el dominio IPO. (Granlund et al, 2001) [Cada fase del proceso de diseño (círculos) cuenta con un conjunto de patrones específicos (cuadrados) que aportan al diseñador conocimiento experto y experiencias para llevar a cabo sus tareas.] New sets of patterns Business Business Domain Domain Patterns Patterns
Business Business Process Process Patterns Patterns
11 System System Definition Definition
Existing patterns
Task Task Patterns Patterns
Conceptual Conceptual Design Design Patterns Patterns
22 Task/User Task/User Analysis Analysis
33 Conceptual Conceptual Design Design
Design Design Patterns Patterns
44 Design Design
Estas aproximaciones pueden reducir el esfuerzo cognitivo del diseñador de transformar los productos de una fase a otra, ya que ese paso está soportado por los patrones. En el área de la ingeniería web y la interacción persona-ordenador, una de las fases más importantes es la evaluación de utilidad y usabilidad de la aplicación desarrollada. La fase de preparación para llevar a cabo una evaluación de este tipo depende enteramente de la experiencia del experto o ingeniero de usabilidad. Los patrones de diseño para web, incluyendo otros específicos de dominio como puedan ser patrones para comercio electrónico (Rossi et al., 2000), para e-learning (como veremos en las siguientes secciones) y para sistemas ubicuos (Ubicomp Design Patterns, 2004),
39
presentan soluciones para mejorar la usabilidad del sistema, centrándose en los problemas del usuario y no en los problemas del desarrollador. Por lo tanto, esa experiencia y conocimiento registrado sobre la usabilidad de los sistemas a modo de patrón puede ser utilizada como base para dirigir una evaluación de usabilidad. Sartzetaki (2003) y Georgiakakis et al. (2006) proponen el uso de patrones como herramienta para generar escenarios que dirijan posteriormente la evaluación de usabilidad. La idea es minimizar la fase preparatoria del proceso de evaluación y permitir así a un experto en usabilidad que sea novel (no necesariamente familiar con el tipo de sistema web bajo evaluación) realizar el estudio de evaluación de usabilidad de una manera eficiente. Este objetivo se consigue con la utilización del conocimiento experto de patrones de diseño para aplicaciones web de algún dominio específico. Esta aproximación ha sido utilizada para evaluar sitios web de comercio electrónico y sistemas web personalizables. Los pasos de los que consta esta aproximación son los siguientes: § § § §
Recopilación de todos los patrones de diseño relacionados con el dominio bajo evaluación. Generación de una lista de tareas centradas en el usuario para cada patrón de diseño según la funcionalidad subyacente al patrón. Generación de escenarios para la inspección del usuario. Selección de criterios de usabilidad que se aplican a cada escenario (o tarea del escenario) y la generación de un cuestionario para la evaluación cuantitativa y cualitativa.
2.7. PROBLEMAS Y LIMITACIONES DE LOS PATRONES A pesar de todas las bondades de los patrones, en su uso diario se ponen de manifiesto una serie de problemas y limitaciones que hay que tener en cuenta para que su adopción sea lo más fructífera posible. El éxito de los patrones de diseño como técnica para capturar el conocimiento de diseño de una determinada área ha provocado que surjan una gran cantidad de patrones, a veces sin el consenso de la propia comunidad a la que va dirigida. Esta situación provoca una serie de problemas. Potencialmente, hay muchos patrones disponibles, la gran mayoría de ellos a través de diferentes publicaciones (libros y artículos). Un número de ellos puede superficialmente ajustarse a las necesidades del diseñador. Incluso si están disponibles a través de algún sitio web, es necesario realizar una búsqueda manual para identificar el patrón que mejor se ajusta a las necesidades del problema. Una vez encontrado el patrón, nos encontramos con el siguiente obstáculo. Los patrones de diseño son difíciles de aplicar si no hemos entendido en profundidad el dominio del problema. Por ejemplo, frecuentemente se tienen dificultades en determinar cómo, cuándo y dónde tienen que ser aplicados los patrones de diseño. Esto se debe a que la solución que describe el patrón no está detallada al nivel de implementación, sino que proporciona una descripción abstracta, una enumeración de elementos y sus relaciones para solucionar el problema planteado. Finalmente, es
40
posible que sean necesarios otros patrones para completar la solución, por lo que los anteriores pasos deberán repetirse. A estas dificultades hay que añadir que el uso de los patrones no está soportado metodológicamente, salvo en algún dominio concreto como es el IPO, por lo cual al comienzo tienen una alta curva de aprendizaje, que puede llevar a su abandono. Pero una vez superado este punto, la curva de experiencia puede ser óptima, ya que una de las cualidades de los patrones es “aprender haciendo” a partir de la experiencia de otros, dando como resultado diseños y aplicaciones mucho más flexibles, modulares y reutilizables. Estos hechos pueden verse agravados cuando encontramos patrones con diferentes nombres que abordan el mismo problema o el estilo literario utilizado por el autor es ambiguo o difícil de comprender por los diseñadores, o los patrones tienen diferentes formatos. Esto se refleja en patrones poco maduros, que no han sido suficientemente validados por la experiencia y suelen pertenecer a dominios que están todavía emergiendo. Documentar buenos patrones puede ser una tarea extremadamente difícil. Un buen patrón debe tener las siguientes características (Coplien, 1998): § § §
§ §
Resolver un problema: Los patrones capturan soluciones, no sólo principios abstractos o estrategias. Ser un concepto probado: Los patrones capturan soluciones con un registro de los pasos a llevar a cabo, no teorías o especulaciones. La solución propuesta no es obvia: Muchas técnicas de resolución de problemas intentan derivar la solución a partir de principios. Los mejores patrones generan una solución a un problema de manera indirecta, una aproximación necesaria para los problemas más difíciles de diseño. Describir una relación: Los patrones no sólo describen módulos, sino estructuras y mecanismos del sistema en detalle. Tener un componente humano significativo, minimizando así su intervención: El software sirve a la comodidad humana o a la calidad de vida; los mejores patrones explícitamente apelan a la estética y a la utilidad.
En la siguiente sección daremos una serie de recomendaciones sobre cómo superar o evitar los problemas aquí expuestos.
2.8. RECOMENDACIONES PARA EL USO DE PATRONES Cuando un dominio comienza a ser lo suficientemente maduro como para contar con un importante número de desarrollos que permitan registrar la experiencia y el conocimiento de los expertos, es buen momento para plasmarlos como patrones de diseño de manera que puedan ser reutilizados por los profesionales menos experimentados. A continuación enumeramos una serie de pasos y consejos para que la adopción de los patrones sea lo más exitosa posible y evitar así los problemas expuestos en la anterior sección. El objetivo debería ser obtener un lenguaje de patrones que sirva tanto para resolver un problema complejo mediante la colaboración de una serie de
41
patrones interconectados así como dar soporte al diseñador, guiándole paso a paso en dicha resolución. Para ello proponemos los siguientes pasos: §
§
Registrar la experiencia por medio de patrones. Es necesario definir un formato que recoja las características del conocimiento que se quiere registrar partiendo de los campos clásicos. Posteriormente, los patrones deberán ser revisados, a ser posible por expertos en el dominio que determinen su verdadero potencial teniendo en cuenta el objetivo y el contexto de su utilización. Categorizar los patrones. Una vez que tenemos un conjunto de patrones, es necesario clasificarlos para ayudar posteriormente al diseñador a realizar búsquedas así como a conocer el alcance de los mismos. Los criterios de clasificación deben corresponder a una necesidad del diseñador dictada por la situación concreta de diseño con la que se está tratando. A la hora de seleccionar cuáles van a ser esos criterios, se deberían tener en cuenta una serie de propiedades (Kardell, 1997): -
-
-
§
§
Ser universales. Los criterios no deberían ser sólo extraídos a partir del estudio de los patrones existentes, sino también teniendo en cuenta cuál es el objetivo de dichos criterios, siendo así válidos para todos los patrones, tanto si ya han sido escritos como si no. Ser conceptuales. Un criterio debería permitir definir categorías que sean, conceptualmente, subconjuntos de ese criterio, proporcionando información más detallada al usuario sobre el problema general para el cual puede ser utilizado el patrón. De esta forma, el catálogo es más fácil de aprender y de usar. Ser útiles. Además de poseer las propiedades anteriormente mencionadas, el criterio debe reflejar un objetivo global de la categorización que sea relevante a sus usuarios y pueda determinar su utilidad.
Equilibrar el número de patrones. Es conveniente tener un número reducido de patrones que permitan ser catalogados y organizados. El conjunto de patrones por categoría debe ser lo suficientemente significativo como para evitar que la búsqueda de un patrón sea ineficiente y compleja. Componer un lenguaje de patrones que permita una aproximación guiada. El objetivo del lenguaje de patrones debería ser hacer explícito el conocimiento subyacente que existe cuando se combinan los patrones a través de una serie de enlaces estructurales que permiten ir moviéndose desde los patrones más genéricos a los más concretos, desde los que crean estructuras a los que añaden detalles a esas estructuras, ayudando así al usuario a seleccionar el conjunto de patrones
Aunque los lenguajes de patrones son un valor añadido a la hora de enfrentarse a la utilización real de patrones durante el desarrollo de una aplicación software, la inherente ambigüedad ligada a su descripción textual y la dificultad de su aprendizaje han hecho que surjan diferentes aproximaciones para describir formalmente los patrones de diseño y facilitar el desarrollo de herramientas de soporte para su aplicación.
42
Finalmente, hay que tener siempre en cuenta que un patrón no es algo estático, sino que evoluciona en el tiempo, y deben ser revisados tanto su descripción como su papel en el lenguaje de patrones.
3. EL PROCESO DE DESARROLLO EN E-LEARNING Las tecnologías de la información y comunicación se hallan a día de hoy presentes en prácticamente todos los ámbitos de la vida cotidiana. Su integración dentro de los procesos de enseñanza-aprendizaje es, por tanto, una necesidad: por una parte, es necesario formar al alumno para que adquiera competencias básicas en su uso, y por otra, es deseable aprovechar las ventajas derivadas de su empleo como soporte del proceso educativo. Entre algunas de dichas ventajas cabe destacar: §
§
§ § § §
Uso de material multimedia: facilita la retención y asimilación de los conceptos y aumenta la motivación del alumno al posibilitar la representación de la información de diferentes formas e involucrando diferentes sentidos al mismo tiempo. Individualización del proceso de aprendizaje: el software puede adaptar el material presentado a las características del alumno, ya sea su estilo de aprendizaje, sus conocimientos previos, el tiempo disponible, sus necesidades educativas especiales (motóricas, sensoriales y/o cognitivas) etc. Adaptación y control del proceso en manos del alumno: se puede proporcionar al alumno la posibilidad de controlar el desarrollo del proceso y tomar decisiones sobre el ritmo de aprendizaje, la secuenciación del contenido, etc. El acceso a un gran volumen de información proporcionado por Internet. Liberación de los procesos de aprendizaje de restricciones de espacio y tiempo: las actuales tecnologías permiten la articulación de distintos procesos sociales a distancia. La rapidez alcanzada por los mecanismos de comunicación permiten implementar procesos de enseñanza-aprendizaje en los que los diversos participantes se encuentren ubicados en distintos puntos geográficos e interactúen entre sí de manera asíncrona y sincrónica.
A la hora de plantear el desarrollo de una experiencia educativa en un entorno virtual surgen dos aspectos fundamentales a considerar: § §
La disponibilidad de contenidos de calidad con el formato y características requeridas, teniendo en cuenta el tipo de experiencia que se desea desarrollar. La disponibilidad de una plataforma que, además de permitir la distribución de los contenidos entre los participantes de la experiencia educativa, sirva como soporte al desarrollo del propio proceso educativo y ofrezca los servicios de autenticación necesarios, seguridad, comunicación y apoyo al desarrollo de las diferentes actividades de aprendizaje.
43
3.1. PROBLEMAS RELACIONADOS CON EL DISEÑO, DESARROLLO Y UTILIZACIÓN DE OBJETOS DIGITALES EDUCATIVOS En el contexto de la educación, la reutilización de recursos empleados en distintas experiencias educativas es un hecho cotidiano. Los buenos recursos son costosos de producir, y más en el caso de los soportados tecnológicamente que requieren para su producción no sólo conocimientos en el dominio de conocimiento del curso en sí sino también en diversas tecnologías de edición multimedia. Por este motivo se intenta rentabilizar al máximo la inversión de tiempo y esfuerzo asociada a su creación mediante diseños que permitan su empleo en más de un contexto educativo. En otras ocasiones, en cambio, resulta más económico hacer uso de recursos desarrollados por otros productores de contenidos. Esta necesidad de reutilización ha sido clave a la hora de pasar de los largos cursos indivisibles soportados en CD-ROM de los años noventa al actual concepto de Objeto Digital Educativo (ODE). El concepto de ODE deriva de la discusión internacional que a lo largo de estos últimos años se ha desarrollado en torno al concepto Learning Object (LO). Probablemente, la definición de Objeto Digital Educativo (en inglés LO) más aceptada en la actualidad sea la proporcionada por el IEEE LTSC (IEEE, 2001): “cualquier entidad, digital o no digital, que puede ser utilizada para el aprendizaje, la educación o el entrenamiento” (p. 5). Esta definición fue posteriormente concretada por Wiley (Wiley, 2000) quien considera un objeto de aprendizaje como: “cualquier recurso digital que pueda ser reutilizado como soporte para el aprendizaje” (p. 7). Posteriormente Rehak (Rehak et al., 2003) precisó aún más las propiedades del ODE definiéndolo como: “Una entidad digital que puede utilizarse, re-utilizarse y referenciarse durante el aprendizaje soportado por tecnología” (p. 13), definición parecida a la proporcionada por Koper (2004): “cualquier recurso digital, reproducible, y susceptible de referenciarse empleado para llevar a cabo actividades de aprendizaje o de soporte, y disponible para utilizarse por todos” (p. 5). En cualquier caso, si bien no ha sido posible por el momento encontrar una definición satisfactoria, sí existe cierto consenso acerca de los requisitos funcionales que los objetos educativos deben satisfacer. Así, un objeto educativo debe ser: • • • •
Interoperable: un objeto debe estar etiquetado y catalogado con información descriptiva (metadatos) de forma que permita su almacenamiento y posterior recuperación. Reutilizable: Una vez creado el objeto debe poder ser utilizado en diferentes contextos educativos. Portable: El objeto debe poder ser utilizado en plataformas de explotación de diversos fabricantes. Perdurable: Los cambios en las tecnologías no deben implicar cambios importantes en el diseño del objeto.
44
La creación de objetos digitales educativos, bien sea mediante desagregación de objetos ya existentes o partiendo de material original, es una tarea complicada que implica varios desafíos, de entre los cuales quizás el más importante sea el de su segmentación. Tal y como señala Naeve (1999): “Cuando se diseña un curso tradicional el autor trata de conectar contenido con contexto, identificando la audiencia, los pre-requisitos de conocimiento, etc. Por el contrario, cuando se diseña un componente de conocimiento se separa al contenido del contexto” (p. 10). La separación de objeto y contexto es el primer paso para la reutilización, y la forma más sencilla de lograrlo es segmentando el contenido educativo en objetos educativos más pequeños e independientes entre sí. Los objetos educativos de menor tamaño están dotados de una mayor flexibilidad, de forma que debería resultar más sencillo reutilizarlos en distintos contextos. Sin embargo, cuanto mayor sea la segmentación, mayor será el riesgo de generar objetos que pierdan el propósito educativo. Por otra parte, construir una experiencia educativa a partir de objetos educativos demasiado segmentados puede resultar muy costoso: será necesario localizar un mayor número de objetos compatibles entre sí, revisarlos, ensamblarlos, etc. Rehak et al. (2003) describen ocho pasos distintos a la hora de hacer uso de un Objeto Digital Educativo: 1. Búsqueda de ODEs (interoperabilidad) Un primer paso supone la localización de los objetos adecuados para la experiencia educativa que se desea crear. Dicha localización se lleva normalmente a cabo a través de búsquedas en repositorios donde los objetos son almacenados junto con una serie de metadatos que facilitan su identificación, como por ejemplo el Repositorio AGREGA (Banco Federado de ODE’S de Administraciones Educativas Españolas). http://www.proyectoagrega.es/default/home.php 2. Identificar el objetivo y propósito del ODE Una vez localizados ciertos ODEs candidatos se analizaran en detalle sus características, evaluando su concordancia con los requisitos de la experiencia educativa que se desea construir. Por lo general las características de los ODEs son especificadas por medio de metadatos para cuya descripción se han propuesto diferentes estándares, como por ejemplo la Norma UNE-71361 Perfil de Aplicación LOM-ES v1.0 (www.lom-es.es). Sin embargo, este tipo de descripción no siempre resulta suficiente para definir con claridad los objetivos y el propósito de un ODE, especialmente cuando su funcionalidad es combinada con la de otros ODEs en un determinado proceso educativo. 3. Asegurar (identificar) la calidad de un ODE Es necesario que el instructor posea una estimación de la calidad del ODE del que va hacer uso. Una vez más el empleo de metadatos no resulta suficiente para llevar a cabo esta tarea ya que, si bien permiten el almacenamiento de las
45
opiniones de los usuarios acerca de su experiencia en el del ODE, no ofrecen un mecanismo objetivo de estimación de calidad que permita la comparación directa de la misma dados dos ODEs distintos que sirven al mismo propósito educativo. 4. Acceso y adquisición de ODEs Para asegurar la portabilidad del ODE a distintas plataformas se han propuesto una serie de especificaciones y estándares que tratan de establecer acuerdos sobre la manera en que los contenidos deben ser empaquetados (IMS Global Learning Consortium, 2004), la forma en que el ODE interactuará en ejecución con el sistema (ADL, 2003), cómo especificar preguntas y tests (IMS Global Learning Consortium, 2006), etc. El grado de adopción de dichos estándares es variado, en parte debido a la aún reciente aprobación de algunos de ellos y en parte a la falta de herramientas de autor que permitan la creación de contenidos que los cumplan y sean fáciles de utilizar (Koper, 2004). Por otra parte es necesario examinar los derechos de copyright y analizar los límites definidos para el uso y explotación del ODE.
5. Reutilización y adaptación de ODEs En muchos casos resulta difícil encontrar un ODE que satisfaga todas las necesidades del proceso educativo en construcción, por lo que puede ser necesario que el instructor tenga que adaptar ciertas características del mismo al nuevo contexto de uso. Para llevar a cabo dichas modificaciones es preciso que el instructor conozca en profundidad la semántica y características del ODE y disponga, además, de los debidos permisos para llevar a cabo dichas modificaciones. 6. Estructuración de ODEs en una experiencia educativa Una vez seleccionados el conjunto de ODEs que van a ser empleados a lo largo de la experiencia es necesario definir cómo van a ser estructurados a lo largo de la misma, en qué secuencia se presentarán, cuál será el uso que los distintos participantes harán de ellos, etc. En la actualidad existen diversas especificaciones que permiten describir la estructura y el desarrollo de la experiencia educativa, entre las que se cuentan las elaboradas por IMS Global Learning Consortium (2003a; 2003b). 7. Entrega del ODE Una vez ensamblados los ODEs dentro de un determinado diseño instruccional, los participantes del proceso educativo interactuarán con ellos a través de una determinada plataforma. Existen diversos estándares, por ejemplo SCORM (Advanced Distributed Learning (2004), que definen la forma de dicha interacción, (ODE-ODE y ODE-Plataforma)
46
8. Mantenimiento del ODE Una vez el ODE ha sido creado y ha pasado a explotación deben de ser tenidas en cuenta las labores de mantenimiento del ODE. Estas labores pueden incluir la actualización de su información y diseño para adaptarlo a cambios tanto de contenido como de tecnología utilizada, actualización de la información almacenada en los metadatos, etc. Como se puede observar el proceso no es trivial y requiere conocimiento de diversos estándares y mecanismos de especificación no siempre conocidos por los desarrolladores de experiencias de e-learning.
3.2. PLATAFORMAS DE EXPLOTACIÓN A la hora de analizar las soluciones informáticas que en las últimas décadas se han desarrollado con objeto de dar soporte a los procesos de enseñanza, podemos distinguir dos tipos de enfoques distintos: por un lado el seguido por los Intelligent Tutoring Systems (ITS) y los Sistemas de Educación Adaptativos e Inteligentes en Web (AIES) y por otro, el empleado en el desarrollo de Computer-Based Training (CBT) y Learning Management Systems (LMS). En el primer caso el énfasis recae en la obtención de sistemas capaces de adaptar automáticamente el proceso de aprendizaje a las características y necesidades del alumno, mientras que en el segundo se persigue, desde un enfoque más comercial, el desarrollo de entornos virtuales que proporcionen los servicios necesarios para el desarrollo de experiencias educativas. En esta sección nos centraremos en éstos últimos que son los que suelen emplearse al producir cualquier experiencia de e-learning. Los Learning Management Systems (LMS) o Sistemas de Gestión del Aprendizaje son aplicaciones software que automatizan las tareas de administración, gestión y monitorización de procesos educativos. Las prestaciones y componentes de un LMS varían según la plataforma, pudiendo incluir: • • • • • •
Gestión del calendario del curso. Gestión de los contenidos del curso. Elementos que faciliten la comunicación entre los participantes del curso: foros, chats, videoconferencia, etc. Mecanismos para generar visiones personalizadas del curso. Monitorización de las actividades de los estudiantes. Mecanismos de evaluación.
El origen de los LMS se encuentra en los Content Management Systems (CMS), o sistemas de gestión de contenidos, que se comenzaron a desarrollar a mediados de la década de los noventa y que tenían por objeto facilitar la creación de forma colaborativa de documentos y contenidos, así como su gestión, publicación y presentación. La mayoría de los CMSs están formados por un repositorio central donde se almacenan los contenidos y una aplicación web que permite la gestión de los mismos, de tal forma que el aspecto del sitio web y de los contenidos puedan ser actualizados por cualquier usuario autorizado desde cualquier ordenador conectado a Internet.
47
Ejemplos de CMS comerciales son Vigentte (http://www.interwoven.com), Interwoven (http://www.vignette.com/), Documentum (http://www.documentum.com) , Microsoft CMS (http://www.microsoft.com/cmserver/default.mspx) o Hyperwave (http://www.hyperwave.com/e/) y dentro del grupo de software libre OpenACS (http://openacs.org), Plone (http://plone.org), PHP-Nuke (http://phpnuke.org/) y OpenCMS (http://www.opencms.org/en). El uso de CMSs fue rápidamente adoptado en el entorno educativo tanto como complemento a la educación presencial, permitiendo a los usuarios acceder y recuperar los recursos empleados durante el curso, como para dar soporte a la educación no presencial, sirviendo para almacenar y distribuir los mismos cursos que antes eran comercializados empaquetados en CD-ROMs. Pronto se desarrollaron nuevas tecnologías con el fin de aumentar las prestaciones ofrecidas por los CMSs, de tal forma que se permitiese administrar los distintos cursos y los recursos asociados a los mismos, interactuar con los alumnos, obtener informes acerca de su progreso y resultados, etc., dando lugar así al nacimiento de los primeros Learning Management System (LMS). Dentro de este tipo de sistemas se suele distinguir bajo el término Learning Content Management Systems (LCMS) aquellos sistemas que, proveyendo prestaciones parecidas a los LMSs, se centran en la gestión de los contenidos didácticos más que en la gestión de cursos. En la práctica, la distinción entre los dos tipos de sistemas es mínima y a menudo se utilizan ambas expresiones para designar a las mismas aplicaciones. Dentro de esta categoría de sistemas los más conocidos serían WebCT (http://www.webct.com/webct/) y Blackboard (http://www.blackboard.com/us/index.bbb), como entornos comerciales, y Moodle (http://moodle.org/) y Claroline (http://www.claroline.net/) como software libre. A la hora de elegir la plataforma o LMS que servirá como soporte a una determinada experiencia educativa es necesario examinar las características de la misma y evaluar si los servicios que el LMS ofrece nos permitirán el desarrollo adecuado de las actividades de aprendizaje planificadas. Así, entre otros aspectos, será necesario establecer qué tipo de roles desempeñarán los participantes de la experiencia, qué tipo de interacciones llevarán a cabo, cómo realizarán la evaluación del alumno, qué información sobre su actividad será necesario almacenar, etc. Por otro lado, y con independencia del tipo de proceso educativo a implementar, conviene considerar también aspectos como la escalabilidad de la plataforma, la facilidad de integración de la misma con otras herramientas y servicios, los mecanismos que ofrece para la importación/exportación de datos, el modo de gestión del perfil y CV del participante, etc. Mención aparte merece considerar la compatibilidad de la plataforma con los distintos estándares de e-learning que han ido surgiendo en los últimos años y la disponibilidad de contenidos educativos en los formatos requeridos por la plataforma. Dado el alto coste asociado a la generación de recursos educativos y la proliferación de sistemas desarrollados por distintos fabricantes, ha surgido la necesidad de establecer acuerdos a la hora de desarrollar plataformas y contenidos de tal forma que se garantice la interoperabilidad y reutilización de los recursos desarrollados y se preserven las inversiones realizadas. Así, son muchos los estándares y especificaciones que han aparecido en los últimos años y que pretenden establecer acuerdos en cuanto a la manera de describir los contenidos [Learning Object Metadata (IEEE, 2001)], los
48
formatos para su empaquetado [IMS Content Package (IMS, 2004)], la comunicación con el LMS [SCORM (ADL, 2003)], la descripción de pruebas de evaluación [IMS Question & Test Interoperability (IMS, 2006)], descripción de perfiles de alumno (IMS Learner Information Package (IMS, 2001)], etc. Una plataforma compatible con dichos estándares garantizaría, en principio, la disponibilidad de contenidos, si bien se debe tener en cuenta que algunas de estas especificaciones son aún recientes y su grado de penetración en el mercado es, por el momento, reducido.
4. PATRONES EN E-LEARNING Diseñar un sistema de e-learning es un problema complejo que involucra el diseño de tareas y recursos de aprendizaje y de espacios sociales que posibiliten que cada estudiante aprenda de manera efectiva. Además, el desarrollo de los sistemas elearning tiene que abordarse desde múltiples perspectivas: la interoperabilidad y portabilidad de plataformas y contenidos, la optimización de los sistemas para personas con discapacidades, etc. Los profesionales que se encargan de estos desarrollos incluyen profesores que suelen actuar como administradores de la plataforma y coordinadores del curso, diseñadores de e-learning que actúan como expertos metodológicos, diseñadores multimedia, diseñadores web, etc. Todos ellos, y en particular aquellos diseñadores principiantes, necesitan de herramientas y métodos para ayudarles a producir diseños efectivos y dotarles de los conocimientos, a menudo multidisciplinares, necesarios para abordar este reto. En el dominio de las aplicaciones e-learning, existen pocas propuestas para dar soporte a los diseñadores y desarrolladores de este tipo de aplicaciones. Se podría pensar en el uso o adaptación de principios, metodologías y prácticas procedentes de la ingeniería del software por tratarse de un sistema software. Sin embargo, las actividades de desarrollo son llevadas a cabo por usuarios finales y profesionales del e-learning, que no necesariamente tienen que tener habilidades o capacidades adquiridas de la ingeniería del software. Por lo tanto, aplicar principios, metodologías y prácticas procedentes de esta área puede ser más contraproducente que beneficioso. Normalmente, a la hora de enfrentarse al desarrollo de estos sistemas se requieren expertos de diferentes campos, como expertos en aprendizaje (psicólogos y pedagogos), ingenieros web, ingenieros de usabilidad, ingenieros de ipo, programadores, es decir, se necesita un equipo multidisciplinar que no suele estar al alcance de todos los proyectos. Por consiguiente, para mejorar la productividad de este tipo de aplicaciones hay que abandonar las aproximaciones basadas en desarrollos desde cero y hacer uso de soluciones existentes que ya hayan sido aplicadas, probadas en proyectos exitosos y en particular, que permitan la asimilación y reutilización del conocimiento experto por parte de los diseñadores de e-learning, haciendo accesible esa multidisciplinaridad necesaria.
49
Como ya hemos visto en otros dominios de aplicación, los patrones son un medio efectivo tanto para comunicar decisiones de diseño como ayudar a centrarse en soluciones tangibles para problemas recurrentes. Los patrones representan un conocimiento y planificación previos que asisten al usuario final. Por tanto, una manera efectiva de desarrollar sistemas de e-learning podría pasar por el uso de patrones. De hecho, la comunidad de e-learning no es ajena a la utilización de patrones ni a los beneficios de éstos, como veremos en las siguientes secciones. Los patrones se pueden aplicar de manera casi natural porque los materiales didácticos y las herramientas de aprendizaje pueden mantener una estructura relativamente “estable”, que hace posible “registrar” una solución que se puede aplicar y volver a aplicar. También veremos cómo los patrones que se pueden considerar en este área no tienen que ser exclusivamente pedagógicos, sino que se pueden aplicar patrones de otras áreas como son los patrones web, de interacción, de usabilidad y de seguridad, puesto que al final se trata de construir un sistema software que dé soporte al proceso de aprendizaje, y para este cometido son muchos los tipos de conocimientos necesarios.
4.1. ¿POR QUÉ PATRONES PARA E-LEARNING? Los profesionales quieren consejos u orientación basados en una sólida investigación que soporte un proceso de e-learning efectivo, pero cuando estos consejos son demasiado preceptivos o basados en un único modelo, no les ayudan a crear diseños innovadores y adaptados a un particular contexto. Además, podemos encontrar una gran cantidad de problemas redundantes en el desarrollo de aplicaciones web. Los patrones de diseño de e-learning ofrecen una herramienta para el diseño educativo sistemático, intentando reutilizar el conocimiento de diseño adquirido en experiencias previas y dar soporte al trabajo multidisciplinar de los equipos de desarrollo de los sistemas e-learning. Así, los patrones de diseño para e-learning deberían dar consejo y orientación sobre cómo crear fácilmente actividades para entornos de aprendizaje, proporcionando ejemplos reales. Además, los patrones se podrían utilizar para expresar valores educacionales, permitiendo a los estudiantes usar las ideas en la configuración de sus propios entornos de aprendizaje y así tener más control y responsabilidad de su propio aprendizaje (ELEN, 2008). Finalmente, los patrones pueden jugar un rol importante como ayuda para los técnicos, profesores, diseñadores educacionales y expertos en la materia a desarrollar permitiéndoles compartir un lenguaje más rico, y facilitando la comunicación entre equipos inter-disciplinares y con diferentes perspectivas. Según Goodyear (2005) los patrones son un instrumento adecuado para codificar, compartir y hacer uso del conocimiento relacionado con el diseño educativo. Concretamente los patrones pueden servir para: §
Proporcionar al profesor-diseñador una serie de ideas y principios de diseño fácilmente asimilables.
§
Proporcionar estas ideas de forma estructurada, de tal forma que las relaciones entre los componentes del diseño (patrones de diseño) sean fáciles de comprender.
50
§
Crear articulaciones claras entre problemas de diseño y soluciones de diseño, y ofrecer fundamentos que sirvan para establecer puentes entre filosofías pedagógicas, evidencias obtenidas de la investigación y conocimiento empírico.
§
Codificar el conocimiento de forma que proporcione soporte a un proceso de diseño iterativo, fluido y extensible a lo largo de horas o días.
4.2. PROYECTOS ACTUALES Durante los últimos años, varias propuestas de patrones de diseño para e-learning han sido publicadas en diferentes conferencias y también se han desarrollado varios proyectos relacionados con esta temática. Estas iniciativas no comparten un único foco de interés, sino que podemos agruparlas según tres tipos de objetivos en el diseño: software, materiales de aprendizaje y pedagogía. Entre las propuestas relacionadas con el diseño de sistemas software de e-learning encontramos (Asensio et al., 2004) que proponen el uso de patrones para el diseño de sistemas de aprendizaje colaborativo. De manera similar, Avgeriou et al. (2003) proponen un lenguaje de patrones para LMSs. Este trabajo fue utilizado para lanzar el proyecto europeo E-LEN (ELEN, 2008), dedicado a recoger y promover el uso de patrones para e-learning. Respecto al diseño de buenos materiales de aprendizaje, encontramos en la obra de Frizell y Hübscher (2002) un lenguaje de patrones para dirigir problemas de diseño, desde la presentación global de un curso hasta actividades de aprendizaje específicas. En el proyecto europeo E-Dilema (EDILEMA, 2008) se propuso un lenguaje de patrones para ayudar en la selección y diseño de objetos de aprendizaje. Otra contribución es la propuesta por Derntl y Motschnig (2004) compuesta de patrones para aprendizaje basados en proyectos y aprendizaje semi-presencial (blended). Existe otro conjunto de propuestas relacionadas con el diseño de buenas prácticas didácticas, pero que no involucran directamente la tecnología. Estos trabajos están relacionados con teorías educativas y disciplinas de enseñanza, incluyendo patrones para la educación en el aula (Anthony, 1996), grupos de estudio (Kerievsky, 1999), o seminarios (Fricke y Voelter, 2000). La iniciativa más relevante es el proyecto Patrones Pedagógicos (PPP, 2008) que recoge diferentes tipos de patrones que intentan capturar el conocimiento experto en la práctica de enseñar y aprender. En esta sección recogemos los proyectos más relevantes que se están llevando a cabo por diferentes universidades para dotar a los diseñadores de sistemas e-learning de un repositorio de patrones. A continuación, para cada uno de estos proyectos se realiza una breve descripción de su alcance, explicando qué tipos de patrones se recopilan, cuál es el formato utilizado para describirlos y se enumeran los patrones que se pueden encontrar en dichos repositorios.
51
4.2.1. PROYECTO E-LEN El proyecto E-LEN (ELEN, 2008) se desarrolló dentro del marco del programa Socrates con el fin de formar una red de centros e instituciones relacionadas con el área del e-learning y la aplicación de tecnologías en el campo del aprendizaje. Sus objetivos principales eran: § § §
Establecer la infraestructura y estructura organizativa entre los distintos centros que conforman la red de e-learning. Identificar y reunir un conjunto de buenas prácticas, patrones de diseño y ‘rutas de investigación’ (research roadmaps) relacionados con el e-learning, así como difundir los resultados obtenidos. Producir un conjunto directrices y recomendaciones para la creación de centros de e-learning.
En el proyecto, que tuvo una duración de 24 meses y fue desarrollado entre 2002 y 2004, participaron las siguientes instituciones y universidades: § § § § § § § § § § §
University of Cyprus. Department of Computer Science The Learning Lab, University of Maastricht (NL) University of Lancaster - CSALT, The Centre for Studies in Advanced Learning Technology (UK) A Priori Ltd (UK) Open Universiteit Nederland (NL) Ilmenuau Technical University (DE) Hypermedia Open Center – Politecnico di Milano (IT) InterMedia, University of Bergen (NO) Norgesnetter med IT for Open Læring - NITOL (NO) National Technological University of Athens. Institute of Communication and Computer Systems (ICCS) (GR) Universita della Svizzera Italiana
Uno de los objetivos del proyecto ELEN ha sido el desarrollo y difusión de conocimiento de buenas prácticas para el diseño e implementación de entornos de aprendizaje soportados tecnológicamente. Dicho conocimiento debe ser presentado de forma que facilite su comprensión y aplicación por parte de los diferentes tipos de profesionales del ámbito del e-learning. Dado que la utilidad de los patrones a la hora de simplificar la reutilización y la comunicación de soluciones a problemas de diseño recurrentes ha sido demostrada empíricamente (Prechelt et al, 2001), ésta fue la técnica escogida para describir y presentar el conocimiento que se fuese recopilando. El desarrollo de los patrones fue llevado a cabo a través de cuatro grupos de trabajo distintos, cada uno de los cuales se concentró en un área particular dentro del ámbito del e-learning: § § § §
Recursos y sistemas de aprendizaje (learning resources and Learning Management Systems) Aprendizaje permanente (lifelong learning) Aprendizaje colaborativo Aprendizaje adaptativo
52
Cada grupo estaba formado por un conjunto de expertos en dichas áreas, encargados de explorar el dominio correspondiente e identificar los problemas relevantes dentro del mismo. A partir de dicho conjunto de problemas se elaboraron conjuntamente diversas propuestas de patrones que encapsulasen tanto la definición del problema como una solución adecuada. Una vez realizadas las propuestas y con el fin de revisar y mejorar la definición inicial de los patrones a un nivel conceptual, se inició un proceso de depuración en el cual intervinieron todos los centros integrantes del proyecto E-LEN. Para garantizar la calidad del resultado y comprobar que el conjunto de patrones obtenidos se corresponde con la demanda de los profesionales encargados de implementar procesos educativos soportados mediante TIC, se llevó a cabo un proceso de evaluación final que abarcó tanto el proceso de producción de los patrones como el propio resultado obtenido. Dicho proceso incluyó tanto análisis cuantitativos y cualitativos de las interacciones entre los participantes de los diferentes grupos de trabajo, como el desarrollo de un ‘mapa de rutas de investigación’ que permitía analizar las relaciones entre patrones candidatos, patrones producidos y líneas de investigación aún abiertas. 4.2.1.1. Formato de los patrones El formato de la plantilla escogido para la descripción de los patrones buscó integrar por una parte elementos comunes a iniciativas pertenecientes a otras áreas, como descripción del problema contexto, elementos que juegan un rol en la solución y la propia solución, y por otra, las ideas relacionadas con los ‘patrones de investigación’. Por ‘patrones de investigación’ se entiende aquellos patrones que describen problemas para los cuales aún no se ha encontrado una solución satisfactoria. Con este fin, se incluyó dentro del formato de plantilla un elemento ‘líneas de investigación abiertas’ que sirve para identificar dichas cuestiones sin resolver y que a la vez permite clarificar las relaciones existentes entre patrones. El formato final de los patrones desarrollado en el proyecto es el siguiente: Nombre (Name): El nombre elegido para el patrón debe: § Cubrir el contenido del patrón, tanto el problema como la solución § Ser significativo y fácil de recordar § Dar idea de asociaciones relacionadas con el problema y soluciones descritas Categoría (Category): El patrón debe pertenecer a una o varias de las siguientes categorías: § Pedagógico § Organizativo § Técnico Resumen (Abstract): Párrafo que describe los elementos claves del patrón.
53
Problema (Problem): Descripción detallada del problema. Análisis (Analysis): Análisis de las dificultades relacionadas con el patrón y de la necesidad de encontrar una solución. Soluciones conocidas (Known solutions): Propuesta de solución al problema descrito que entre dentro de la categoría de ‘buena práctica’. Puede estar basada en la experiencia o ser desarrollada desde un punto de vista teórico. Líneas de investigación (Research questions): Descripción de los problemas que aún no han sido resueltos y propuestas de métodos de investigación adecuados para abordarlos. Otras observaciones. Contexto (Context): Descripción del tipo de contexto en el que la solución es aplicable. Condiciones (Conditions): Descripción de factores críticos que puedan afectar a la implementación de la solución (ej.: roles necesarios, tipos de recursos, etc.) y recursos requeridos para solucionar el problema. Discusión/consecuencias (Discussion/consequences): Consecuencias del uso, implementación de la solución y otros comentarios. Referencias (References): Referencias del patrón. Patrones relacionados (Related patterns): Patrones de diseño e investigación relacionados. Autores (Author(s)): Fecha (Date): Fecha en la que el patrón se completó. Reconocimientos (Acknowledgments): Menciones a personas, fuentes de información y ayuda, etc. 4.2.1.2. Catálogo de patrones de E-len En total se han descrito 34 patrones que pueden ser agrupados en tres grupos distintos atendiendo al carácter de su contenido. A continuación, se muestra una tabla donde los patrones están organizados por categoría, y para cada uno de ellos se adjunta una descripción del problema que tratan:
54
Tabla 4.2.1.2.a Patrones de la categoría “Recursos y sistemas de aprendizaje”. Recursos y sistemas de aprendizaje Nombre del Patrón Descripción Aprendizaje colaborativo asíncrono Facilitar a los estudiantes e instructores colaboración e interacción asincrónica para enganchar a los estudiantes en procesos de resolución de problemas, pensamiento crítico, y ser capaz de guiar y evaluar esas interacciones Gestión de cuestionarios on-line Crear, enviar y evaluar cuestionarios Web Gestión de grupos de estudiantes Crear y administrar grupos de estudiantes y asignar proyectos a esos grupos Herramientas de estudio Ayudar a los estudiantes en el estudio de los recursos de aprendizaje en vez de estar limitados a leer simples páginas HTML Aprendizaje colaborativo síncrono Facilitar a los estudiantes e instructores interacción sincrónica, colaborando y cooperando con pares Creación y personalización de cursos Ayudar al instructor en la construcción de cursos on-line en LMS para que alguna de las tareas que necesitan realizar pueda ser automatizada Facilitar a los instructores un modo Entrega de E-Books consistente y sencillo para crear y estructurar libros electrónicos de cursos usando contenidos hipermedia Gestión de tareas a estudiantes Crear tareas on-line para estudiantes Seguimiento del alumno
Hacer un seguimiento del progreso de los estudiantes mientras interaccionan con el LMS e informar a los estudiantes de las actividades que ya han realizado en el curso
Tabla 4.2.1.2.b Patrones de la categoría “Aprendizaje permanente”. Aprendizaje permanente Descripción Los tipos de materiales multimedia que se deberían utilizar en las lecciones y cómo pueden afectar al proceso de aprendizaje Construcción de concepto Directrices para la construcción de un concepto cuando es el objetivo del aprendizaje Construcción de un sistema de valores Directrices para transformar los sistemas de valores por medio de la pedagogía Nombre del Patrón Principio de coherencia
55
Aprendizaje contemplativo
Principio de contigüidad Desarrollo como objetivo de la educación
Aprendizaje hipertextual
Construcción de conocimiento (Aprendiendo el significado de las palabras) Rutinas
Estrategias de aprendizaje
Aprendizaje a través del descubrimiento
Aprendizaje a través de la experiencia
Aprendizaje a través de discursos realistas
Aprender a negociar Principio de modalidad
Principio multimedia
Facilitar un aprendizaje contemplativo, entendido como participación activa e interior en cosas como la belleza o los secretos de la naturaleza Presentación de textos y gráficos de un modo eficaz Alcanzar un estado más alto de desarrollo. Explica las diferencias entre enseñar y aprender Dar soporte al proceso de aprendizaje hipertextual, entendido como el acceso a cualquier tipo de información Fomentar la adquisición del significado de las palabras cuando la meta del aprendizaje es construir conocimiento, p.e. aprender un lenguaje Ayudar en el desarrollo de rutinas de aprendizajes automatizadas cuando el objetivo del aprendizaje es construir rutinas mentales y motoras a través de repeticiones Fomentar el aprendizaje de estrategias para mejorar la reflexión metacognitiva y el efecto de aprendizaje Facilitar el aprendizaje por descubrimiento, el cual es conseguido mediante procesos de búsqueda reales. Este patrón es adecuado para ser usado en el contexto del aprendizaje orientado a un objetivo Facilitar el aprendizaje a través de la experiencia, tratando de imitar la forma en que tiene lugar en la vida diaria Ayudar a aprender a través de la escucha de unos a otros. Tomando el rol de otros participantes se ayuda a comprender otros puntos de vista distintos al propio Tratar de facilitar la adquisición de habilidades de negociación La información explicativa de gráficos y animaciones debe ser proporcionada de forma oral. La información visual adicional puede provocar sobrecarga cognitiva y dificultar el aprendizaje Conjunto de directrices que deben ser tenidas en cuenta a la hora de presentar texto y gráficos conjuntamente en una pantalla
56
Principio de personalización
Resolución de problemas
Principio de redundancia
Aprendizaje social Soporte a la elección mediante feedback obtenido del comportamiento colectivo
Modelo de motilidad
Directrices sobre el uso de agentes pedagógicos y presentación conversacional de contenido Directrices para fomentar el desarrollo de competencias relacionadas con la resolución de problemas Directrices sobre cuándo utilizar información en formato audio y texto de forma redundante Reflexiones sobre cómo facilitar el aprendizaje de habilidades sociales Proporcionar soporte a la toma de decisiones del participante mediante el examen de las acciones llevadas a cabo por el resto de integrantes de la comunidad Proporcionar soporte al aprendizaje por motilidad
Tabla 4.2.1.2.c Patrones de la categoría “Aprendizaje colaborativo”. Aprendizaje colaborativo Nombre del Patrón Descripción Formación de grupos para aprendizaje Formar grupos para su buen colaborativo funcionamiento en un aprendizaje colaborativo en un contexto educacional Juntar estudiantes en grupos para Conseguir que los alumnos on-line confíen los unos en los otros colaborar y que confíen los unos en los otros Moderación de grupos de alumnos onDeterminar las actividades que un line moderador debe realizar para facilitar un aprendizaje eficaz en grupos on-line utilizando comunicación asíncrona Proveer información personal Proporcionar información sobre la identidad de las personas para proyectar una imagen mental de los demás y promover la colaboración Apoyo a tipos identificables de Diferentes tipos de comunicación son comunicación necesarios para alcanzar un acuerdo en la solución a un problema
57
Tabla 4.2.1.2.d Patrones de la categoría “Aprendizaje adaptativo”. Aprendizaje adaptativo Nombre del Patrón Descripción Datos demográficos Datos objetivos no relacionados con la interacción del usuario que deberían ser recogidos en el modelo de usuario para ser utilizado en un sistema web educacional adaptativo. Objetivos del usuario Determinar la información que debería ser considerada como metas del usuario en un modelo de usuario de un sistema web educacional adaptativo. Definición del modelo de usuario En un sistema adaptativo las características relacionadas con el aprendizaje de cada estudiante son esenciales y ofrecen así una mejor experiencia. Inicialización del modelo de usuario Antes de toda la interacción con el sistema el modelo de usuario tiene que ser inicializado. Mantenimiento del modelo de usuario Durante la interacción con el curso, muchas datos del usuario cambian, como el conocimiento asumido por el usuario, datos de uso, etc. Por lo tanto, el modelo de usuario tiene que ser adaptado a las nuevas realidades Preferencias del usuario La información que debería ser incluida como preferencias de usuario en un modelo de usuario que va a ser usado en un sistema web
4.2.2. PROYECTO E-DILEMA El proyecto E-DILEMA (E-resources and Distance Management) (EDILEMA, 2008) fue desarrollado entre los años 2001 y 2003 dentro también del marco del programa Sócrates de la Unión Europea y más concretamente dentro del conjunto de acciones Minerva. El proyecto tenía por objeto proporcionar soporte a profesores y estudiantes del ámbito universitario en el desarrollo de sus actividades académicas y se encontraba enfocado principalmente a la modalidad de aprendizaje mixto o blended learning, en el que las actividades relacionadas con el desarrollo de cursos on-line son complementadas con clases presenciales. Las actividades del proyecto se orientaban a asegurar el éxito de las experiencias de aprendizaje a distancia, por lo que buena parte de ellas se centraron en la reunión y posterior difusión de buenas prácticas relacionadas con el uso, la planificación y la implementación de sistemas de soporte a dicha modalidad de aprendizaje.
58
En el proyecto participaron las siguientes entidades: § § § § § §
University of Hradec Králové, Czech Republic Institute of Public Administration, Dublin, Ireland Leeds Metropolitan University, Leeds, United Kingdom Czecho-Moravian Society for Automation, Prague, Czech Republic EMWACGroup, Hradec Králové, Czech Republic University of Economics, Bratislava, Slovak Republic
Los resultados esperados del proyecto, tal y como aparecían enunciados en la propuesta original, eran los siguientes: § § § § §
Un estudio sobre “Tecnología y recursos electrónicos para el aprendizaje a distancia on-line“. Un repositorio de materiales y recursos de aprendizaje recuperados de una variedad de fuentes y disponibles electrónicamente. Un conjunto de pautas que ayuden a los profesores a la hora de preparar materiales efectivos y de alta calidad con el mínimo tiempo y esfuerzo. Reunir dentro del repositorio un conjunto de materiales para el estudio de las ciencias empresariales. Elaborar una propuesta piloto para la transformación de experiencias de enseñanza tradicional a e-learning.
Dentro del conjunto de actividades del proyecto E-DILEMA y con el fin de alcanzar el tercer objetivo propuesto, se desarrolló un lenguaje de patrones que proporcionase soporte al usuario a la hora de elegir el recurso educativo u objeto digital (ODE) correcto dado cierto conjunto de objetivos de aprendizaje y resultados proporcionados por el educador. Los ODEs ofrecen la posibilidad de reutilizar material educativo y reducir así la carga de trabajo asociada al diseño de un curso asegurando además la calidad del curso al emplear contenidos evaluados y probados, pero diseñadores y profesores no disponen de un método que les permita seleccionar el ODE adecuado para un determinado contexto y conjunto de requisitos. Los patrones ofrecen la posibilidad de capturar y compartir buenas prácticas a este respecto. El lenguaje de patrones propuesto consiste en una colección de patrones pedagógicos de alto nivel y patrones de diseño de interfaces que proporcionan soporte a la hora de seleccionar y diseñar actividades de aprendizaje y cursos a través del diseño de páginas individuales. Los patrones del lenguaje se encuentran organizados en las siguientes categorías: § § § § § § § §
Actividades de aprendizaje Diseño del curso Estructura del curso Gestión del curso Diseño (Layout) Navegación Acciones Soporte al usuario
59
4.2.2.1. Formato de los patrones Siguiendo los principios organizativos descritos por Chistopher Alexander (1979) se escogió el siguiente formato de plantilla para la descripción de cada patrón: § § § § § § §
Un nombre y un número de referencia. Un dibujo o fotografía que muestre un ejemplo de uso de un patrón. Un párrafo en el que se establezca el contexto, tres ‘marcas’ o ‘diamantes’ que definan el comienzo de la definición del problema y una descripción concisa del problema (en negrita). El cuerpo del problema, incluyendo la experiencia recogida sobre el mismo (motivación del patrón) y las ‘fuerzas’ que intervendrán en la resolución del mismo. Una solución (en negrita y precedida de la palabras “Por lo tanto”). Un diagrama que ilustre la solución y otras tres ‘marcas’ o ‘diamantes’ que marquen el fin de la descripción del problema. Un párrafo indicando la relación de este patrón con otros precedentes en el lenguaje de patrones.
4.2.2.2. Catálogo de patrones Este conjunto de patrones, que se encuentran listados en la tablas 4.2.2.2 a, b, c, d, e y f, fueron también organizados como un lenguaje, donde la relación entre los diferentes patrones se muestra la figura 4.2.2.2.a.
Tabla 4.2.2.2.a Patrones de la categoría “Actividades de aprendizaje”. Actividades de aprendizaje Nombre del patrón Descripción Reutilización inteligente de buenas Individuos que disponen de experiencia y prácticas recursos educativos y desean hacer uso de las posibilidades que ofrece el aprendizaje on-line pero disponen de recursos, tiempo y soporte limitado Estudiante activo Importancia de conseguir que el estudiante desarrolle un papel activo durante el proceso de aprendizaje Aprendizaje exploratorio
Aprendizaje colaborativo
Conseguir que el estudiante se implique en el proceso y desarrolle un papel activo sustituyendo la presentación lineal del material por una presentación que permita el aprendizaje exploratorio Animar a los estudiantes a colaborar en ideas, compartir experiencias,
60
intercambiar puntos de vista dándoles la oportunidad de conectar con otros estudiantes, profesores, o profesionales Proporcionar mecanismos de evaluación on-line para que los estudiantes consigan una retroalimentación de su progreso
Evaluación
Tabla 4.2.2.2.b Patrones de la categoría “Diseño del curso”. Diseño del curso Descripción Uso de distintos formatos de presentación para alumnos con distintas características y estilos de aprendizaje Determinar el estado del proceso Captar la atención del usuario y asegurarse de que está preparado para continuar con el proceso cada vez que se comienza un nuevo tema Mapa de espacios navegables El usuario necesita conocer qué puede hacer y a dónde puede ir dentro del sitio web, pero a veces dispone de demasiadas opciones donde elegir. Poner punto final a la función Indicar al usuario que ha llegado al final de una ruta de navegación Presentar información interactiva Conseguir la interacción del usuario combinando diferentes formas de comunicación Mostrar el contenido de la página Distribuir el texto de una página para facilitar su lectura y asimilación Agrupar y reescribir contenido Evitar sobrecargar al usuario con demasiada información Indicador de progreso Conseguir que el usuario conozca en qué momento del proceso se encuentra: cuánto lleva completado y cuánto le falta para terminar Página de inicio Decidir qué información presentar al usuario en la primera página teniendo en cuenta que será visitada tanto por usuarios inexpertos que no la conozcan, como por usuarios ya familiarizados con su uso Nombre del patrón Características del alumno
61
Tabla 4.2.2.2.c Patrones de la categoría “Aspecto y Distribución”. Aspecto y Distribución Nombre del patrón Descripción Distribución de la página Establecer una distribución de los elementos de la página que permita transmitir al usuario su contenido y su propósito de forma clara y concisa Usar tablas para mostrar información Empleo de tablas para presentar la información al usuario de manera que se facilite la búsqueda y localización de datos Usar gráficos Los gráficos pueden ser útiles para transmitir al usuario el propósito de la página, sin embargo su uso excesivo puede suponer también una molestia Usar color Empleo del color para situar al usuario dentro de un espacio grande de información Resumen sobre detalle Cómo presentar al usuario un gran volumen de contenido de forma que sea fácilmente comprensible y explorable Grupo pequeño de cosas relacionadas Organización de elementos y acciones de entre sí menú Símbolos visuales Utilización de elementos visuales reconocibles y comprensibles en el diseño de la interfaz
Tabla 4.2.2.2.d Patrones de la categoría “Estructura del contenido”.
Nombre del patrón Espacios navegables Paso a paso
Enlaces a otros recursos
Repetir aspecto
Menú contextual
Estructura del contenido Descripción Modo en que el usuario navegará a través del sitio web Descomposición de acciones en secuencias de pasos que el usuario debe ejecutar siguiendo un orden establecido Mejora de las prestaciones del sitio mediante la inclusión de enlaces a otros sitios Presentación del contenido de forma consistente y unificada con objeto de conseguir la rápida familiarización del usuario con la estructura y mecanismo de navegación del sitio Conseguir que el usuario conozca en todo momento qué posibilidades le son ofrecidas
62
Panel de control
Volver un paso atrás Continuar un paso adelante
Volver a un lugar seguro
Presentar adecuadamente al usuario las acciones que puede llevar a cabo de forma que pueda efectuarlas correctamente aun bajo presión o en situaciones de estrés Permitir al usuario poder volver a un paso, página o estado anterior Permitir al usuario avanzar en la ejecución de una tarea ejecutando el siguiente paso Evitar que el usuario se pierda en la navegación permitiendo siempre el acceso a un punto desde el cual se pueda reorientar
Tabla 4.2.2.2.e Patrones de la categoría “Acciones”. Acciones Nombre del patrón Descripción Diseño de formularios fáciles de usar y Obtener información introducida por el usuario que minimicen errores humanos Búsqueda de información en el sitio Implementar un mecanismo de búsqueda que permita al usuario acceder y encontrar información de manera directa Escoger de un conjunto grande Presentación y organización de un conjunto grande de elementos o posibilidades de acción Escoger de un conjunto pequeño Presentación y organización de un conjunto pequeño de elementos o posibilidades de acción Retro-alimentación Modos de comunicar al usuario el resultado o los efectos de sus acciones
Tabla 4.2.2.2.f Patrones de la categoría “Soporte al usuario”. Soporte al usuario Descripción Permitir el acceso al contenido y a la información a personas con discapacidades Consideraciones sobre el lenguaje Ofrecer la posibilidad al usuario de cambiar el idioma del sitio Nombre del patrón Accesibilidad
63
64
Resumen sobre detalle
Agrupando
Búsqueda
Tablas
Mostrar contenido página
Interactivo
Color
Lenguajes
Distribución
Página de inicio
Accesibilidad
Repetir aspecto
Enlace a otros recursos
Exploratorio
Estudiante Activo
Reutilización Inteligente
Símbolos visuales
Gráficos
Retroalimentación
Fin de función
Paso a paso
Grupos de relación
Menú Contextual
Espacios navegables
Determinar estado
Colaborativo
Atrás
Lugar seguro
Adelante
Panel de control
Mapa de espacios navegables
Conjuntos grandes
Conjuntos pequeños
Obteniendo info del usuario
Evaluación
Figura 4.2.2.2.a Mapa de relaciones de los patrones del proyecto e-Dilema
4.2.3. PROYECTO PERSON-CENTERED E-LEARNING El objetivo principal del proyecto es la captura y reutilización de patrones de aprendizaje de e-learning centrados en la persona (Person-Centered e-Learning) para difundirlos y hacerlos fácilmente aplicables. Person-Centered e-Learning (PCeL) busca combinar los beneficios del aprendizaje y enseñanza orientado a la persona (Rogers, 1983) con las opciones y oportunidad que el e-learning ofrece. La hipótesis principal del PCeL es que si se desplaza la tarea de transferencia de información al ordenador, se liberarán tiempo y recursos que pueden ser utilizados para enriquecer tanto el alcance como la profundidad del aprendizaje presencial (Motsching-Pitrick y Derntl, 2002a; Motsching-Pitrik y Holzinger, 2002b). El proyecto ha sido desarrollado por el Research Lab for Educational Technologies de la Facultad de Ciencias de la Computación (Fakultät für Informatik) de la universidad de Viena. En el laboratorio operan de forma conjunta los grupos de investigación de la Facultad de Ciencias de la Computación aunque con una cooperación cada vez mayor con otras facultades, centros y universidades. El proceso de desarrollo de los patrones está dividido en dos partes. Por un lado se captura de forma colaborativa e informal la experiencia personal de las actividades de aprendizaje desarrolladas dentro del propio departamento de ciencias de la computación de la Universidad de Viena que se completa con la experiencia aportada por otros colegas a través de una serie de reuniones. Para facilitar el desarrollo de esta primera parte del proceso se estableció una cooperación con el departamento de educación y psicología de la misma universidad y se creó una comunidad virtual de gente interesada en la aplicación del aprendizaje basado en la persona en cursos de grado. Por otro lado, una vez que se ha probado que una actividad de aprendizaje es efectiva se desarrolla el patrón propiamente dicho, modelando conceptualmente su estructura y el flujo de actividades asociado mediante Unified Modeling Language (UML) y describiendo verbalmente posibles variaciones y parámetros relacionados con su empleo. Los patrones se encuentran organizados en el repositorio y están agrupados por diferentes niveles de detalle y abstracción formando paquetes. Normalmente, las familias de patrones relaciones entre sí se agrupan en un mismo paquete que contendrá las definiciones de todos ellos además de un modelo estructural en el que se observan sus relaciones. Así, cada patrón es representado mediante un rectángulo con su nombre y las flechas blancas entre rectángulos indican que un determinado patrón refina la definición de otro (aquel al que la fecha apunta). Un patrón únicamente puede aparecer en un solo paquete. La decisión de a qué paquete pertenece cada patrón se toma por lo general comparando el propósito del paquete de patrones con el principal objetivo del patrón. En la actualidad, los patrones se hayan agrupados formando un total de seis paquetes distintos: §
Tipos de cursos (Course Types): El paquete tipos de cursos describe tipos de cursos clásicos en términos de prácticas de e-learning centradas en la persona.
65
§
§ § § §
Evaluación (Evaluation): Este paquete describe diferentes métodos para evaluar la actividad de los participantes. Incluye varios escenarios donde se combinan diferentes mecanismos de evaluación. El objetivo principal de la mayoría de los patrones de evaluación no es generar una puntuación sino definir mecanismos que permitan recuperar los datos a partir de los cuales se pueda estimar la puntuación adecuada. Feedback: Este paquete contiene un conjunto de patrones que describen diferentes formas de recuperar feedback sobre cualquier aspecto del curso o de las actividades de aprendizaje que lo componen. General: El paquete General contiene paquetes que pueden ser empleados en distintas situaciones y no encajan en ninguno de los propósitos específicos definidos en los otros paquetes. Elementos interactivos (Interactive elements): Define un conjunto de paquetes cuyo objetivo es fomentar la interacción e interactividad entre participantes, instructores, tutores y/o invitados. Aprendizaje basado en proyectos (Project-Based Learning): En este paquete se agrupan aquellos patrones que describen algún tipo de proceso de aprendizaje iterativo o incremental que puede ser expresado mediante una secuencia de hitos de proyecto.
4.2.3.1. Formato de los patrones El formato para la descripción de los patrones ha sido tomado del utilizado en una de las colecciones de patrones más influyentes de la literatura: la desarrollada por Gamma, Helm, Jonson y Vlissides (1994) para describir buenas prácticas en el campo del diseño orientado a objetos. Dicha descripción es ampliamente utilizada hoy en día dado que por una parte permite al usuario la localización de información relevante de manera rápida y por otra, permite comparar fácilmente patrones relacionados entre sí. Así, la plantilla utilizada para describir cada patrón del repositorio está formada por nueve secciones distintas. En algunos casos, ciertas secciones resultan inadecuadas o no pueden ser aplicadas a ciertos patrones por lo que no son incluidas en la descripción del mismo. En cualquier caso, las secciones nombre (name), propósito (intent), motivación (motivation) y parámetros (parameters) son siempre obligatorias. Name / Nombre Debe ser escogido de forma que capture la esencia y propósito del patrón. Intent / Propósito Una o dos frases que resuman la situación o el escenario del patrón. Esta sección, en combinación con el nombre, debe servir al usuario para identificar el patrón buscado. Motivación / Motivation Resumen de las razones que han originado la creación de este patrón. Entre los diferentes aspectos que se pueden cubrir en esta sección están:
66
§ § § § § § §
Las diferentes causas que han llevado al desarrollo del patrón. Pueden ser descritas incluyendo a la vez reflexiones acerca de su relación con teorías del aprendizaje u otros patrones. Análisis de características, problemas o defectos detectados en escenarios convencionales similares. Descripción de aspectos técnicos o requisitos tecnológicos necesarios para la implementación del patrón en el contexto del Person Centered e-Learning. La motivación del desarrollo de patrones genéricos o de muy alto nivel, puede encontrarse en ocasiones en otros sub-patrones más concretos. Reflexiones acerca de características del Person Centered teaching relacionadas con este escenario. Variaciones del patrón que pueden ser necesarias tener en cuenta a la hora de ponerlo en práctica. Se pueden incluir descripciones de partes decisivas en la secuencia del patrón que sirvan como introducción a la sección Escenario.
Escenario / Scenario Esta sección presenta el escenario de aplicación del patrón en forma de diagrama de actividades. En caso de que el diagrama no resulte del todo explicativo por sí mismo, se puede incluir una tabla que incluya descripciones verbales de las actividades. Esta sección proporciona ayuda a la hora de diseñar y guiar el proceso de aprendizaje, ofreciendo al mismo tiempo un alto grado de flexibilidad al instructor al evitar ser demasiado descriptiva. Relaciones / Relationships En esta sección se recogen las relaciones que el patrón pueda tener con otros patrones. Parámetros / Parameters Valores para el siguiente conjunto de parámetros del patrón: autor del patrón primario (primary), fuente del patrón primario (primary), categorías del patrón, alcance, tipo de presencia primaria (primary presence type), nivel de confianza, número de participantes, ayudas recomendadas, habilidades perseguidas (target skills) y resultados (output). Ejemplos / Examples Esta sección muestra ejemplos en los que el patrón ha sido aplicado o escenarios potenciales donde el patrón se considera útil. Puede ser posible que no se disponga de ejemplos para ciertos patrones, en especial para el caso de patrones muy genéricos.
67
Evaluación / Evaluation La descripción de procesos de aprendizaje mediante patrones permite la evaluación sistemática de muchos aspectos de los mismos, tanto de forma cualitativa como empírica. Algunas de las evaluaciones y estudios que se pueden llevar a cabo son: § Medir cuán adecuado o aplicable es un patrón a través de encuestas entre los usuarios: ¿Es capaz de satisfacer tantos objetivos curriculares como los especificados por el instructor? § Realizar comparativas con escenarios convencionales: ¿Qué ventajas supone la aplicación del patrón? § Investigar factores críticos que deben ser tenidos en cuenta en la aplicación del patrón en diversos escenarios de e-learning: ¿Cuáles son las claves para el éxito en su implementación desde el punto de vista del instructor, del estudiante y de la organización? § Evaluar y comprobar la importancia que, dentro de la modalidad de aprendizaje centrada en la persona, tiene la aptitud del instructor tanto a la hora de incrementar la motivación de los alumnos a participar de forma activa en el proceso, como a la hora de conseguir resultados satisfactorios. Igualmente, se persigue que en esta sección queden recogidas: § § §
Preguntas que han sido utilizadas en los cuestionarios y entrevistas de los cursos junto con las respectivas respuestas y resultados. Cuestiones de interés que aún no han sido evaluadas y que pueden ser objeto de investigación en subsiguientes aplicaciones del patrón. Fichas que recojan las reacciones de los estudiantes, evaluaciones cualitativas y transcripciones de las declaraciones hechas por los estudiantes durante los encuentros llevados a cabo al finalizar el curso.
Observaciones / Remarks Esta sección puede ser usada para incluir comentarios u observaciones acerca del patrón. Referencias / References Lista de todas las referencias citadas. 4.2.3.2. Catálogo de patrones Los patrones propuestos en PCeL se encuentran recogidos en las tablas 4.2.3.2 a, b, c, d, e y f.
68
Tabla 4.2.3.2.a Patrones de la categoría “Tipos de cursos”.
Nombre del patrón Clases interactivas
Curso de Laboratorio
Curso de aprendizaje basado en proyectos
Seminario
Tipos de cursos Descripción En cursos donde el principal objetivo es la transmisión de la información emplear elementos interactivos para minimizar la simple lectura de material Describir un tipo de cursos en el que se combina el uso extensivo de prácticas en laboratorio y con un enfoque de aprendizaje basado en proyectos Emplear escenarios de aprendizaje basados en proyectos como medio principal para el aprendizaje y evaluaciones combinadas de los proyectos para la evaluación de los participantes Se puede conseguir incrementar la participación activa con respecto a los seminarios tradicionales, intercambiando de forma previa al comienzo del seminario las contribuciones de los participantes del mismo, planificando fases de presentación en las cuales las presentaciones son breves y las discusiones extensas y utilizando evaluaciones combinadas en las fases de evaluación
Tabla 4.2.3.2.b Patrones de la categoría “Evaluación”.
Nombre del patrón Evaluación
Fases de Evaluación
Evaluación Descripción La evaluación se usa para valorar los logros alcanzados por un participante del proceso de aprendizaje. Puede ser dividida en distintas fases de evaluación a lo largo del proceso o bien llevarse a cabo una vez éste ha concluido Durante las fases de evaluación de una actividad de aprendizaje o de un curso es conveniente, por un lado, hacer uso de evaluaciones genéricas para valorar los logros de los participantes y por otro, recoger feedback acerca del desarrollo de la actividad
69
Examen
Evaluación genérica
Evaluación combinada
Evaluación del instructor
Examen de instructor
Auto-Evaluación
Auto-Examen
Evaluaciones por pares
Evalúan el progreso del participante mediante un conjunto de cuestiones predefinidas que son respondidas de forma oral o escrita Durante las fases de evaluación se combina la evaluación del instructor con otro tipo de evaluación para involucrar a los participantes del proceso en su desarrollo y recopilar distintos puntos de vista. Usar combinaciones de autoevaluaciones y evaluaciones por parejas con evaluaciones por instructor para lograr que los participantes de las actividades de aprendizaje o cursos se involucren en las fases de evaluación y al mismo tiempo se recojan tantos puntos de vista como sea posible. El instructor es el encargado de evaluar los logros de los participantes en el curso o en las actividades de aprendizaje. Este tipo de evaluación es requerida en múltiples escenarios. La evaluación se lleva a cabo de forma que tanto los criterios de valoración como la propia evaluación resulten trasparentes para los participantes El instructor evalúa a los participantes usando un conjunto estructurado de preguntas Los participantes desempeñan el papel de evaluadores de los resultados de sus propias actividades de aprendizaje. De esta forma se trata de conseguir que reflexionen y tomen conciencia de cuáles son sus puntos fuertes y débiles. Provee a los participantes con la posibilidad de evaluarse a sí mismos proporcionándoles conjuntos de preguntas junto con las respuestas correctas a las mismas Los participantes evalúan las contribuciones de otros participantes del proceso. De esta forma se potencia la participación y la interacción entre los alumnos
70
Tabla 4.2.3.2.c Patrones de la categoría “Feedback”.
Nombre del patrón Recopilar Feedback
Cuestionario
Hojas de reacción
Foros de feedback
Feedback Descripción Recopilar las opiniones de los participantes del proceso para subsiguiente análisis y posterior mejora de los escenarios de aprendizaje Conjunto de preguntas acompañadas de respuestas escaladas que los participantes deben rellenar para proporcionar, de una forma estructurada, feedback acerca del desarrollo del proceso Los participantes proporcionan sus opiniones acerca del desarrollo del proceso de aprendizaje de forma abierta y desestructurada Se solicita a los participantes que colaboren participando en diversos hilos de discusión abiertos por el instructor en cierto foro. Permite recopilar información de feedback de forma semi-estructurada
Tabla 4.2.3.2.d Patrones de la categoría “General”.
Nombre del patrón Reconocimiento de logros
Fases alternas
Curso
Recolección
Diario
General Descripción Con objeto de incrementar la motivación se recompensa con certificados de reconocimiento de logro a aquellos participantes cuyas contribuciones hayan resultado de alta calidad Una de las características principales de los escenarios de aprendizaje semipresenciales es la alternancia de encuentros o sesiones cara a cara con otros desarrollados de forma on-line Cada curso es organizado en tres fases consecutivas: fase preliminar, fase principal y, finalmente, fase de evaluación Recopilar información mediante publicación de solicitudes de entregas y publicación de las correspondientes entregas en respuesta a la solicitud Hacer transparentes los esfuerzos de los participantes permitiendo que lleven a cabo un seguimiento de su trabajo a través de diarios. Esto es especialmente
71
Reunión inicial
Fases Preliminares
Fases de Presentación
Publicar
Reunión de plantilla
Espacios de trabajo en grupo
importante en procesos de aprendizaje iterativos o colaborativos Explicar el estilo del curso así como sus objetivos en una reunión o encuentro inicial. Considerar durante el encuentro la posibilidad de cambiar a un estilo de curso convencional Para que puedan ser analizados y discutidos durante el desarrollo de la reunión inicial, publicar previamente al comienzo de la misma cuál será el contenido del curso, los recursos relevantes, así como la información sobre el estilo, actividades, objetivos, etc. Permitir que los participantes se preparen para las reuniones intercambiando sus contribuciones de forma previa al comienzo de las mismas. De esta manera se consigue reemplazar el escenario clásico de “largas presentaciones seguidas de breves discusiones” por discusiones activas seguidas de breves presentaciones Hacer disponible un determinado elemento de información (por ejemplo, texto, fichero o formulario) a una determinada persona, rol, grupo de roles o personas, o toda persona con acceso a una determinada localización. Si hay más de un persona implicada en la organización o ejecución de un determinado curso o actividad de aprendizaje, dichas personas deben realizar reuniones periódicas donde sincronizar procesos y discutir la evolución de posibles problemas Proporcionar a los grupos espacios de trabajo donde puedan crear, almacenar y compartir sus contribuciones y otros documentos
72
Tabla 4.2.3.2.e Patrones de la categoría “Elementos interactivos”. Elementos interactivos Nombre del patrón Descripción Aprobación Los instructores aprueban las propuestas que cumplan las normas publicadas junto con las peticiones de propuestas Tormenta de ideas (Brainstorming) Recopilar y, posteriormente, publicar las ideas recogidas a lo largo de reuniones de tormenta de ideas llevadas a cabo tanto de forma presencial como on-line Chat Proporciona facilidades para comunicación simultánea entre participantes, instructores, tutores y/o invitados Comunicación soportada mediante Para permitir la interacción y el ordenador intercambio de información entre los participantes del proceso de forma independiente al momento de conexión o a su localización geográfica, es necesario proporcionar tanto medios de comunicación sincrónica como medios de comunicación asincrónica Considerar estilo convencional Ofrecer a los participantes la opción de cambiar a un estilo de curso convencional Consulta Proporcionar medios suficientes para que los participantes puedan contestar de forma sincrónica o asincrónica a consultas planteadas por profesores acerca de diversas cuestiones o problemas Elaborar objetivos y expectativas Recopilar el conjunto de objetivos y expectativas que los participantes tienen para el curso o para las actividades de aprendizaje específicas. Intercambio de contribuciones Permitir que los participantes intercambien y discutan sus contribuciones y sus ideas on-line Recopilación de información Los participantes y los instructores interactúan con el objetivo principal de recoger información que debe ser posteriormente compartida y puesta en común entre todos Elemento interactivo Este patrón genérico representa el conjunto de actividades de aprendizaje que implican participación activa e interacción entre participantes, instructores y tutores
73
Mercado
Reunión
Discusión on-line
Propuestas de problemas
Formación de equipos
Elaboración de teoría
Tutorial
Talleres
Proporciona medios para que participantes e instructores ofrezcan e intercambien cualquier tipo de recurso que pueda ser de utilidad Emplee reuniones para interacción cara a cara y para preparar y concluir fases online Proporciona medios y facilidades para la comunicación asincrónica on-line entre participantes, instructores, tutores y/o invitados Permite que los participantes puedan elegir, proponer y solucionar problemas que sean de su interés personal y no solamente aquellos especificados por los instructores. Esto consigue que los procesos de aprendizaje sean más auténticos y el resultado permanezca más tiempo en la memoria En escenarios de trabajo en grupo permita que los participantes formen los equipos eligiendo ellos mismos a sus compañeros. Restrinja el número de máximo de componentes entre 2 y 5 dependiendo de cada actividad de aprendizaje Los participantes elaboran parte del material teórico y posteriormente lo publican y/o presentan al resto En escenarios tecnológicamente complejos u orientados a aplicaciones que conlleven el uso de nuevos métodos y herramientas permita que los tutores lleven a cabo tutoriales técnicos introductorios Emplee talleres como reuniones particularmente interactivas donde el enfoque recaiga en la colaboración y/o intercambio entre los participantes
74
Tabla 4.2.3.2.f Patrones de la categoría “Aprendizaje basado en proyectos”. Aprendizaje basado en proyectos Nombre del patrón Descripción Aprendizaje basado en proyectos Los participantes elaboran proyectos de forma iterativa e incremental mediante la satisfacción de sucesivos hitos de proyecto. Los participantes pueden o bien trabajar de forma individual, organizados en grupos o bien de forma conjunta en un único proyecto Hitos de Proyecto (Project Milestone) El trabajo del proyecto se organiza en una serie de fases bien definidas, cada una de las cuales produce un determinado conjunto de productos o artefactos. Estos hitos de la solución son publicados y presentados por los responsables de cada proyecto Contratos de aprendizaje Permitir a los grupos o participantes proponer materias o temáticas que quieran tratar, llegando a acuerdos en los que se definan los objetivos de aprendizaje y las contribuciones que se espera obtener de cada uno ellos Construcción de una base de Emplear contratos de aprendizaje como conocimiento forma de construir una base de conocimiento sobre un área particular
4.3. OTROS TIPOS DE PATRONES RELACIONADOS Como se comentó anteriormente, desarrollar un curso de e-learning involucra múltiples perspectivas, por lo que aparte de los patrones específicamente diseñados para facilitar el desarrollo de experiencias de e-learning se puede hacer uso de la experiencia recogida en otros dominios de diseño relacionados, como por ejemplo la pedagogía, el diseño web, la ipo, la usabilidad o la seguridad, entre otros. En esta sección se revisan propuestas en estos dominios que pueden resultar de utilidad para un diseño multiperspectiva.
4.3.1. Patrones Pedagógicos Desde la perspectiva de su concepción y desarrollo como herramienta formativa, los sistemas de e-learning no solamente tienen un sustento tecnológico sino también pedagógico, en cuanto a que estos sistemas no deben ser meros contenedores de información digital, sino que ésta debe ser transmitida de acuerdo a unos modelos pedagógicamente definidos.
75
En este contexto, los patrones pedagógicos intentan capturar el conocimiento experto de profesores, tanto académicos como de la industria, en la práctica de enseñar y aprender, pero no desde un punto de vista tecnológico. Este proyecto surge de la necesidad de encontrar otros modos de compartir las técnicas de enseñanza entre profesores expertos y noveles. A continuación, se recopilan alguno de los patrones que se pueden encontrar enmarcados en este tipo (Pedagogical Patterns Project, 2008): §
§
§
Aprendizaje activo. Esta colección se centra en actividades que involucren a los estudiantes de manera activa. Los patrones se organizan utilizando alguno de los problemas que a menudo pueden ocurrir en un entorno de enseñanza, como por ejemplo: maximizar el aprendizaje involucrando al estudiante, tener en cuenta diferentes niveles de habilidades e intereses, reducir el hueco entre el mundo educativo y el real, fomentar el trabajo en grupo, construir sobre experiencias pasadas o entender la teoría. Aprendizaje experimental. Estos patrones se centran en lo que es necesario aprender mediante la experimentación y las experiencias pasadas de los estudiantes. Los patrones se organizan de acuerdo con los problemas que suelen ocurrir en un entorno de entrenamiento: los estudiantes olvidan los contenidos, se ven abrumados por la teoría, esperan todas las soluciones por parte del profesor, no saben cómo aprender fuera del entorno de aprendizaje oficial, el ritmo de enseñanza es difícil de seguir, sólo unos pocos estudiantes participan, o los estudiantes tienen problemas para comprender todo el problema. Enseñando desde diferentes perspectivas. Esta colección de patrones ayuda a los profesores a fomentar en los estudiantes el estudio de los materiales del curso desde diferentes perspectivas, tratando los siguientes problemas: preparar al estudiantes para el mundo fuera del curso, hacer uso de las diferentes perspectivas por pares, p.e. utilizando personas de la empresa, cubrir tantos temas como sean posibles sin perder el objetivo o que los estudiantes puedan desarrollar herramientas para utilizarlas posteriormente.
4.3.2. Patrones para web Los sistemas de e-learning han encontrado en la tecnología web un excelente medio para romper con las limitaciones geográficas y temporales que los esquemas tradicionales de enseñanza-aprendizaje conllevan. Como medio para la difusión de información ha facilitado la creación y el acceso a más contenidos y como infraestructura para impartir educación a distancia, la web ha dado origen a plataformas para la gestión de dichos contenidos. Muchos de los sistemas e-learning carecen de diseño o su navegabilidad es inadecuada para formar parte del aprendizaje electrónico, ya que no ayudan fácilmente al acceso de la información. Los patrones para web pueden ayudar al diseñador y desarrollador de sistemas elearning en la resolución de problemas sobre la navegación, organización, presentación y personalización de contenidos.
76
A continuación, enumeramos una serie de patrones para web que pueden ser de gran ayuda al dominio de e-learning.
Tabla 4.3.2.a. Selección de patrones web para aplicaciones web de e-learning. Navegación Nombre del patrón Descripción Index Navigation (Garzotto et al., 1999) Proporcionar un acceso rápido a un conjunto de conceptos para que los usuarios que estén interesados en uno o varios de ellos puedan realizar su elección Guided Tour El usuario debe poder acceder de Navigation (Garzotto et al., 1999) manera secuencial a un grupo de conceptos relacionados Organización Nombre del patrón Descripción Hierarchical Organizar la información en una jerarquía Organization (van Duyne et al., 2002) de categorías puede ayudar al estudiante a encontrar las cosas (p.e. siguiendo la estructura de un curso, capítuloslecciones u organizarlo por contenidos ) Task-based Completar un conjunto de tareas Organization (van Duyne et al., 2002) relacionadas de una manera rápida y sencilla enlazando dichas tareas según la secuencia en que se deben realizar Presentación Nombre del patrón Descripción Navigation Bar (van Duyne et al., 2002) El usuario debe encontrar siempre visible y de manera consistente las herramientas de ayuda a la navegación Define and Run El usuario debe percibir los elementos Presentation (Cybulski y Linden, 1999) multimedia como una composición estética, donde un conjunto de elementos son mostrados de manera secuencial en uno o varios canales Personalización Nombre del patrón Descripción Structure El usuario debe acceder sólo a la Personalization (Rossi et al., 2001) información que le interesa (p.e. dependiendo del nivel de aprendizaje del alumno tendrá acceso a unos contenidos o no) Content El usuario debe recibir los contenidos de Personalization (Rossi et al., 2001) manera personalizada (p.e. en función de resultados obtenidos por un alumno el mismo contenido mostrará más información o menos para que sea comprendido)
77
Como un ejemplo de utilización de este tipo de patrones para el diseño de aplicaciones web de e-learning, nos centraremos en la colección de patrones web recopilada por van Duyne et al. (2002). Esta colección ha organizado los patrones en grupos, comenzando con una clasificación de sitios web según su objetivo y profundizando progresivamente en elementos concretos de la aplicación. Cada uno de estos grupos de patrones hace referencia a un conjunto de patrones relacionados que permiten el diseño de cada uno de estos tipos de sitios web. Uno de estos patrones que recogen tipos de aplicaciones web es A8 Educational Forums. Dicho patrón se presenta a continuación. Figura 4.3.2.a. La web de la Academia Phillips proporciona recursos tanto para padres, profesores y antiguos alumnos, para dar apoyo en la educación de los estudiantes. (www.andover.edu, Julio 2001)
A8 Educational Forums
Contexto Los sitios educativos fomentan el aprendizaje proporcionando a las escuelas, universidades e instituciones un modo para publicitarse usando NEWS MOSAICS, construir COMMUNITY CONFERENCES para la formación de estudiantes, hacer llegar el aprendizaje online y herramientas de navegación y ofrecer cursos online. Este patrón describe las claves para hacer de este tipo de sitios un éxito.
78
Problema Juntar estudiantes, padres, mentores, antiguos alumnos y educadores es esencial para los sitios educativos. La principal meta de cualquier institución educativa es la formación del estudiante. Pero los estudiantes no aprenden sólo leyendo y resolviendo problemas. Requieren de interacción con otros estudiantes, profesores, padres y mentores. Las clases físicas proporcionan interacción profesor-estudiante, pero dependiendo de asuntos como el tamaño de la clase, la geografía o el trasporte, esta interacción puede estar limitada. Además, los padres y profesores tienen oportunidades limitadas de interactuar, centrándose normalmente en reuniones personales o por teléfono. Las funcionalidades de un foro educativo como un recurso valioso y un sistema de soporte para estudiantes proporcionan una red para la formación de estudiantes a través de las relaciones estudiante-profesor, estudiante-estudiante, padres-profesor, estudiante-mentor, y padres-padres. Cuando un sitio educativo se centra en mejorar la eficiencia de la administración del colegio, deja la efectividad de la educación de lado. Los foros educativos pueden ser el conducto o la red que aúnen y ayuden a construir comunidades educativas. En una escuela de primaria, los padres, profesores y los compañeros de clase necesitan comunicarse cuestiones básicas. En una universidad, profesores y estudiantes necesitan foros de discusión. Haciendo del foro educativo la herramienta de comunicación básica, todos los alumnos se benefician compartiendo ideas, preguntas, y problemas con sus compañeros, padres y profesores. Los foros mejoran la vida social e intelectual del colegio cuando los padres, los estudiantes y la facultad interactúan y comparten ideas y valores. De ese modo mejora la educación de los estudiantes. Un foro educativo establece conexiones estrechas que van más allá de los límites físicos de la escuela, donde las presiones sociales superan algunas veces el deseo genuino de los estudiantes de aprender. Diferentes visitantes tienen diferentes necesidades Estudiantes, padres y mentores necesitan información básica sobre la institución educativa, desde una panorámica de la política de la institución, hasta detalles sobre su plan de estudios y horarios. Además, las instituciones educativas necesitan mantener una relación duradera con sus antiguos alumnos. La necesidad de estos grupos varía, y un sitio educativo debe proporcionar respuestas. A continuación se muestran las soluciones que provienen de una serie de preguntas y tareas. Tabla 4.3.2.a. Preguntas, Tareas y Soluciones para Foros Educativos. Grupo
Pregunta o tarea
Qué proporcionar como solución
Estudiantes y futuros estudiantes
¿Cuándo son las clases?
Una tabla imprimible de los horarios de clase con enlaces a los profesores, al programa y a los materiales del curso
¿Quiénes son los
Perfiles de profesores, valoraciones
79
Padres mentores
profesores y cómo contactar con ellos?
y enlaces a clases
¿Qué voy a aprender en clase?
Perfiles de clases y programas
¿Cuáles son las normas de la escuela?
Una serie de documentos mostrando las normas de la escuela
y ¿Cómo contactar con Una página con la información de algún cargo, como el contacto de administración director, el presidente o el decano? ¿Cómo contactar con un profesor?
Una página con la información de contacto del profesor
Profesores
¿Cómo contactar con un padre?
Página segura de información del estudiante y de los padres
Profesores empleados potenciales
y ¿Por qué quiero trabajar para esta escuela?
Visión general de la escuela, liderazgo, beneficios de empleo
Antiguos alumnos ¿Qué es lo nuevo que ha sucedido en la escuela?
Comunicar de manera detallada los nuevos programas, nuevos edificios, investigación y otras actividades de interés
¿Cómo hacer una donación?
Páginas donde se puedan dar donativos a la institución o donde los antiguos alumnos puedan dejar información de contacto para seguimiento
Investigadores
¿En qué está investigando un determinado profesor o departamento?
Fácil acceso a los directorios de la facultad y departamento que enlazan directamente a sus propios sitios web
Todos
¿Qué piensa la Tablón de anuncios con los actuales comunidad sobre el nuevo asuntos de discusión programa científico?
En un nivel avanzado, el sitio educativo proporciona material del curso, incluyendo materiales de entrenamiento, ejercicios, preguntas, videos. Subir al siguiente nivel Los foros educativos avanzados necesitan atraer estudiantes, desafiándolos con problemas del mundo real, y no artificiales como es común en los libros de texto. Es necesario una comunidad activa de expertos, técnicos, diseñadores, antiguos alumnos, padres, profesores y estudiantes para que esto suceda.
80
Ha habido muchos intentos de introducir las tecnologías educativas en el currículo que han fracasado. Hay numerosas cuestiones involucradas con los costes de producción y desarrollo del software para hacer que estas herramientas se ajusten a las prácticas existentes y con el entrenamiento de los profesores para usar estas herramientas de manera eficaz. Los foros educativos básicos necesitan dar soporte a todas las tareas ordinarias y rutinarias a las que estudiantes, profesores, antiguos alumnos y padres tienen que hacer frente. Los foros educativos avanzados necesitan mirar más allá, buscando nuevos modos de crear una comunidad sostenible de aprendizaje y conocimiento. Solución Proporciona noticias e información para estudiantes, futuros estudiantes, padres, mentores y profesores que ayuda a coordinar actividades como los horarios de clase, listas de lectura, calendario de exámenes información de contacto y horario de oficina para profesores y administrativos. Como parte del registro de alumnos, recoge la dirección de correo y números de teléfono de padres y alumnos para ponerles al día directamente. Opcionalmente publica el plan de estudios y la investigación para otras escuelas y universidades. Para crear un foro que dé soporte a la formación del estudiante es necesario un área segura que proporcione lo siguiente: § § § § § §
Comunicación directa entre padres y profesores, estudiantes y profesores, y estudiantes y mentores Comunicación pública entre estudiantes de la misma clase y el profesor Conferencias padres-profesor Escritos, exposiciones, experimentos, ejercicios, proyectos, otras actividades Material del curso Exámenes
Figura 4.3.2.b. Un foro educativo es un área segura donde estudiantes, padres, profesores y mentores pueden compartir preocupaciones, ideas y co-desarrollar y compartir actividades.
81
Otros patrones - Foros educativos básicos Para llevar a cabo las necesidades de las diferentes audiencias que utilizan el sitio web, usa HOMEPAGE PORTAL (C1) con MULTIPLE WAYS TO NAVIGATE (B1) para la información de las clases, formación e información de contacto de los profesores, información del departamento y antecedentes de la escuela. Proporciona noticias en la página principal y páginas de categoría con CONTENT MODULES (D2). Si creas una aplicación de estudiantes online y un sistema de registro, usa el PROCESS FUNNEL (H1) para facilitar un proceso sin problemas. Ten informado a todas las clases, toda la escuela y antiguos alumnos con E-MAIL SUBSCRIPTIONS (E2) para anuncios de la escuela. Una opción es publicar el programa de la asignatura y la investigación en el sitio usando CONTENT MODULES (D2). - Foros educativos avanzados Para crear un foro para estudiantes-padres-profesores-mentores que ayuden a la formación del estudiante, crea un área segura usando SECURE CONNECTIONS (E6) y crea cuentas no anónimas para la gente usando SIGN-IN/NEW ACCOUNT (H2). Una vez que una persona se ha registrado, muestra PERSONALIZED CONTENT (D4) en la página principal de cada visitante, con noticias de clase y enlaces. Dentro de la información de clases para estudiantes, proporciona un directorio de información de contacto de profesores, direcciones de correo para la comunicación estudianteestudiante y estudiante-mentor. Dentro de la información de clases para padres y mentores, proporciona sólo información de contacto del profesor y del estudiante. Para cada clase, crea un MESSAGE BOARD (D5) para discusiones estudianteprofesor-mentor-padre, así como un tablón de mensajes separado para discusiones profesor-padres. Proporciona a los estudiantes herramientas de publicación web y un directorio para actualizar los proyectos de clase. Publica los materiales del curso y mantén el material atractivo usando STIMULATING ARTS AND ENTERTAINMENT (A9). Para llevar a cabo exámenes, introduce a los estudiantes en un PROCESS FUNNEL (H1) para completar las preguntas generadas dinámicamente en CONTENT MODULES (D2). Como alternativa, enlaza a una aplicación existente como WebCT o Blackboard, para exámenes, notas y administración del curso.
Un diseñador o desarrollador de sistemas de e-learning, tanto experimentado como no, podría tomar este patrón como punto de partida de su desarrollo y establecer así cuáles son las funcionalidades que recogerá su sistema dependiendo de su audiencia y sus necesidades. Posteriormente, dirigiéndose a la sección Otros patrones, puede
82
empezar a dar forma a su sitio web, visitando los patrones que se recomiendan o los enumerados en la tabla 4.3.2.a. Por ejemplo, utilizar el patrón Multiple Ways To Navigate para que la información contenida en el sitio web pueda ser encontrada de diferentes modos por sus usuarios. Uno de esos modos sería Index Navigation, que proporcionaría un acceso directo a un determinado conjunto de elementos de información, como por ejemplo todos los programas de las asignaturas que se imparten en un determinado curso o carrera. Además, esa información podría estar organizada según nos sugiere el patrón Hierarchical Organization, es decir en una jerarquía de categorías, por ejemplo por escuelas, titulaciones, cursos.
4.3.3. Patrones de Interacción Los sistemas de aprendizaje son aplicaciones interactivas, puesto que es a través de la interacción o comunicación con el sistema de e-learning como se espera que el alumno adquiera conocimiento. La interactividad puede ser tan simple como hacer clic en la respuesta a una pregunta formulada al final de un período de sesiones o tan compleja como la manipulación de varios objetos para perfeccionar una habilidad o llevar a cabo una comunicación asíncrona o síncrona entre estudiantes y profesores a través de la interfaz de usuario. Con la constante toma de decisiones, como pinchar en los botones para iniciar un proceso o ampliar una imagen para tener una mejor visualización, el usuario de un sistema de e-learning se convierte en un participante activo en el proceso de aprendizaje. Uno de los mayores retos a los que se enfrentan los diseñadores de sistemas e-learning es el desarrollo de herramientas mejoradas que sean capaces de enganchar a los estudiantes menos experimentados y mantener sus actividades de aprendizaje on-line en cualquier momento y lugar. El área de la interacción persona-ordenador (IPO) puede aportar soporte teórico y metodologías para el diseño apropiado de sistemas e-learning donde primen los factores de comunicación, consistencia, flexibilidad, realimentación, ayuda o minimización de errores y hacer así la interacción de los estudiantes con el sistema lo más natural e intuitiva posible. Los patrones de interacción ayudan a la aplicación o al diseñador a comunicarse mejor con el usuario. A continuación se recogen una serie de patrones de interacción para aplicaciones web recopilados por van Welie (2007).
Tabla 4.3.3.a Selección de patrones IPO para aplicaciones web de e-learning. Nombre del patrón Wizard
Descripción Para guiar al usuario en la realización de una tarea que necesita tomar varias decisiones, mostrarle cuáles son los pasos que existen y cuáles han sido realizados a la vez que se le guía a lo largo de la tarea.
83
Stepping
Input Error Message
Outgoing Links
Permitir a los usuarios ir al paso anterior y siguiente de una tarea para realizar posibles modificaciones. Informar al usuario de entradas de datos incorrectas, dónde se han producido y cómo resolverlas. Mostrar al usuario los enlaces que le llevarán fuera del actual sitio web marcándolos con un icono después de su etiqueta.
Siguiendo con la aplicación de patrones al dominio e-learning, el patrón Input Error Message podría ser utilizado para informar a un alumno cuando se encuentra realizando un cuestionario de evaluación, de cuáles son las preguntas incorrectas proporcionándole una explicación de cuál es la correcta y por qué.
4.3.4. Patrones de Usabilidad Muchos sistemas de e-learning son desarrollados con una serie de expectativas como el ahorro de recursos o la posibilidad de generar nuevas oportunidades para las instituciones. Sin embargo, los estudiantes tienen que enfrentarse a interfaces frustrantes, o estructuras de menú poco intuitivas que les distraen de su objetivo de aprendizaje, haciéndoles perder el tiempo en aprender a usar el sistema en vez de centrarse en aprender un concepto o una habilidad. La usabilidad ha sido definida como la característica de una aplicación que hace que ésta sea fácil de aprender y que permite a sus usuarios realizar sus tareas de una manera eficiente, efectiva y con un alto grado de satisfacción. Además, la aplicación debe ser útil e incluir contenidos que sean relevantes y significativos para los usuarios. Billones de páginas web han sido creadas y años de investigación y experiencia han destacado "las mejores prácticas" para crear contenidos atractivos y agradables. Los diseñadores de e-learning pueden beneficiarse de las lecciones aprendidas por los diseñadores web registradas como patrones de usabilidad web. Los patrones de usabilidad documentan los factores humanos implicados en los elementos de la interfaz para aplicaciones desarrolladas sobre web. A continuación, se recogen una serie de patrones de este tipo seleccionados de entre los recopilados por Graham (2003). Tabla 4.3.4.a Selección de patrones de Usabilidad para aplicaciones web de elearning. Nombre del patrón Sentido de localización
Descripción El usuario necesita saber su localización en la jungla de contenidos que es el sitio web, indicándole dónde está, en qué contexto, incluyendo la ruta de
84
Volver a un sitio seguro
Logotipo del sitio arriba a la izquierda
Botón de vuelta atrás
información seguida para llegar a ese punto Los usuarios pueden sentirse desorientados o perdidos cuando han realizado más de una parada en el sitio web. Es necesario proporcionar un modo para que los usuarios pongan marcas para volver cuando se sientan perdidos Los usuarios necesitan saber cómo volver a un sitio seguro, p.e. a la página principal. Según el estándar, el logotipo se debe situar arriba a la izquierda de cada página y al pinchar sobre él, siempre te lleva a la página principal (homepage). Los usuarios suelen cometer errores, especialmente al realizar tareas en varios pasos. El usuario debería ser siempre capaz de volver al paso anterior, y deshacer las cosas que haya podido hacer.
Aplicando uno de estos patrones al dominio e-learning, el patrón Logotipo del sitio arriba a la izquierda debería aparecer en todas las páginas del sitio web, para que cuando el usuario se halle navegando por los diferentes contenidos educativos, pueda acceder en cualquier momento a la página principal y cambiar el sentido de su navegación.
4.3.5. Patrones de Seguridad La seguridad debería ser considerada como un asunto importante en los sistemas de aprendizaje. En el dominio del e-learning no sólo la información tiene que ser protegida contra accesos no autorizados, el modo en que es presentada dicha información también es relevante. Además, encontramos diferentes roles que acceden e interactúan en el sistema que, como mínimo, pueden ser el administrador de la plataforma y el administrador del curso, el profesor y/o tutor y el estudiante, e incluso en otros sistemas podemos encontrar más tipos de roles como puedan ser los padres. En los estudios realizados por Weippl (2005) se pueden encontrar estos asuntos tratados en profundidad. Por lo tanto, la autorización y el control de acceso a los componentes y servicios de los sistemas de aprendizaje son aspectos relevantes a considerar para determinar a qué partes del sistema pueden acceder los usuarios y en qué modo o con qué capacidades. En el dominio del e-learning, donde encontramos una serie de roles que poseen un conjunto de responsabilidades y funciones, el modelo que probablemente mejor se adapte es el RBAC (Role-Based Access Control), control de acceso basado en roles (Díaz et al., 2006). Este modelo ha sido registrado como un conjunto de patrones (Fernández y Pan, 2001) que describen cómo diseñar un sistema seguro
85
siguiendo el modelo RBAC, a la vez que permiten que este modelo sea entendido por profesionales que no son expertos en seguridad. A continuación, se muestra una tabla con los patrones que componen este modelo y cuál es el objetivo de cada uno de ellos.
Tabla 4.3.5.a Selección de patrones de Seguridad para aplicaciones web de elearning. Nombre del patrón Authorization
Role-Based Access Control
Multilevel Security
Descripción Describir los tipos de acceso a los recursos del sistema, distinguiendo entre entidades activas (roles de usuario o ejecución de un proceso) y entidades pasivas (curso, ODEs, etc.) Asignar los tipos de acceso a los usuarios según sus roles en el sistema (p.e. el administrador del curso podrá añadir o eliminar recursos, mientras que el alumno sólo podrá visualizarlos) Tratar con diferentes niveles de seguridad
Como se detalló en el patrón A8 Educational Forums, la seguridad es una cuestión importante en estos tipos de sistemas, debido a la información sensible que almacenan. Por tanto, sería de vital importancia aplicar los patrones aquí seleccionados a los sitios web de e-learning para tener un control de acceso a la información sensible, así como qué información debe ver o modificar cada tipo de usuario.
5. UNA SELECCIÓN DE PATRONES PARA E-LEARNING Las múltiples ventajas que se obtienen del aprendizaje on-line provocan complejidad en el desarrollo de estos sistemas. La especificación de un patrón permite comunicar la experiencia y el conocimiento en un área de interés. En esta sección se recogen una serie de patrones que permiten tener una guía en el diseño de plataformas educativas y ODEs.
5.1. EJEMPLOS DE EDUCATIVAS
PATRONES
PARA
PLATAFORMAS
El objetivo de los patrones de diseño para LMS es establecer la organización y entrega de contenidos, administración de recursos, seguimiento de las actividades y resultados del aprendizaje. En esta sección se recogen patrones para que el sistema incluya
86
diferentes tipos de actividades que impliquen un aprendizaje activo y cómo organizar un curso.
5.1.1. Estudiante activo Adapted Bergin (2002) Figura 5.1.1.a. Fotografías de distintos tipos de actividades educativas: clase magistral, trabajo en grupo, laboratorio, etc. [http://www.sjprep.net/photo/day.html , 2002]
*** Quieres maximizar el aprendizaje del estudiante. Los estudiantes pasivos no aprenden demasiado. Si los estudiantes no se involucran y se limitan a escuchar las explicaciones, es poco probable que lo aprendido pase a la memoria a largo plazo. El aprendizaje activo supone que el estudiante tome parte de forma activa en el proceso de aprendizaje. El aprendizaje on-line, soportado mediante aplicaciones informáticas, está enfocado al uso de recursos que involucren al estudiante en el desarrollo de alguna actividad, por ejemplo a través de la aplicación de la teoría o de su evaluación (Finlay, 2001). La instrucción soportada computacionalmente puede proporcionar al estudiante un rico conjunto de experiencias fuera del entorno de la clase o del centro de aprendizaje. Puede ser usado tanto como suplemento a la instrucción tradicional o servir para aportar un enfoque alternativo al estudio de una materia (O'Connor, 1997).
87
Una forma de conseguir estudiantes activos es proponer actividades que supongan la resolución de problemas, de forma que obliguen a los estudiantes a participar activamente y demostrar que comprenden la materia. Esto permite al estudiante hacer uso de sus capacidades deductivas, emplear razonamiento inferencial, comprobación de asunciones y toma de decisiones. Otras formas de conseguirlos pueden ser el uso experimentos, el empleo de tests y evaluaciones, proposición de laboratorios virtuales y simulaciones, etc. Los estudiantes aprenden mejor “haciendo” actividades, es decir, a través de actividades de aprendizaje donde el alumno “haga algo” (Fink, 2002). Observar una demostración on-line de una actividad permite al estudiante aprender a través de la observación. Esto puede suponer una ayuda al proceso de comprensión de una determinada materia. Implementar el aprendizaje por observación dentro de un determinado entorno de aprendizaje puede ser conseguido mostrando el desarrollo de una actividad de modo “directo” o “indirecto”. Una observación “directa” supone que el estudiante observa la acción real, directamente; mientras que en una observación “indirecta” se utiliza una simulación de la acción real. Ejemplos: §
§
§
Diseñar y/o conducir un experimento (es decir, una simulación), criticar un argumento o un escrito, investigar en recursos históricos (es decir, aprendizaje exploratorio) o realizar una presentación oral (es decir, discusiones on-line, aprendizaje colaborativo) (Fink, 2002). Por ejemplo, cuando un estudiante observa o escucha a alguien “haciendo algo” relacionado con lo que está aprendiendo. Esto puede ser tanto observar al profesor hacer algo (por ejemplo, “Así es cómo yo critico una novela”), observar a un profesional desempeñar su actividad (por ejemplo esuchar músicos tocando) u observar el fenómeno estudiado (natural, social o cultural) (Fink, 2002). Una observación indirecta puede suponer el visionado de una película o la lectura de historias escritas sobre un determinado tema (Fink, 2002). Un ejemplo de actividad que suponga aprendizaje por observación es la inclusión de un trozo de una película en una página.
88
Figura 5.1.1.b. Imagen de una pantalla de un curso en WebCT donde se pueden apreciar los diferentes tipos de actividades que pueden ser empleados.
Por tanto: En lugar de limitarnos a proporcionar información a observadores pasivos, dejemos que los estudiantes desarrollen un rol más activo, descubriendo y absorbiendo el conocimiento por ellos mismos. Mantengamos a los estudiantes activos proporcionándoles diferentes tipos de actividades que impliquen un aprendizaje activo. Referencias Atsoft Incorporated (2001). LearningBeat Capabilities http://www.achieveplus.ca/News/LearningBeat%20Capabilities.pdf
[en
línea].
Bergin, J. (2002). A Pattern Language for Course Development in Computer Science [en línea]. Pace University. Disponible en: http://csis.pace.edu/~bergin/patterns/coursepatternlanguage.html Fink, L. D. (2002). Ideas on Teaching. Higher Level Learning: Ways of Teaching to Generate Significant Learning [en línea]. Oklahoma: University of Oklahoma. Disponible en: http://www.ou.edu/idp/tips/ideas/higherlevel.html
89
O'Connor, T. (1997). CTL Learning Styles Site: Using Learning Styles to Adapt Technology for Higher Education [en línea]. Indiana State University. Disponible en: http://www.indstate.edu/ctl/styles/learning.html Finlay, J. (2001). Preliminary review and evaluation criteria for distance learning technology. E-DiLeMa: E-resources and Distance Learning Management (Minerva Project no. 90683-CP-1-200). Leeds Metropolitan University.
5.1.2. Curso Paquete: General Intención Cada curso es organizado en tres fases consecutivas: se comienza con las fases preliminares, se continúa con las fases principales y se termina con las fases de evaluación. Motivación Este patrón describe la planificación de las fases centrales de un curso en modalidad mixta sirviendo como una base que será posteriormente refinada por cada curso concreto o tipo de curso, como por ejemplo uno de aprendizaje basado en proyectos. Los cursos en modalidad mixta suelen comenzar con unas fases preliminares durante las cuales se inicializa el espacio de la plataforma que servirá para albergar el curso y se publica el material inicial así como la planificación y calendario del mismo. A continuación tiene lugar la reunión inicial, que será el punto de partida para el comienzo de las actividades de aprendizaje. Después tienen lugar las fases principales del curso. Estás fases pueden ser concretadas de distintas formas para responder a diversos enfoques de aprendizaje en modalidad mixta. Por último, todos los procesos educativos suelen concluir con algún tipo de fase de evaluación en la cual mide el conocimiento y los avances logrados por el alumno al finalizar el proceso.
90
Escenario Figura 5.1.2.a. Escenario de aplicación del patrón Curso. Las tres fases principales son precedidas de una actividad de creación y reserva del espacio del curso. &XUVR
&UHDU HVSDFLRGHO FXUVR
) DVHVSUHO LP LQDUHV
3 DUDVHU HVSHFLILFDGRHQ FXUVRVFRQFUHW RV
) DVHV3 ULQFLSDO HV
) DVHV GH HYDO XDFLyQ
Tabla 5.1.2.a Actividades del patrón Curso.
Actividad Crear espacio para el curso
Descripción El espacio para el curso debe ser convenientemente creado e inicializado en la correspondiente plataforma de aprendizaje.
Fases preliminares Fases principales
Estas fases sirven como “contenedores” para su correspondiente refinamiento de acuerdo con un escenario de aprendizaje concreto como por ejemplo, Aprendizaje basado en proyectos.
91
Fases de evaluación
Parámetros § § § § § § § §
Autor principal del patrón: Michael Derntl Fuente principal del patrón: Research Lab for Educational Technologies (Universidad de Vienna) Categoría del patrón: Genérico, Compuesto Alcance: Curso Tipo de presencia: Mixta Nivel de confidencia: 2 Número de participantes: Sin restricciones Entrada: Parámetros del curso, grupos, participantes, equipos, instructores (todos para la inicialización)
Evaluación Un ejemplo de curso se encuentra disponible en el siguiente enlace: evaluación del curso de ingeniería en la web. http://elearn.pri.univie.ac.at/patterns/?page=WebEngEval Comentarios Es necesario señalar que la entidad conceptual más grande que se considera en este repositorio es el curso. En muchos entornos educativos los cursos son divididos en grupos. Un curso consiste en un número dado de actividades de aprendizaje siendo, en si mismo, una actividad de aprendizaje compuesta. Cada instructor debe estar asociado con al menos una actividad de aprendizaje. Por otra parte, al menos dos estudiantes deben participar en cada curso. Cada instancia de esta relación tiene asociado un grado, que es asignado por el instructor. Un equipo estará formado por al menos dos estudiantes. Normalmente los equipos tienen de 2 a 5 miembros, dependiendo de cada actividad de aprendizaje. En este trabajo se considera tanto a los estudiantes y tutores como a los grupos participantes del curso. El término participante es por tanto un concepto abstracto que sirve para designar a las personas que toman parte en una actividad de aprendizaje o curso sin importar los roles que desempeñen. Los participantes elaboran, entregan y desarrollan un determinado número de contribuciones durante el transcurso de cada actividad de aprendizaje.
92
5.1.3. Fases preliminares Paquete: General Intención Antes de la reunión inicial, y con objeto de su discusión a lo largo de la misma, publicar tanto el contenido del curso, como los recursos relevantes, así como la información acerca del estilo del curso, actividades y objetivos. Motivación Denominamos fases preliminares a las fases iniciales de cualquier curso. Este patrón provee un plan de actividades genérico para la inicialización de cursos: se provee a los potenciales participantes de los recursos, contenidos relevantes e información on-line para la preparación de la subsiguiente reunión inicial donde el estilo del curso, sus objetivos y las primeras tareas son presentadas y discutidas. Escenario Figura 5.1.3.a. Escenario de aplicación del patrón. Fases preliminares.
93
Tabla 5.1.3.a Actividades del patrón Fases preliminares.
Actividad Inicializar el espacio del curso
Descripción La información acerca de grupos, participantes e instructores es cargada en la plataforma de aprendizaje. Adicionalmente se puede publicar también los contenidos y recursos así como la información acerca de organización, planificación del curso, etc.
Publicar La información acerca del curso es publicada en la plataforma (si no información se ha cargado ya en la actividad previa). sobre el curso y su modalidad Reunión inicial
Parámetros § § § § § §
Autor principal del patrón: Michael Derntl Fuente principal del patrón: Research Lab for Educational Technologies (Universidad de Vienna) Categoría del patrón: Utilidad, Genérico, Compuesto, Administrativo Alcance: Fase Tipo de presencia: Mixta Nivel de confidencia: 4
§ § §
Asistencia recomendada: Tutor Entrada: Recursos del curso relevantes Salida: Acuerdo común sobre el concepto del curso
Ejemplos Este patrón es empleado con mínimas variaciones en todos los cursos.
5.1.4. Fases de presentación Paquete: General Intención Permita a los participantes de las reuniones de presentación el intercambio de sus contribuciones a las reuniones de forma previa al comienzo de las mismas. De esta forma, el tradicional formato de reunión “presentación larga seguida de discusión
94
corta”, puede ser reemplazado por discusiones activas seguidas de presentaciones cortas y concisas. Motivación Lo expuesto en la sección anterior sintetiza el objetivo esencial de este patrón. En los escenarios centrados en la persona se tiende a evitar las presentaciones largas. La mejor manera de conseguirlo es tener a la audiencia preparada antes de que la presentación tenga lugar. Esto se puede conseguir empleando el patrón Intercambio de contribuciones, especialmente dirigido al intercambio de recursos y diapositivas. Alrededor de una semana antes de las reuniones de presentación se pregunta a los participantes si desean publicar sus presentaciones. Por otro lado cada participante debe prepararse para la reunión repasando las presentaciones del resto de los participantes. Permita a los participantes de las reuniones de presentación el intercambio de sus contribuciones a las reuniones de forma previa al comienzo de las mismas. De esta forma, el tradicional formato de reunión “presentación larga seguida de discusión corta”, puede ser reemplazado por discusiones activas seguidas de presentaciones cortas y concisas. Se ha demostrado que esta preparación produce un efecto secundario positivo: la combinación de preparaciones mejores con presentaciones más cortas, conduce a discusiones más profundas y significativas ya que todo el mundo viene equipado con un conocimiento básico de la materia. Escenario Figura 5.1.4.a. Escenario de aplicación del patrón. Fase de presentación. ,QVW UXFW RU 3 DUW LFLSDQW HV ) DVHV3 UHO LP LQDUHV
3 XHVW DHQFRP ~QGH SUHVHQW DFLRQHV\ FRQW ULEXFLRQHV
3 UHVHQW DFLRQHV FRQW ULEXFLRQHV\ RW URVUHFXUVRV
5HXQLRQHV GH SUHVHQW DFLyQ
9HUO DV SUHVHQW DFLRQHV \ FRQW ULEXFLRQHV UHFRJ LGDV
95
Parámetros § § § § § § § § § § §
Autor principal del patrón: Michael Derntl Fuente principal del patrón: Research Lab for Educational Technologies (Universidad de Vienna) Categoría del patrón: Colateral, Motivacional Alcance: Fase Tipo de presencia: Mixta Nivel de confidencia: 4 Número de participantes: hasta 20 (la restricción se basa en el número de presentaciones de las reuniones de presentación) Asistencia recomendada: Tutor Competencias: Competencias interpersonales, Comunicación, Colaboración Entrada: Esquemas de presentaciones, fechas de reuniones, espacio para las presentaciones Salida: Acceso on-line a las presentaciones
Ejemplos Las presentaciones en la mayoría de los seminarios de doctorado en el departamento del autor principal del patrón suelen ser conducidas de acuerdo con lo expuesto en el patrón. Por ejemplo, en las fases de presentación del “seminario de literatura” los participantes publican sus contribuciones y participaciones una semana antes de la reunión. Al contrario de lo que es habitual se consiguen presentaciones de 15-20 minutos seguidas de discusiones más largas. Puede encontrar una descripción más exhaustiva del contexto del ejemplo en el patrón Seminario. Evaluación Las reacciones de los alumnos al curso “Seminario de doctorado de literatura” fueron mayoritariamente positivas. Por ejemplo, sobre las fases de presentación y el uso de la plataforma de aprendizaje un estudiante escribió: “Me ha gustado mucho usar la plataforma de aprendizaje porque he tenido la oportunidad de profundizar en los temas elaborados por otros participantes. La idea de hacer presentaciones cortas y discusiones largas ha resultado ser muy efectiva. Gracias a los intercambios de puntos de vista que provocaron las discusiones que siguieron a las presentaciones, todo el mundo se involucró en los temas del resto, al revés de lo que suele ocurrir en las presentaciones largas donde predomina la comunicación unidireccional”.
96
5.1.5. Fases de evaluación Paquete: Evaluación Intención Durante las fases de evaluación de una actividad de aprendizaje o de un curso, haz uso del patrón Evaluación genérica para medir los logros de los participantes y de Recoger feedback sobre la actividad de aprendizaje. Motivación Una de los procesos más importantes dentro de un proceso educativo es el proceso de obtener una estimación de los logros alcanzados por los participantes. En cualquier caso, en cursos convencionales las fases de evaluación suelen consistir en una única actividad en la que el instructor evalúa a los participantes. Este tipo de escenario de evaluación sirve de poco a los participantes. Una fase de evaluación en la que tanto los evaluadores como los participantes aporten comentarios y diferentes puntos de vista resultaría más enriquecedora. Por tanto los participantes deben involucrarse en las fases de evaluación: § §
Proporcionando re-alimentación sobre el proceso al instructor (Recoger feedback) Implicándose en su propia evaluación o en la evaluación del trabajo de otros participantes (Evaluación genérica)
Escenario Este escenario puede ser usado tanto como plantilla de las actividades finales de cualquier Curso como para evaluar los logros de los participantes en cualquier otra actividad de aprendizaje, por ejemplo en Aprendizaje basado en proyectos. Figura 5.1.5.a. Escenario de aplicación del patrón. Fases de evaluación.
97
Tabla 5.1.5.a Actividades del patrón. Fases de evaluación.
Actividad
Descripción
Recoger Feedback
Opcionalmente recoja comentarios y feedback de los participantes
Evaluación genérica
Combine varias formas de Evaluación tal y como se sugiere en el patrón Evaluación Genérica
Instructor: Califique a los participantes
Basándose en los escenarios previos de Evaluación asigne una calificación para cada participante
Parámetros § § § § § § §
Autor principal del patrón: Michael Derntl Fuente principal del patrón: Research Lab for Educational Technologies (Universidad de Vienna) Categoría del patrón: Genérico, Compuesto, Utilidad Alcance: Fase Nivel de confidencia: 5 Entrada: Definición del feedback que será recogido, escenarios de evaluación que van a ser utilizados. Salida: Feedback, evolución, calificaciones
Ejemplos En los cursos del Research Lab for Education Technologies de la Universidad de Viena se emplean diferentes implementaciones de fases de evaluación: §
§
En el curso “Comunicación centrada en la persona” las fases de evaluación se implementan recogiendo feedback mediante hojas de reacción. Además se consigue involucrar a los participantes en el proceso de evaluación pidiendo que se auto-evalúen y que evalúen por pares el trabajo de otros compañeros. Adicionalmente, en el curso “Ingeniería de la Web”, se distribuye entre los participantes un cuestionario de tal forma que luego se compara la información recogida por el mismo al comienzo y al final del curso.
98
5.2. EJEMPLOS DE PATRONES PARA OBJETOS DIGITALES EDUCATIVOS Los patrones presentan una estructura flexible y eficiente para producir diversos objetos digitales mediante la inclusión de objetos mediáticos e informativos (de nivel modular inferior) seleccionados de acuerdo al ámbito de aplicación y especialización de la finalidad educativa, dando como resultado un objeto de aprendizaje, como puede verse en la figura 5.2.a.
Figura 5.2.a. Proceso de producción de objetos de aprendizaje a partir de patrones (Delgado et al., 2007)
A continuación presentamos un conjunto de patrones para ser aplicados a una serie de ODEs específicos, como serían la página de inicio del entorno educativo, el diseño de sus páginas, cómo mostrar sus contenidos, saber utilizar los colores de manera semántica, y gestionar cuestionarios de evaluación on-line.
5.2.1. Página de inicio Adapted: Plowman (2001) …. el contenido y el propósito del sitio ha sido establecido en el patrón Estudiante Activo. El usuario destinatario ha sido identificado y el punto de partida para el diseño debe ser el captar la atención del usuario. Por tanto, en este punto es necesario decidir qué información debemos presentar al usuario en su primera toma de contacto con el sitio.
99
Figura 5.2.1.a. Imagen de una pantalla de inicio de un curso WebCT
*** Un sitio web es utilizado principalmente por gente que desea acceder y hacer uso de las facilidades que el sitio ofrece. De cualquier forma debe tenerse en cuenta que todos los sitios web serán también accedidos por usuarios que llegan al sitio por primera vez. Los usuarios que acceden a un sitio web pueden variar considerablemente en edad, nacionalidad, cultura y propósito perseguido. Estos factores deben de ser tenidos en cuenta a la hora de presentar el primer punto de interacción con el sitio. El propósito del sitio debe ser conseguir captar al usuario y permitir que éste alcance su propósito. La página de inicio del sitio es el punto de partida de la interacción, el usuario necesita saber a qué compañía pertenece el sitio, cuál es el propósito de la página y qué puede conseguirse utilizándola. Si estos puntos no son explicados de forma implícita, nada más comenzar la interacción con el sitio web es posible que el usuario pierda interés y, mientras trata de averiguar si el sitio se adecua a sus propósitos, desista de su uso. Un sitio web necesita, desde el primer momento, capturar el interés del usuario. Puede haber otros sitios en Internet que sirvan al mismo propósito del usuario, por lo que al
100
perder su interés se corre el riesgo de que busque la información que requiera en dichos sitios. Por tanto: Diseñe la página de inicio de forma que el propósito del sitio quede establecido implícitamente, de tal forma que el usuario pueda conocer desde el primer acceso si el sitio sirve a sus intereses y necesidades o no. Referencias Plowman, K. (2001). A pattern language for travel website design. Tesis de Master of Science, School of Computing and Management Sciences, Sheffield Hallam University, Reino Unido. Figura 5.2.1.b Esquema de interacción de un usuario con la página de inicio de un curso.
***
Para conseguir que el usuario interactúe con el sitio web es necesario que sea atraído por lo que el propio sitio ofrece. El patrón Diseño de página puede servir para comunicar este mensaje al usuario. La localización de los contenidos de la página puede ser presentada al usuario siguiendo las pautas descritas en Menús contextuales, Espacios navegables o empleando Mapas de espacios navegables que sirvan para guiarle a través de la página. Los patrones Mostrando el contenido de la página y Agrupando y reescribiendo también pueden asistir al diseñador en el desarrollo de esta tarea. Un aspecto importante a tener en cuenta es el lenguaje del usuario – Consideraciones sobre el lenguaje –. Cuando corresponda se debe permitir al usuario elegir el lenguaje de interacción con el sitio nada más entrar al mismo.
101
5.2.2. Diseño de página Adapted: Plowman (2001) … el contenido de la página de inicio ha sido decidido. Ahora necesitas decidir cuál será el diseño de las páginas que sirva mejor para transmitir al usuario tanto los contenidos como el propósito del sitio.
Figura 5.2.2.a. Imagen de una pantalla de un curso WebCT
*** En un entorno que contiene gran cantidad de información es esencial que desde su primera toma de contacto con el sitio se consiga transmitir al usuario, de forma clara y concisa, tanto el propósito del sitio como sus propios contenidos. Cuando se está desarrollando una página puede ser más conveniente agrupar su contenido en secciones, cada una de las cuales relacionada con un cierto aspecto del sitio. Esto permite presentar la información al usuario de forma clara, y así obligarle a desplazar el scroll a lo largo de varias páginas. En cualquier caso, tampoco es conveniente dividir una página en demasiadas secciones o de lo contrario el acceso a la información puede volverse confuso, especialmente si el usuario está viendo la página desde un monitor pequeño. El área central de la página debe ocupar tanto espacio como resulte razonable.
102
Dependiendo del propósito de la página hay muchas formas distintas de dividir la pantalla. Por tanto: Dividir la página en secciones distintas. Referencias Plowman, K. (2001). A pattern language for travel website design. Tesis de Master of Science, School of Computing and Management Sciences, Sheffield Hallam University. Figura 5.2.2.b Ejemplo de diseño de una página. Los contenidos se sitúan en la parte izquierda de la misma mientras que la derecha se reserva para el menú.
Menú Contenidos de la página
*** Una buena forma de conseguir enganchar al usuario en la página y presentar el contenido de forma que resulte interesante es examinada en los patrones Información interactiva, Agrupando y reescribiendo y Mostrando el contenido de la página. También debe tenerse en cuenta las consideraciones expuestas sobre contenido y estilo en el patrón Menú contextual.
5.2.3. Mostrando el contenido de la página Adapted: Plowman (2001) … has decidido utilizar Mostrar información interactiva, es conveniente considerar cómo mostrar el contenido de la página.
103
Figura 5.2.3.a. Imagen de una pantalla de un curso donde se listan diferentes habilidades relacionadas con la capacidad de estudio.
Cuando sea necesario mostrar cierta cantidad de texto al usuario es preferible hacerlo agrupado en diversos puntos o con diferentes nivel de identación antes que en bloques todo junto. Emplee sub-cabeceras y asegúrese de que los puntos principales quedan enfatizados (Smee, 2001). Los espacios en blanco pueden ser utilizados para conseguir señalar al usuario información de interés. Los cambios en la fuente y el color del texto también son otras formas de dirigir la atención a puntos importantes. Para conseguir que la página sea vista y leída en la pantalla, en lugar de impresa y leída sobre papel, emplee líneas de texto cortas en lugar de largas (FGCU, 2001). Por tanto: Allá donde sea necesario emplear texto asegúrese de hacer un correcto uso de los espacios en blanco, las listas, indentaciones y de diferentes estilos de
104
fuente, de forma que el usuario pueda localizar la información importante de forma rápida. Referencias FGCU (2001). Principles of Online Design [en línea]. Florida Gulf Coast University. Disponible en: http://www.fgcu.edu/onlinedesign/intro.html Smee, P. y Smee, L. (2001). Technology in Teaching, Training, Learning and Coaching [en línea]. Disponible en: http://www.Circle-of-Excellence.com *** Allá donde el contenido pueda ser mostrado de otra forma distinta de texto puede ser conveniente tener en cuenta las consideraciones de los patrones: Usando gráficos, Usando color o Usando tablas para mostrar información. El contenido que desees incluir en la página también debe tener en cuenta las consideraciones de Agrupando, reescribiendo contenido y Repetir aspecto.
5.2.4. Patrón Usando Color Adaptado: Tidwell (1999) ....el producto está formado de un gran número de Espacios de Navegación, el cual está organizado en un pequeño número de subsecciones. La Plantilla de la Página y el Contenido de la Página ha sido decidido, ahora te gustaría considerar cómo Usar el Color. Figura 5.2.4.a. Imagen de un menú [www.samlearning.com] [Los diferentes colores empleados en sus opciones son utilizados para resaltar que las páginas apuntadas por las mismas contienen distintos tipos de materiale]
*** ¿Cómo un producto puede dar a los usuarios un sentido de lugar y a la vez decirle dónde está, dentro de una red de espacios? §
El usuario tiene una necesidad de saber dónde está en todo momento.
105
§
§ § §
Algunas veces, no es práctico usar un Contexto Visual para mostrar dónde está un usuario, debido a las restricciones de espacio, asuntos de apariencia, o carencia de la tecnología apropiada. Una etiqueta de texto diciendo en qué sección está el usuario puede no ser estética o no notarse, y el usuario le llevará tiempo leerla y analizarla. Etiquetas con imágenes pueden tener el mismo problema que las de texto, e incluso pueden ser más incomprensibles que el texto. Tu interfaz visual puede parecer mejor con un poco de animación.
Coge un color para la sección principal, y úsalo en cada espacio donde se trabaje con esa sección. Puede ser un color de fondo, un trozo de color, o incluso un color de texto, pero asegúrate que es usado del mismo modo a través del todo el producto. En concreto, úsalo dentro un marco visual consistente que unifique el producto; el usuario debería recordar la apariencia del producto, no la de una subsección. Si estás usando el color de la sección como fondo, o usándolo en gran parte de la superficie, entonces usa colores delicados, claros o menos saturados – colores vivos en grandes áreas dan una fuerte impresión. Si el color se usa en elementos visuales pequeños, que sea más descarado, para que el color se note más. Los colores seleccionados de un único tono, pero con variedad de luminosidad o saturación, pueden ser interpretados como más o menos lo mismo – implican un orden, que puede no ser el que tú quieres. Por otro lado, los colores procedentes de diferentes tonos (rojo, azul, verde, amarillo, etc. siendo primarios) no implican ningún orden relativo, así que puede ser mejor para las secciones que son de acceso aleatorio, o que son de igual estatus o importancia. No olvides proporcionar un modo para ir a otras secciones principales o al espacio principal del producto (Volver a un Sitio Seguro). Considera que también puedes tener usuarios daltónicos, así que si esto es una característica importante de navegación, puedes ofrecer una alternativa no basada en el color además de éste, como etiquetas de texto. Por qué funciona: §
§
§
El color es altamente identificable para sistema visual humano, probablemente más que las etiquetas de texto o los iconos; un usuario sólo lo ve, y no tiene que pensar en ello. Se usa aquí tanto como un unificador (de un grupo de espacios dentro de una sección del producto) y como un diferenciador (entre las secciones). Por lo tanto, presta una estructura a un conjunto de espacios, a partir de la cual un usuario puede fácilmente formal un modelo mental correcto. También ayuda a crear un sentido de sitio para el usuario cuando se combina con una plantilla visual consistente – llega a ser repetitivo, familiar y tranquilizador, a la vez que hace una plantilla más colorista e interesante –.
Por lo tanto: Usa color para identificar las secciones principales del producto.
106
Referencias Tidwell, J. (1999). Common Ground: A Pattern Language for Human-Computer Interface Design [en línea]. Massachusetts Institute of technology. Disponible en: http://www.mit.edu/~jtidwell/common_ground.html Figura 5.2.4.b. Solución del patrón Usando color. [Cada opción del menú tiene un color de fondo distinto.]
5.2.5. Patrón Gestión de cuestionarios on-line Nivel de madurez 3/3 Categoría Patrones de aprendizaje Problema ¿Cómo se deben crear, entregar y calificar cuestionarios de evaluación on-line? Análisis Una de las principales actividades de un proceso de enseñanza-aprendizaje es la evaluación del conocimiento de los estudiantes. Dicha evaluación suele ser a menudo implementada a través de ciertas preguntas o test asignados a unidades de aprendizaje, de tal forma que el estudiante pueda comprobar si verdaderamente ha asimilado los conceptos presentados en dicha unidad. Este proceso de evaluación puede ser automatizado de forma que ahorremos al instructor tiempo y esfuerzo a la hora de entregar y calificar los test. La automatización también supone una ventaja para el estudiante al permitir llevar a cabo la evaluación de su conocimiento en
107
cualquier momento o lugar. De todas formas, la administración (creación, entrega y calificación) on-line del test para la evaluación del conocimiento del estudiante es una tarea complicada. Solución Facilitar herramientas para la evaluación on-line del estudiante a través de cuestionarios. El sistema debe permitir al instructor: § Crear de manera on-line cuestionarios que incluyan tanto preguntas abiertas, que deberán calificadas por el instructor, como preguntas cerradas con respuestas predefinidas cuya evaluación puede ser automatizada. § Crear / editar de manera on-line preguntas cerradas de diferentes tipos: elección múltiple, rellenar espacios, etc. (indicando de manera sencilla qué respuestas son correctas y cuáles no). También se deben poder definir ayudas para cada pregunta o mensajes de refuerzo dependiendo de la respuesta. § Administrar la entrega del test on-line. El instructor debe ser capaz de definir el número máximo de veces que el estudiante puede responder el test, el tiempo máximo permitido para completarlo o informar a los estudiantes de la planificación de las evaluaciones así como de la puntuación asignada a cada test. § Ser capaz de asignar una puntuación para cada pregunta del test y/o para el test en conjunto y actualizar los registros del estudiante con dicha información. § Realizar búsquedas entre las preguntas de test ya existentes y formar nuevos test a partir de las mismas. En ocasiones es necesario ser capaz de importar cuestionarios creados en otros LMS. En estos casos la conformidad del formato del test a algún estándar internacional es necesaria. Opcionalmente el sistema puede incluir la posibilidad de crear test adaptativos donde la serie de preguntas presentadas a lo largo del desarrollo de un test, e incluso el material de estudio presentado, pueda variar dependiendo de las respuestas del alumno. Será necesario definir un conjunto de reglas de secuenciación que rijan el comportamiento del test.
Se recomienda la conformidad de los test con algún estándar de e-Learning internacional. En este caso el estándar de mayor aceptación es el IMS Question and Test Interoperability. Esto aumentará considerablemente tanto la portabilidad del perfil del alumno como la interoperabilidad del software que haga uso de dichos perfiles. Usos conocidos Todos los LMS analizados incluyen algún mecanismo para evaluación on-line. Contexto Este patrón es aplicable a equipos de desarrollo de software que desarrollen LMS. Una vez implementado sus usuarios finales serán los estudiantes y los instructores.
108
Referencias Avgeriou, A., Papasalouros, S., y Retalis, M. S. (2003). Towards a Pattern Language for Learning Management Systems. IEEE Educational Technology & Society, 6, Issue 2, 11-24. Avgeriou, A., Papasalouros, S. y Retalis, M. S. (2003). Patterns For Designing Learning Management Systems, En Actas del European Pattern Languages of Programming (EuroPLOP) 25–29 Junio, Irsee, Alemania. Patrones relacionados Seguimiento del estudiante Gestión de asignaciones al estudiante Más información sobre relaciones
Autores P. Avgeriou, S. Retalis, A. Papasalouros
5.3. EJEMPLO DE COMBINACIÓN DE PATRONES El master en Gestión y Producción en e-learning ofrecido por la Universidad Carlos III de Madrid en colaboración con el Centro Educared de Formación Avanzada (CEFA) en el que participan la Fundación Telefónica y la Fundación Encuentro está implementado sobre la plataforma Educared desarrollada sobre Moodle. Este curso on-line será utilizado como ejemplo de cómo la combinación de una serie de patrones, que han sido recogidos en este informe, pueden dar como resultado el diseño de este tipo de sistemas. Partiendo del patrón A8 Educational Forums, presentado en la sección 4.3.2. “Patrones para Web”, este tipo de aplicaciones tienen como principal reto aunar a estudiantes, padres y profesores con el objeto de que la formación de los estudiantes sea lo más fructífera posible, aunque teniendo en cuenta las necesidades de cada uno de estos colectivos. Para ello la plataforma Educared cuenta con diferentes secciones con noticias, información y foros para padres, alumnos y profesores. En la figura 5.3.a aparece la captura de la página principal (http://intercampus.educared.net/) donde se ha recogido el acceso para cada una de esas secciones. Además, debido a que nos encontramos ante una plataforma Web se pueden identificar otros patrones Web como C1 Homepage Portal (todos los visitantes de esta web tienen que pasar por la página que aparece en la figura 5.3.a), B1 Multiples Ways to Navegate (se recogen herramientas de navegación como migas de pan, menús y enlaces relacionados) o D1 Page Templates (plantillas para presentar las barras de navegación, los contenidos y la información relacionada que se mantiene en todas las páginas del sitio web). Para mayor información sobre estos patrones ver van Duyne et al., (2002).
109
Como patrones de usabilidad encontramos el patrón Sentido de localización representado por las migas de pan (camino de navegación seguido desde la página de inicio) y Logotipo del sitio arriba a la izquierda representado por el logotipo de Educared. Para finalizar con los patrones relacionados con otras áreas, encontramos el patrón de seguridad Role-Based Access Control representado por la sección “Entrar” y los campos “Nombre de usuario” y “Contraseña”. Una vez que el usuario entra a la parte privada del sistema, según su rol (administrador, alumno o profesor) se pueden realizar diferentes tareas, como confeccionar un curso, acceder a los recursos de un determinado curso o añadir actividades y recursos. Cuando no se introduce un nombre o contraseña de manera correcta se informa al usuario que la entrada de datos es incorrecta, es decir el patrón de interacción Input Error Message.
Figura 5.3.a Página principal de intercampus de Educared.
Con respecto a los patrones de e-learning propiamente dichos, nos introduciremos dentro de los módulos del master. Comenzando con los patrones recogidos en la sección “Ejemplos de patrones para plataforma educativas”, el patrón Curso nos describe las tres fases en las que se debería organizar todo sistema de aprendizaje: fase preliminar, principal y evaluación. La elaboración del master y cada uno de sus módulos han seguido estas fases. Para conocer en mayor profundidad las características de cada una de estas fases es necesario consultar cada uno de los patrones que las describen. El patrón Fases preliminares provee un plan de
110
actividades genérico para la inicialización de cursos. La planificación y los recursos del módulo fueron publicados con anterioridad. Para la fase principal se optó por un estilo de aprendizaje recogido en el patrón Estudiante Activo, que pretende involucrar al estudiante en el aprendizaje mediante la elaboración de una serie de actividades. Dentro de los módulos del master se añadieron actividades donde debían aplicarse los conocimientos adquiridos a partir de las unidades didácticas que conformaban cada módulo. Además, existe un proyecto global individual que permite al estudiante desarrollar sus capacidades analíticas, de razonamiento y de resolución de problemas. Otros patrones que se han tenido en cuenta con respecto a la plataforma educativa es la aplicación de Aprendizaje colaborativo asíncrono mediante la creación de foros para cada una de las actividades y promover así un aprendizaje más activo. Mediante un vídeo del coordinador los objetivos de cada módulo fueron explicados. Finalmente, en un foro específico se respondieron todas las dudas relacionadas con las tareas a realizar, el modo de evaluación y los objetivos a conseguir. Con respecto a la evaluación, se decidió seguir el patrón Evaluación del instructor donde los tutores son los encargados de evaluar los logros de los participantes en las actividades de aprendizaje. Las decisiones tomadas sobre el estilo de aprendizaje tuvieron como consecuencia la inclusión de unos determinados ODEs. Los patrones para objetos digitales educativos permiten diseñar la presentación de los contenidos educativos en una plataforma web. Debido a que se requería un aprendizaje activo se incluyeron los siguientes elementos para fomentar a los alumnos, algunos de ellos ya comentados. El patrón Chat para comunicación simultánea entre tutores y alumnos; el patrón Foros de feedback, donde los tutores abrieron diferentes hilos para cada una de las tareas a desarrollar y así los estudiantes pudiesen expresar sus dudas o comentarios sobre las mismas; el patrón Auto-Examen dio la posibilidad a los alumnos de evaluarse a si mismos y conocer si estaban preparados para realizar las tareas asociadas a una unidad didáctica. En la figura 5.3.b aparece la captura de pantalla de uno de los módulos del master. En la parte derecha se encuentran los accesos a todos aquellos ODEs para fomentar el aprendizaje activo (foros y chats). Para el Diseño de Página se ha optado por representar los contenidos teóricos dentro de una hoja de papel tradicional. Sin embargo hay que señalar que no se ha tenido en cuenta todos los consejos del patrón, incluyendo así un scroll para aquellos contenidos que no se pueden visualizar de una sola vez en la pantalla, en vez de vivirlos, lo que conlleva a confusión entre los scrolles de la pantalla y del contenido, a la vez que es demasiada información para leer en una sola pantalla. Mostrando el Contenido de la Página también sigue la misma plantilla para todos los contenidos. El texto se agrupa en cabecera, teoría y ejemplos (se muestra en un recuadro sombreado), incluyéndose cambios de color para resaltar la información importante.
111
Figura 5.3.b. Un objeto digital de un módulo del master
6. CONCLUSIONES Douglas (2006) lleva a cabo un análisis de diversos problemas relacionados con la ingeniería de software, de cuyas soluciones pueden obtenerse conclusiones aplicables al área del diseño instruccional. Entre dichos problemas menciona la falta de confianza que ciertos desarrolladores muestran a la hora de reutilizar componentes que no han sido desarrollados por ellos mismos, y la percepción de que en muchas ocasiones el esfuerzo asociado a la adaptación de componentes a un nuevo contexto pueden resultar mayores que la construcción de uno nuevo desde cero. Esta situación es en gran medida extrapolable al área de la ingeniería instruccional. De igual forma que en el mundo de software el concepto de patrón está ganando popularidad como método para reutilizar no un componente ya construido sino el conocimiento de diseño requerido para su construcción, la reutilización del conocimiento relacionado con el diseño instruccional puede ser alcanzada mediante el uso de patrones. Disponer de un catálogo de patrones abstractos, que pueden ser aplicados en una amplia gama de dominios, y que han sido construidos a partir de las experiencias comunes de la comunidad de educadores, puede resultar un recurso inestimable a la hora de construir nuevos diseños, más aún si dichos patrones además de describir pares de problemas-solución incluyen referencias a estudios empíricos
112
que respalden la solución propuesta. En este sentido, en este documento se aboga por la utilización de patrones de distintos dominios de diseño, en tanto en cuanto nuestros sistemas de e-learning son también sistemas multiperspectiva. No obstante, la decisión de utilizar o no un patrón no es tan inmediata ni sencilla como podría parecer a primera vista, especialmente si se empiezan a mezclar patrones de diversos dominios de diseño. Es muy probable que la aplicación de un patrón tenga un coste en esfuerzo y que, además, afecte negativamente en la consecución de otros objetivos de diseño. Es cierto que al realizar un sistema de e-learning son muchos los objetivos a alcanzar, pero no es menos cierto que cualquier proyecto tiene unas limitaciones presupuestarias y temporales y que, en la mayoría de los casos, hay que sacrificar algunos objetivos en aras de conseguir un producto final de la forma más efectiva posible. Sin embargo, cuando se utilizan los patrones tal y como aquí los hemos visto, el diseñador no es consciente del avance que está haciendo en las metas del sistema, no sabe qué metas se están cumpliendo y cuáles se están dejando atrás, por lo que se corre el riesgo de construir un sistema reutilizando conocimiento pero no cumpliendo con las expectativas iniciales que se tenían sobre el mismo. Por ello, la adopción de patrones debe pasar por un proceso integrado, en el que los patrones estén ligados a conseguir unas metas y a sus prioridades, y en el que sea posible estimar el coste de aplicar los patrones así como el avance en el proyecto, ya que de este modo se corre el riesgo de profundizar en exceso en funcionalidades que tal vez no sean las que van a definir la “cualidad sin nombre” de nuestro sistema de elearning.
113
7. BIBLIOGRAFÍA • • •
•
• • • • • • •
•
• • •
Adams, J., Koushik, S., Vasudeva, G. y Galambos, G. (2001). Patterns for ebusiness: A Strategy for Reuse. IBM. Addison-Wesley (2002). A pattern language for web usability, [en línea]. Disponible en: http://www.trireme.com/WU/ [2008, 26 noviembre]. Advanced Distributed Learning (2004). Sharable Courseware Object Reference Model (SCORM) 2004 3rd Edition Documentation Suite [en línea]. Disponible en:http://www.adlnet.gov/downloads/AuthNotReqd.aspx?FileName=SCORM.20 04.3ED.DocSuite.zip&ID=237 , [2008, 26 noviembre]. Albin-Amiot, H. y Guéehéneuc, Y. (2001). Meta-modeling design patterns: Application to pattern detection and code synthesis. En Actas ECOOP Workshop on Automating Object-Oriented Software Development Methods (pp. 57–64), [en línea]. Disponible en: , http://www.labunix.uqam.ca/~ghizlane/Sujet/Patrons/Meta-modelingDP.pdf [2008, 26 noviembre] Alexander, C. (1979). The Timeless Way of Building. New York: Oxford University Press. Alexander, C., Davis, H., Martinez, J. y Corner., D. (1985). The Production of Houses. New York: Oxford University Press. Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fiksdahl-King, I. y Angel, S. (1977). A Pattern Language: Towns, Buildings, Construction. New York: Oxford University Press. Alur, D., Malks, D. y Crupi, J. (2003). Core J2EE Patterns: Best Practices and Design Strategies (2nd edition). Prentice Hall PTR. Ambler, S.W. (1998). Process Patterns: Building Large-Scale Systems Using Object Technology. Cambridge University Press. Anthony, D. L. (1996). Patterns for Classroom Education. En Pattern Languages of Program Design 2. Addison-Wesley Longman Publishing Co., Boston, MA, pp. 391-406. Appleton, B. (2000). Patterns and Software: Essential Concepts and Terminology, [en línea]. Disponible en: http://www.cmcrossroads.com/bradapp/docs/patterns-intro.html [2008,26 noviembre] Asensio Pérez, J.I., Dimitriadis, Y., Heredia Rodríguez, M., Martínez Monés, A., Álvarez Rabanal, F.J., Blasco, M.T. y Osuna Gómez, C. (2004). Collaborative Learning Patterns: Assisting the development of component-based CSCL applications. Parallel, Distributed and Network-Based Processing. En actas 12th Euromicro Conference, IEEE press, pp. 218-224. Atsoft Incorporated (2001). LearningBeat Capabilities [en línea]. http://www.achieveplus.ca/News/LearningBeat%20Capabilities.pdf Avgeriou, A., Papasalouros, S. y Retalis, M. S. (2003). Patterns For Designing Learning Management Systems, En Actas del European Pattern Languages of Programming (EuroPLOP) 25–29 Junio, Irsee, Alemania. Avgeriou, A., Papasalouros, S., y Retalis, M. S. (2003). Towards a Pattern Language for Learning Management Systems. IEEE Educational Technology & Society, 6, Issue 2, 11-24.
114
• • • • •
• • • • •
•
• •
• • •
Avgeriou, P., Papasalouros, A., Retalis, S. y Skordalakis, M. (2003). Towards a Pattern Language for Learning Management Systems. Educational Technology & Society, 6 (2), 11-24. Bergin, J. (2002). A Pattern Language for Course Development in Computer Science [en línea]. Pace University. Disponible en: http://csis.pace.edu/~bergin/patterns/coursepatternlanguage.html Bolchini, D. (2000). Web design patterns: Improving quality and performance in web application design. Master’s thesis, Universit della Svizzera Italiana. Bolchini, D. (2002). Hypermedia Design Patterns Repository, [en línea]. [2008, 2 Disponible en: http://www.designpattern.lu.unisi.ch/index.htm diciembre]. Borchers, J. (2002). Teaching hci design patterns: Experience from two university courses. En CHI 2002 International Conference on Human Factors and Computing Systems, [en línea]. Disponible en: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.4157 [2008, 2 diciembre]. Borchers, J. O. (2000). A pattern approach to interaction design. En Actas of the conference on Designing interactive systems, (pp. 369–378). ACM Press. Borchers, J. O. (2001). A Pattern Approach to Interaction Design. John Wiley & Sons. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P. y Stal, M. (1996). A System of Patterns: Pattern-Oriented Software Architecture. Wiley. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P. y Stal, M. (2001). Pattern-Oriented Software Architecture, Volume 1: A System of Patterns. Wiley. Chambers, C., Harrison, B. y Vlissides, J. (2000). A debate on language and tool support for design patterns. En Actas of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages (pp. 277–289). ACM Press. Chung, E. S., Hong, J. I., Lin, J., Prabaker, M. K., Landay, J. A., y Liu, A.,L., (2004). Development and Evaluation of Emerging Design Patterns for Ubiquitous Computing. En Actas of Designing. Interactive Systems (pp. 233242). ACM, New York. Coplien, J. O. (1998). Software Design Patterns: Common Questions and Answers (pp. 311–320). New York: Cambridge University Press. Cybulski, J. L. y Linden, T. (1999). Composing Multimedia Artefacts for Reuse. En Pattern Languages of Program Design, (vol. 4, pp. 461–488). AddisonWesley Longman. Dearden, A., Finlay, J., Allgar, E. y McManus, B. (2002). Using pattern languages in participatory design. En Actas of the Participatory Design Conference (pp 104 – 113). CPSR, Palo Alto, CA. Delgado, J. A., Morales, R., González, S. C. y Chan, M. A. (2007). Desarrollo de objetos de aprendizaje basado en patrones, [en línea]. Disponible en: http://videoseducativos.org/comtics/228-JDV.pdf [2008, 2 diciembre]. Derntl, M. y Motschnig-Pitrik, R. (2004). A Pattern Approach to Person Centered e-Learning Based on Theory-Guided Action Research. Trabajo presnetado en 4th International Conference on Networked Learning, Lancaster, England.
115
• • •
• • • • • •
•
•
•
•
• •
•
Díaz, P., Montero, S., Sanz, D. y Aedo, I. (2006). Integrating access policies into the development process of hypermedia. En Web and Information Security (pp. 149-172). Idea. Group, Inc. Elena Ferrari, Bhavani Thuraisingahm Eds. Douglas, I. (2006, septiembre/octubre). Issues in Software Engineering of Relevance to Instructional Design. Tech Trends, 50 (5), 28-35. Duell, M. (1997). Non-Software Examples of Software Design Patterns [en línea]. Disponible en: http://www.cours.polymtl.ca/inf3700/divers/nonSoftwareExample/patexamples.h tml [2008, 2 diciembre]. Erickson, T. (2000). Lingua francas for design: sacred places and pattern languages. En Actas of the conference on Designing interactive systems (pp. 357–368). ACM Press. Fernandez, E. B. y Pan, R. (2001). A pattern language for security models. Trabajo presentado en 8th Conference on Pattern Languages of Programs, PLoP 2001, Allerton Park, Illinois, Estados Unidos. FGCU (2001). Principles of Online Design [en línea]. Florida Gulf Coast University. Disponible en: http://www.fgcu.edu/onlinedesign/intro.html Fink, L. D. (2002). Ideas on Teaching. Higher Level Learning: Ways of Teaching to Generate Significant Learning [en línea]. Oklahoma: University of Oklahoma. Disponible en: http://www.ou.edu/idp/tips/ideas/higherlevel.html Finlay, J. (2001). Preliminary review and evaluation criteria for distance learning technology. E-DiLeMa: E-resources and Distance Learning Management (Minerva Project no. 90683-CP-1-200). Leeds Metropolitan University. Fowler, M. (1997). Analysis Patterns: Reusable Object Models. Addison-Wesley Object Technology Series. Reading: Addison-Wesley Publishing Company. Fricke, A. y Voelter, M. (2000). SEMINARS: A Pedagogical Pattern Language about teaching seminars, [en línea]. Trabajo presentado en EuroPLoP 2000. [2008, 2 Disponible en: http://www.voelter.de/publications/seminars.html diciembre]. Frizell, S. S. y Hübscher, R. (2002). Supporting the Application of Design Patterns in Web-Course Design. En Actas of the AACE Ed-Media, Denver. Association for the Advancement of Computing in Education (AACE), Norfolk, VA. Gamma, E., Helm, R., Johnson, R. E. y Vlissides, J. (1993). Design Patterns: Abstraction and Reuse of Object-Oriented Design. Trabajo presentado en European Conference on Object-Oriented Programming (ECOOP) '93, Kaiserslautern, Germany. Gamma, E., Helm, R., Johnson, R. y Vlissides, J. (1994). Design Patterns, Elements of Reusable Object-Oriented Software. Addison-Wesley. Garrido, A., Rossi, G. y Schwabe, D. (1997). Patterns systems for hypermedia. En Actas of The 3rd Pattern Language of Programming Conference. Informe Técnico TR #WUCS-97-34, Washington University, St. Louis, MO, USA . Garzotto, F., Paolini, P., Bolchini, D. y Valenti, S. (1999). Modeling-by-Patterns of web applications. En Advances in Conceptual Modeling: ER ’99 Workshops on Evolution and Change in Data Management, Reverse Engineering in Information Systems, and the World Wide Web and Conceptual Modeling (pp. 293–306). Lecture Notes In Computer Science, vol. 1727. Springer-Verlag, London. Georgiakakis, P., Psaromiligkos, Y. y Retalis, S. (2006). The Use of Design Patterns for Evaluating Personalisable Web-based Systems. En Fifth Workshop
116
•
• •
• • • • • • •
•
•
•
•
on User-Centred Design and Evaluation of Adaptive Systems in conjunction with AH2006 (pp.440-449). Lecture Notes in Learning and Teaching. Dublin: National College of Ireland. Gomes, P., Pereira, F., Paiva, P., Seco, N., Carreiro, P., Ferreira, J.L. y Bento, C. (2002). Using CBR for automation of software design pattern. En Actas of the European Conference Case-Based Reasoning (ECCBR’02), (pp. 534–548). Lecture Notes in Computer Science Vol. 2416/2002 Springer Berlin / Heidelberg. Graham, I. (2003). A Pattern Language for Web Usability. Addison-Wesley Pub Co. Granlund, Å, Lafrenière, D. y Carr, D. (2001). A Pattern-Supported Approach to the User Interface Design Process. En Actas of HCI International 2001, 9th International Conference on Human-Computer Interaction, New Orleans, LA. 510 August 2001,(vol. 1, pp. 282-286). Lawrence Erlbaum Associates, Inc., Mahwah, NJ. Guerrero, L. A. y Fuller, D. A. (2001). A pattern system for the development of collaborative applications. Information & Software Technology, 43 (7), 457-467. Hamza, H.S. y Fayad, M.E. (2004). The Negotiation Analysis Pattern. Trabajo presentado en The 11th Conference on Pattern Languages of Programs (PLoP2004), Illinois, Estados Unidos. Hillside Group (2007). Corporación dedicada a mejorar las prácticas de diseño y programación [en línea]. Disponible en: http://www.hillside.net/ [2008, 26 de noviembre]. IEEE Learning Technology Standards Committee - LTSC, (2001). IEEE P1484.12 Learning Object Metadata Working Group; WG12, [en línea]. Disponible en: http://ltsc.ieee.org/wg12/ [2008, 2 diciembre]. IFIP TC13 HCI Patterns Task Group (2005). Lenguaje de patrones sobre HCI, [en línea]. Disponible en: http://www.hcipatterns.org [2008, 26 de noviembre] IMS Global Learning Consortium (2001). IMS Learner Information Package Information Model. Version 1.0 final specification, [en línea]. Disponible en: http://www.imsglobal.org/profiles/index.html [2008, 2 diciembre]. IMS Global Learning Consortium (2003a). IMS Learning Design Information Model, version 1.0 - final specification, [en línea]. Disponible en: http://www.imsglobal.org/learningdesign/ldv1p0/imsld_infov1p0.html [2008, 2 diciembre]. IMS Global Learning Consortium (2003b). IMS Simple Sequencing Information and Behavior Model. Version 1.0 Public Draft Specification, [en línea]. Disponible en: http://www.imsglobal.org/simplesequencing/ssv1p0/imsss_infov1p0.html [2008, 2 diciembre]. IMS Global Learning Consortium (2004). IMS Content Packaging Information Model, Version 1.1.4 Final Specification, [en línea]. Disponible en: http://www.imsglobal.org/content/packaging/cpv1p1p4/imscp_infov1p1p4.html [2008, 2 diciembre]. IMS Global Learning Consortium (2006). IMS Question & Test Interoperability Overview Version 2.1 Public Draft (revision 2) Specification, [en línea]. Disponible en: http://www.imsglobal.org/question/index.html [2008, 2 diciembre]. Kardell, M. (1997). A classification of object-oriented design patterns. Master’s thesis, Umea University.
117
•
• •
• •
• • • • •
•
• •
•
Keidel, R. (1995). Seeing Organizational Patterns: A New Theory and Language of Organizational Design. Berrett-Koehler Publishers. Kerievsky, J. (1999). Knowledge Hydrant: A Pattern Language for Study Groups, [en línea]. Disponible en: http://www.industriallogic.com/papers/khdraft.pdf [2008, 2 diciembre]. Koper, R. (2004). Use of the Semantic Web to Solve Some Basic Problems in Education: Increase Flexible, Distributed Lifelong Learning, Decrease Teachers’ Workload. Journal of Interactive Media in Education 2004 (6). Special Issue on the Educational Semantic Web, [en línea]. Disponible en: http://www-jime.open.ac.uk/2004/6 [2008, 2 diciembre]. Landay, J.A. y Borriello, G. (2003). Design Patterns for Ubiquitous Computing. Computer, 36, no. 8, 93-95. Leacock, M., Malone, E. y Wheeler C. (2005). Implementing a Pattern Library in the Real World: A Yahoo! Case Study, [en línea]. Disponible en: http://www.boxesandarrows.com/view/implementing_a_pattern_library_in_the_r eal_world_a_yahoo_case_study. Los patrones pueden ser visitados en: http://developer.yahoo.com/ypatterns/ [2008, 2 diciembre] Lucrédio, D., Alvaro, A., Santana de Almeida, E. y do Prado, A.F. (2003). Mvcase tool- working with design patterns. Trabajo presentado en SugarloafPLoP 2003 Conference. Lyardet, F., Rossi, G. y Schwabe, D. (1999). Discovering and using design patterns in the WWW. Multimedia Tools and Applications, 8, 293–308. Meszaros, G. y Doble, J. (1996). Metapatterns: A pattern language for pattern writing. Trabajo presentado en The 3rd Pattern Languages of Programming conference, Monticello, Illinois, Estados Unidos. Montero, S. (2005). Integración de patrones en el proceso de diseño de sistemas hipermedia mediante el uso de ontologías. Tesis doctoral. Universidad Carlos III de Madrid. Montero, S., Aedo, I. y Díaz, P. (2002). Generation of Personalized Web Courses Using RBAC. En Actas of the Second international Conference on Adaptive Hypermedia and Adaptive Web-Based Systems (May 29 - 31, 2002). P. D. Bra, P. Brusilovsky, and R. Conejo, Eds. LNCS, vol. 2347. SpringerVerlag, London, pp. 419-423. Motschnig-Pitrik, R. y Derntl, M. (2002a). Student-Centered e-Learning (SCeL): Concept and application in a students' project on supporting learning. Trabajo presentado en el International Workshop on Interactive Computer-Aided Learning (ICL) 2002, Villach, Austria. Motschnig-Pitrik, R., & Holzinger, A. (2002b). Student-Centered Teaching Meets New Media: Concept and Case Study. Educational Technology & Society, 5 (4), 160-172. Naeve, A. (1999). Conceptual Navigation and Multiple Scale Narration in a Knowledge Manifold, [en línea]. Royal Institute of Technology Numerical Analysis and Computing Science Knugl Tekniska Hogskolan, Stockholm, Sweden. Disponible en: http://cid.nada.kth.se/pdf/cid_52.pdf [2008, 2 diciembre]. Noble, J. (1998). Towards a pattern language for object oriented design. En Actas de Technology of Object-Oriented Languages and Systems TOOLS, (pp. 2-13). IEEE Computer Society.
118
• • •
•
• •
• • • •
• • • • • • •
O'Connor, T. (1997). CTL Learning Styles Site: Using Learning Styles to Adapt Technology for Higher Education [en línea]. Indiana State University. Disponible en: http://www.indstate.edu/ctl/styles/learning.html Pattern Languages Of Programs (2008), [en línea]. Conferencia. Disponible en: http://hillside.net/plop/ [2008, 2 diciembre] Peters, J. F. (2003). Design patterns in intelligent systems. En Foundations of Intelligent Systems, XIV Simposio Internacional, ISMIS 2003, (pp. 262–269). Lecture Notes in Computer Science, Vol. 2871/2003 Springer Berlin / Heidelberg. Plowman, K. (2001). A pattern language for travel website design. Tesis de Master of Science, School of Computing and Management Sciences, Sheffield Hallam University, Reino Unido. Prechelt, L., Unger, B., Tichy, W. y Brossler, P. (2001, diciembre). A controlled experiment in maintenance comparing design patterns to simpler solutions. IEEE Transactions on Software Engineering 27 (12), 1134-1144. Re, R., Braga, R. T. V. y Masiero, P. C. (2001). A Pattern Language for Online Auctions Management. En Actas of the 8th Conference on Pattern Languages of Programs (Plop 2001) [en línea]. Disponible en: http://jerry.cs.uiuc.edu/~plop/plop2001/accepted_submissions/PLoP2001/rre0/P LoP2001_rre0_1.pdf [2008, 2 diciembre] Reffell, J. y Alpern, M. (2006). Design Patterns in the Real World. En Actas of the 7th Information Architecture [en línea]. http://www.lukew.com/FF/entry.asp?318 [2008, 2 diciembre] Rehak, D. R. y Mason, R. (2003). Keeping the learning in learning objects. En A. Littlejohn (Ed.) Reusing online resources: a sustainable approach to eLearning (pp.22-30). Londres: Kogan Page. Riehle, D. y Zullighoven’s, H. (1996). Understanding and using patterns in software development. Theory and Practice of Object Systems, 2 (1). Rising, L. (2003). Pattern forms. En Actas de Viking PLOP 2003 Rogers, C. R. (1983). Freedom to Learn for the 80's. Columbus, Ohio: Charles E. Merrill Publishing Company. Rossi, G. Lyardet, F. y Schwabe, D. (1999b). Developing hypermedia applications with methods and patterns. ACM Computing Surveys, 31 (4es), 8. Rossi, G., Garrido, A. y Carvalho, S. (1996). Design Patterns for ObjectOriented Hypermedia Applications. Pattern Languages of Programs II. AddisonWesley. Rossi, G., Lowe, D., Nanard, J., y Schwabe, D. (1999a, junio). Design patterns in hypermedia: (2nd workshop on hypermedia development). SIGWEB Newsl. 8, (2), 38-41. Rossi, G., Lyardet, F. y Schwabe, D. (2000). Patterns for e-commerce applications, Actas de EuroPLop 2000 [en línea]. Disponible en : http://wwwdi.inf.puc-rio.br/schwabe//papers/Europlop00.pdf [2008, 02 diciembre] Rossi, G., Schwabe, D. y Garrido, A. (1997). Design reuse in hypermedia application development. En Actas of the 8th. ACM Conference on Hypertext: Hypertext’97, Southampton, England. ACM, New York, NY . Rossi, G., Schwabe, D., Danculovic, J. y Miaton, L. (2001). Patterns for personalized web applications. En Actas of EuroPlop´01, (pp. 423–436) [en línea]. Disponible en:
119
•
•
• • • • • •
• • • • • • • • • •
http://www.lifia.info.unlp.edu.ar/papers/2001/Schwabe2001b.pdf [2008, 2 diciembre]. Saponas, T. S., Prabaker, M. K., Abowd, G. D. y Landay, J. A. (2006). The impact of pre-patterns on the design of digital home applications. En Actas of the 6th ACM Conference on Designing interactive Systems (University Park, PA, USA, June 26 - 28, 2006). DIS '06. (pp. 189-198). New York: ACM Press. Sartzetaki M., Psaromiligkos Y., Retalis S. y Avgeriou P. (2003). Usability evaluation of e-commerce sites based on design patterns and heuristic criteria. Trabajo presentado en la 10th International Conference on Human - Computer Interaction, Heraklion, Creta. Schmidt, D.C (2006). Patterns for concurrent, parallel, and distributed systems, [en línea]. Disponible en: http://www.cse.wustl.edu/~schmidt/patterns-ace.html [2008, 2 diciembre]. Schmith, D., Stal, M., Rohnert, H. y Buschman, F. (2000). Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects. Vol. 2. John Wiley & Sons. Security Patterns Comunity (2008). Sitio web sobre patrones de seguridad [en ínea]. Disponible en: http://www.securitypatterns.org/ [2008, 2 diciembre] Seffah, A. (2003). Learning the ropes: human-centered design skills and patterns for software engineers’ education. Interactions, 10 (5), 36–45. Smee, P. y Smee, L. (2001). Technology in Teaching, Training, Learning and Coaching [en línea]. Disponible en: http://www.Circle-of-Excellence.com Sun Microsystems. (2002). Core J2EE Patterns - Business Delegate, [en línea]. Disponible en: http://java.sun.com/blueprints/corej2eepatterns/Patterns/BusinessDelegate.html [2008, 2 diciembre]. The e-dilema Project (2002), [en línea]. Disponible en: http://e-dilema.uhk.cz/default.asp [2008, enero]. The E-LEN Project (2005), [en línea]. Disponible en: http://www2.tisip.no/ELEN/ [2008, enero]. The Pedagogical Patterns Project (2008), [en línea]. Disponible en: http://www.pedagogicalpatterns.org/ [2008, Enero] Tidwell, J. (1999). Common Ground: A Pattern Language for Human-Computer Interface Design [en línea]. Massachusetts Institute of technology. Disponible en: http://www.mit.edu/~jtidwell/common_ground.html Tidwell, J.M, (2008). Designing Interfaces: Patterns for Effective Interaction Design, [en línea]. Disponible en: http://designinginterfaces.com/ [2008] Ubicomp Design Patterns (2004), [en línea]. Disponible en: http://dub.washington.edu:2007/projects/patterns/ [2008, 2 diciembre]. van Duyne, D. K., Landay, J. A. y Hong, J. I (2002). The Design of Sites: Patterns, Principles, and Processes for Crafting a Customer-Centered Web Experience. Addison-Wesley. van Welie, M. (2007). Web pattern repository, [en línea]. Disponible en: http://www.welie.com/patterns/index.php [2008, 2 diciembre]. Weippl, E. R. (2005). Security in E-Learning (Advances in Information Security). Nueva York: Springer-Verlag. Wiley, D. A. (2000). Connecting Learning Objects to Instructional Design Theory: A definition, a metaphor, and a taxonomy. En D.A. Wiley (Ed.), The
120
•
Instructional Use of Learning Objects (pp. 1 -35). Bloomington: Association for Educational Communications and Technology. Zimmer, W. (1995). Relationships between design patterns. En Pattern Languages of Program Design (pp. 345–364). Addison-Wesley.
121