Entorno Integrado De Enseñanza Virtual
Herramientas Y Contenido Libres
Para El Aprendizaje Colaborativo
C4 - Fundamentos P...
Se debe Citar como:
Ortiz Benavides, Giancarlo; Hernández Mora Agustín.
Entorno Integrado De Enseñanza Virtual. Herramient...
63
CAPÍTULO IV
FUNDAMENTOS PARA ELEGIR HERRAMIENTAS e-Learning
Las características y metas antes propuestas para las herra...
64
4.1Funcionalidad
En la Figura 23 se observan algunas de las funciones específicas deseables para un AVA
y que se pueden...
65
Las métricas propuestas son subjetivas y en ningún momento de carácter científico,
pero sirven como aproximación viable...
66
que estos brinden cercanía, innovación e interacción en el trabajo educativo; pero
jamás deben ser un fin en sí mismo, ...
67
4.4.1 El servidor web
Un servidor web es un programa informático que ayuda en la ejecución de otros
programas en el nod...
68
A diferencia de otros sistemas operativos que son controlados, distribuidos y
soportados por una sola empresa, el núcle...
69
La instalación guiada pero en modo texto de Ubuntu Server incluye entre otros
programas un servidor LAMP, gestión de ba...
70
4.4.2.1 PHP, Hypertext Pre-processor
Es un lenguaje de programación de alto nivel creado en 1995 por Rasmus Lerdorf y
o...
71
4.4.2.2 JSP/Java
Es un lenguaje de alto nivel, pre-compilado o bytecode y orientado a objetos; fue
desarrollado en 1995...
72
4.4.2.3 Python
Es un lenguaje de programación interpretado, multiparadigma y con una sintaxis muy
limpia desarrollado p...
73
4.4.2.4 Perl
Perl es un lenguaje interpretado desarrollado por Larry Wall en 1987 liberado bajo
licencia GNU/GPL. Es un...
74
Las licencias de software son contratos o copyright en los cuales el propietario de los
derechos de autor, pone las con...
75
4.4.3.3 GNU LGPL (Lesser General Public License de GNU)
La principal diferencia entre esta licencia y la GPL es que est...
76
4.5 Resumen
Las herramientas de e-Learning con posibilidades de integración y desarrollo, que se
han escogido para la e...
77
Aunque existe multitud de criterios para elegir aplicaciones web; se escogieron los
cuatro que menciona este capítulo p...
Upcoming SlideShare
Loading in …5
×

Ortiz et al_aprendizaje_colaborativo_2013_c4

303 views

Published on

Fundamentos para elegir aplicaciones web para e-Learning

Published in: Education
1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total views
303
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
1
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Ortiz et al_aprendizaje_colaborativo_2013_c4

  1. 1. Entorno Integrado De Enseñanza Virtual Herramientas Y Contenido Libres Para El Aprendizaje Colaborativo C4 - Fundamentos Para Elegir Herramientas De e-Learning Giancarlo Ortiz Benavides
  2. 2. Se debe Citar como: Ortiz Benavides, Giancarlo; Hernández Mora Agustín. Entorno Integrado De Enseñanza Virtual. Herramientas y Contenido Libres Para El Aprendizaje Colaborativo. Medellín. 2013. Pág. 63-77 “Dime y lo olvido, enséñame y lo recuerdo, involúcrame y lo aprendo.” Benjamin Franklin “El objeto de la educación es preparar a los jóvenes para que se eduquen a sí mismos durante toda su vida.” Robert Hutch
  3. 3. 63 CAPÍTULO IV FUNDAMENTOS PARA ELEGIR HERRAMIENTAS e-Learning Las características y metas antes propuestas para las herramientas que incluya una plataforma de enseñanza virtual, deben estar en total congruencia con las ayudas y los materiales educativos; de tal manera que las herramientas web que se seleccionen para el aprendizaje colaborativo, deben brindar la oportunidad de entrar en contacto con el aprendizaje tecnológico e innovador que se menciona en el capítulo anterior. Como un punto de partida se insinúan, en la Figura 22, cuatro actividades básicas que deben proveer las herramientas seleccionadas; para que en conjunto integren el ambiente virtual de aprendizaje, AVA.52 Figura 22. Cimientos en una plataforma de e-Learning Estas actividades son deseables cuando los contenidos se encuentran incluidos en una OVA , así como cuando los materiales de enseñanza se encuentran independientes, de manera que los usuarios de la plataforma tengan a disposición variedad de herramientas y un mayor número de canales de comunicación con los que puedan identificarse. Los diferentes mecanismos de participación-distribución y los medios para compartir- evaluar que se deseen, darán lugar a la búsqueda de aplicaciones más específicas. De esta manera se van depurando, a grandes rasgos, las herramientas web que se necesita para satisfacer las necesidades de una institución. Adicionalmente a la funcionalidad requerida también es necesario utilizar algunos criterios de calidad de software y establecer algunas ventajas tecnológicas y económicas para la selección de estas herramientas. 52 En inglés Virtual learning environment, VLE.
  4. 4. 64 4.1Funcionalidad En la Figura 23 se observan algunas de las funciones específicas deseables para un AVA y que se pueden satisfacer por medio de las herramientas o plataformas web que existen o creando aplicaciones complementarias para conseguirlo. Figura 23. Herramientas educativas Adicionalmente a las herramientas, asociadas a la Figura 23, que se proponen en el desarrollo práctico de este trabajo; en la tercera sección del CAPÍTULO VI se presentan otras encontradas en las instituciones académicas que se exploraron ; estos servicios tienen algunas de las funcionalidades no contenidas en la figura y que podría desearse a futuro incluir en el AVA. 4.2 Calidad De la misma manera que otras aplicaciones web; las herramientas educativas, como herramientas de software, se deben elegir teniendo en cuenta aquellos conceptos de ingeniería de software que nos permitan conocer sus atributos y medir su calidad, para esto es posible apoyarse en algunos de los factores de McCall que se muestran en la Figura 24, haciendo énfasis en la operación y la transición del producto.[21] Figura 24. Factores de calidad de McCall para un producto de software
  5. 5. 65 Las métricas propuestas son subjetivas y en ningún momento de carácter científico, pero sirven como aproximación viable para comparar las herramientas de aprendizaje virtual.  Usabilidad. (facilidad de manejo). El esfuerzo necesario para aprender a operar la herramienta de software.  Integridad. (seguridad). En qué medida se puede controlar el acceso al software o a los datos por personas no autorizadas.  Eficiencia. La cantidad de recursos informáticos y de código necesarios para que un programa realice su función.  Portabilidad. El esfuerzo necesario para transferir el programa de un entorno hardware o software a otro entorno diferente.  Reusabilidad. (capacidad de reutilización). Hasta dónde se puede volver a emplear un programa (o partes de un programa) en otras aplicaciones, en relación al empaquetamiento y alcance de las funciones que realiza el programa.  Interoperabilidad. El esfuerzo necesario para acoplar una herramienta con otra.  Evolutividad. El grado con que se hacen ampliaciones de diseño arquitectónico, de capacidad de datos o procedimental 4.3 Optimización de recursos Para que un material didáctico contribuya de manera significativa en el aprendizaje de los estudiantes, no es suficiente con que se trate de un material de buena calidad o que contenga propuestas innovadoras. Cuando se realiza la selección de estos recursos educativos, además de su calidad se debe considerar en qué medida sus características y actividades específicas son congruentes con el contexto educativo específico de la universidad en el que tendrán lugar, para esto debemos evaluar:  Las características de los estudiantes que utilizarán las herramientas de aprendizaje virtual; capacidades, estilos de aprendizaje, intereses, saberes previos, experiencia y habilidades requeridas para el uso de estos materiales.  Las estrategias didácticas o conjunto de actividades que podemos diseñar y proponer a los estudiantes para que aseguren la eficacia en el logro de los aprendizajes planeados. Los materiales formativos, incluyendo a los OVA y otras herramientas para el aprendizaje virtual deben ser un apoyo para los docentes y las instituciones, de forma
  6. 6. 66 que estos brinden cercanía, innovación e interacción en el trabajo educativo; pero jamás deben ser un fin en sí mismo, y mucho menos la única herramienta utilizada por los docentes, pues su principal material debe ser el conocimiento de lo que enseña. De ahí que la Unesco propone un marco operacional para la inclusión de TIC en la educación; donde se resalta que el uso de las plataformas y la elaboración de los contenidos es parte de una operación más compleja como lo evidencia la Figura 25. Figura 25. Marco conceptual y operacional para la integración de TIC en educación El flujo de trabajo, que se infiere de la Figura 25 como un modelo para la inclusión de TIC en la educación, sugiere nuevas consideraciones para la elección de las herramientas web, de manera que estas nos permitan:  Utilizar y Optimizar los recursos físicos disponibles.  Utilizar los conocimientos de docentes ya capacitados.  Utilizar los contenidos ya elaborados.  Garantizar la evaluación de los Resultados.  Facilitar el flujo de trabajo, al interior del equipo que diseña y publica los contenidos digitales. 4.4 Requisitos Los requisitos necesarios para la implementación y desarrollo de las herramientas constituyen un criterio para elegir las aplicaciones web adecuadas. En las secciones siguientes se consideran los requisitos más comunes para la implementación de estas aplicaciones.
  7. 7. 67 4.4.1 El servidor web Un servidor web es un programa informático que ayuda en la ejecución de otros programas en el nodo servidor, enviando y recibiendo información en cualquier lenguaje a los nodos cliente conectados. Este programa apoyado en el sistema operativo del nodo servidor, permite que los nodos cliente puedan hacer uso de sus datos y sus recursos por medio del navegador utilizado en los nodos cliente. Figura 26. Servidor web En el mundo de los sistemas operativos para servidores, las distribuciones basadas en UNIX son de particular importancia porque han logrado adaptarse a todas las plataformas y a muchas de las necesidades existentes a través del tiempo. Figura 27. Familia Unix
  8. 8. 68 A diferencia de otros sistemas operativos que son controlados, distribuidos y soportados por una sola empresa, el núcleo de Linux y las aplicaciones GNU son libres de distribuir y utilizar; aprovechando esta situación numerosos individuos y organizaciones han desarrollado y desarrollan su propia versión específica del sistema operativo GNU/Linux. Cuando estas versiones se ponen a disposición del público para su uso, se les conoce como "distribuciones". Figura 28. Distribuciones GNU/Linux Existen cientos de distribuciones de Linux con versiones periódicas y con soporte de alguna comunidad, muchas de ellas con funcionalidades específicas y virtualmente para todas las plataformas de hardware existentes; no obstante, casi todas tienen su origen en Debian, Slackware y Red Hat, tres distribuciones con más de 17 años de disponibilidad. Esta gran variedad de versiones y el acceso al código fuente para ajustarlo a una necesidad particular explica porque más del 60% se servidores web, según W3Techs[22, p. 3], Security Space[23] e IDC[24], usan versiones o clones UNIX y el 93.8% del top 500 de súper ordenadores usan versiones de GNU/Linux. Debian es la versión más popular para servidores, utilizado por el 32,8% de todos los sitios web que utilizan Linux, superando a CentOS y Ubuntu que son las dos distribuciones que le siguen.[22] En su versión estable soporta 12 plataformas de hardware entre las que se cuentan las versiones X86 de 32 y 64 bits, contiene cerca de 29000 paquetes de software en sus repositorios oficiales y requiere únicamente entre 20 Mb y 64 Mb de memoria RAM para funcionar dependiendo de la plataforma.[25] Ubuntu y Linux Mint son dos versiones notorias basadas en los paquetes .deb de los repositorios de Debían. Ubuntu desarrollado y soportado por Canonical, ofrece una versión de escritorio y una edición para servidores, diferenciadas por el entorno gráfico y por el kernel de Linux incluido, pero que cuentan con los mismos repositorios de paquetes.
  9. 9. 69 La instalación guiada pero en modo texto de Ubuntu Server incluye entre otros programas un servidor LAMP, gestión de bases de datos por medio de MySQL y PosgreSQL; ejecución de JSP y java servlets con el uso de Tomcat, OpenJDK, Samba, PHP y Python; la posibilidad de seleccionar manualmente paquetes y de configurar volúmenes lógicos RAID. La instalación es sencilla y tarda un poco más de 20 minutos dependiendo de la configuración. Figura 29. Configuración de la instalación de Ubuntu Server El paquete LAMP incluido en la edición de servidor de Ubuntu y en otras versiones de GNU/Linux contiene un servidor web de arquitectura modular llamado Apache HTTP Server, que es usado por más de la mitad de los sitios web en el mundo[22] y está disponible para numerosas plataformas de hardware, existiendo la posibilidad de distribuirlo y modificarlo sin problemas de derechos de autor. Linux Mint es la distribución de escritorio más popular; dispone de MintTools, un juego de aplicaciones de instalación y configuración sencilla que facilitan la experiencia de los usuarios menos entendidos, dispone de dos o tres alternativas de entorno grafico según su versión e incluye por defecto en su instalación diversos códec propietarios que en otras versiones se debe instalar manualmente. 4.4.2 Lenguajes necesarios para desarrollar aplicaciones web Aparte de los lenguajes de marcado como HTML o XML y de los lenguajes para consulta de bases de datos como SQL, existen múltiples lenguajes de programación empleados para el desarrollo de aplicaciones web que se ejecutan en el nodo servidor, entre los que destacan los siguientes.
  10. 10. 70 4.4.2.1 PHP, Hypertext Pre-processor Es un lenguaje de programación de alto nivel creado en 1995 por Rasmus Lerdorf y originalmente pensado para el desarrollo de aplicaciones web; es un lenguaje generalmente interpretado y ejecutado en el servidor web de forma que el código PHP está oculto al navegador en el cliente. Generalmente se encuentra incluido en el código de otro lenguaje como HTML. Actualmente el grupo PHP sigue desarrollando nuevas funciones para el lenguaje, es liberado bajo la licencia PHP, licencia considerada por la FSF como una licencia de Software Libre.53 Última versión Estable 5.4.15 lanzada el 9 de mayo de 2013. Ventajas  Es multiplataforma.  Multiparadigma: imperativo, orientado a objetos, procedural y reflexivo.  Tipado dinámico, no necesita cast o conversión manual de tipos; lo que traduce menos errores pero un mayor tiempo de ejecución.  Fácil de instalar y configurar; incluido en muchos paquetes de software para implementación web.  Fácil de aprender, tiene una amplia documentación en varios idiomas.  Tiene multitud de extensiones de gran utilidad; por ejemplo, para permitir la conexión con diferentes bases de datos y generar documentos PDF, Entre otros.  Soporta manejo de excepciones. Desventajas  No es modular, dificulta la división en módulos y la organización por capas.  Lento por ser un lenguaje interpretado, pérdida que se puede minimizar usando distintas técnicas de cache.  Validación de datos manual.  Orientación a objetos ineficiente.  No es tan seguro como otros lenguajes de su nivel.  No delega ninguna funcionalidad al navegador, del lado del cliente.  Las variables al no ser tipadas dificultan a los entornos de desarrollo ofrecer asistencia en la escritura del código y dificultan mantener el código si no están comentadas las posibles entradas/salidas de una función. Ejemplos de aplicaciones Web  Wikipedia, Facebook, WordPress y Zend Framework. 53 PHP Documentation Group. Manual de PHP. 2013. Disponible en: http://www.php.net/manual/es/index.php
  11. 11. 71 4.4.2.2 JSP/Java Es un lenguaje de alto nivel, pre-compilado o bytecode y orientado a objetos; fue desarrollado en 1995 por James Gosling de Sun Microsystems, su objetivo inicialmente era implementar un lenguaje con una estructura y sintaxis similar a C++ que necesitara de una máquina virtual para ser ejecutado, pero más tarde fue reorientado hacia la web cuando muchos navegadores incluyeron la posibilidad de ejecutar applets de Java. Es ampliamente utilizado ya que existen muchas clases listas para incluirse en un proyecto y su versión libre se distribuye bajo licencia pública GNU/GPL.[26] Última versión JSE 7 (1.7.21), liberada el 16 de abril de 2013. Ventajas  Es multiplataforma.  Multiparadigma: Orientado a objetos, imperativo y reflexivo.  De Tipado estático, lo que traduce en un menor tiempo de ejecución.  Las variables tipadas ayudan a mantener el código.  Multihilo, un contexto diferente para cada JSP o servlets en el servidor.  Persistencia entre peticiones, lo que significa un ahorro de tiempo en invocación del interprete y del programa.  Metadatos en el código fuente, en el bytecode y en tiempo de ejecución.  Modular.  Multitud de entornos de funcionamiento; se utiliza en servidores, dispositivos móviles, navegadores web, aplicaciones de escritorio, etc…  Reutilización del código para lograr versiones Desktop de las aplicaciones.  Applets, funcionalidad en el navegador, del lado del cliente.  Objetos remotos y distribuidos usando RMI.  Multitud de clases listas para ser utilizadas.  Se ejecuta más rápido que lenguajes interpretados, casi como los lenguajes nativos si se usa alguno de los compiladores JIT disponibles.[27]  Disponibilidad de un servidor de aplicaciones web.  Soporta manejo de excepciones. Desventajas  Por ser orientado a objetos puede ser difícil de aprender; pero a favor existe una amplia documentación. Ejemplos de aplicaciones Web  Google Apps (Maps, Gmail, Calendar), Google Web Toolkit.  Skype.
  12. 12. 72 4.4.2.3 Python Es un lenguaje de programación interpretado, multiparadigma y con una sintaxis muy limpia desarrollado por Guido van Rossum en 1991. Existen intérpretes para Python implementados en varios lenguajes, incluyendo c y java. Última versión 3.3.0 / liberada el 29 de septiembre de 2012 Ventajas  Es multiplataforma, multiparadigma y de tipado dinámico inflexible.54  Fácil de aprender  Sintaxis limpia, menos líneas de código,  Modular.  Varias alternativas de implementación.  Disponibilidad de un repositorio de paquetes oficial.  Más de 31.000 paquetes disponibles.55  Disponibilidad de un servidor de aplicaciones web de alta disponibilidad; Zope.  Soporta manejo de excepciones. Desventajas  Lento por ser un lenguaje interpretado.  Menos información que otros lenguajes. Ejemplos de aplicaciones Web  Google search, YouTube.56  Netflix.57  Tornado, un servidor de alto rendimiento.  Django, framework cuasi-MVC.58  Twisted, un framework dirigido a eventos.  Dropbox, Ubuntu One y Sage usan un servidor Twisted.  Páginas del FBI, la CIA y la NASA. 54 Una vez establecido el tipo de dato en tiempo de ejecución, no se lo puede tratar como otro. 55 PYPI. Python Package Index. Repositorio de paquetes. Disponible en: https://pypi.python.org/pypi 56 Python.org. Citas Sobre Python. Disponibles en: http://www.python.org/about/quotes/ 57 Ted Samson. Comentarios de Roy Rapoport sobre Netflix. Marzo de 2013. Disponibles en: http://www.javaworld.com/javaworld/jw-03-2013/130311-netflix-chooses-python-over-java-for-key- tasks.html 58 MVC, Modelo Vista Controlador. Es un patrón de arquitectura de software que separa los datos, la interfaz y lógica interna o controlador.
  13. 13. 73 4.4.2.4 Perl Perl es un lenguaje interpretado desarrollado por Larry Wall en 1987 liberado bajo licencia GNU/GPL. Es un lenguaje de propósito general pero originalmente desarrollado para la manipulación de texto. Última versión 5.18 liberada el 18 de mayo de 2013 Ventajas  Multiparadigma, multiplataforma y de tipado dinámico.  Una vez en fase de ejecución es más rápido que otros lenguajes dinámicos.  Fácil de Instalar, Incluido en apache y en la mayoría de distribuciones de Linux.  Soporta varios lenguajes de programación.  Fácil de aprender.  Disponibilidad de un repositorio de paquetes, CPAN.  Tiene más de 27.000 extensiones disponibles en CPAN.  Tiene un gran sistema de procesamiento de texto.[28] Desventajas  Lento por ser un lenguaje interpretado, además no puede salvar su compilación intermedia como lo hacen Java, Python.  Compilador de C requerido para compilar Perl desde el código fuente.  Menos información que otros lenguajes. Ejemplos de aplicaciones Web  Catalyst, framework MVC. 4.4.3 Licencias de software libre disponibles El fundamento de este tipo de software según Stallman (2004) es: “el acceso ilimitado e irrestricto a la creación intelectual en el campo de los programas destinados a la tecnología de la información y la comunicación (TIC), donde quiera que aquella se lleve a cabo y cualesquiera sean los propósitos para lo que fue pensada.”
  14. 14. 74 Las licencias de software son contratos o copyright en los cuales el propietario de los derechos de autor, pone las condiciones de uso o explotación; existen numerosos tipos de licencias, pero en general proporcionan uno o varios de los siguientes permisos:  Usar el programa, con cualquier propósito sin modificarlo es freeware  Estudiar cómo funciona desde el código fuente, modificarlo sin distribuirlo es open source  Distribuir copias, mejorar el programa y publicar las mejoras a los demás es free software Una licencia que además de los anteriores permisos es Copyleft intenta garantizar que el software derivado como sus mejoras se mantenga bajo la misma licencia y con los mismos permisos que el software original. En este sentido las licencias Copyleft protegen los derechos de los usuarios, evitando de esta forma que el software pase de libre a propietario, mientras que las licencias copyright se usan para proteger los derechos intelectuales de los autores. 4.4.3.1 CC (Creative Commons) Es una agrupación de licencias y una aplicación para construirlas creada en 2001 por Lawrence Lessig y formada por cuatro módulos que permiten la atribución al autor original, obras derivadas con una licencia similar o no derivadas y el uso con fines comerciales o no. Estos módulos se combinan para dar lugar a las seis licencias de Creative Commons.[29]  Attribution (CC BY)  Attribution Share Alike (CC BY-SA)  Attribution No Derivatives (CC BY-ND)  Attribution Non-Commercial (CC BY-NC)  Attribution Non-Commercial Share Alike (CC BY-NC-SA)  Attribution Non-Commercial No Derivatives (CC BY-NC-ND) 4.4.3.2 GNU GPL (General Public License de GNU) Un tipo de licencia Free Software, creada por Richard Stallman en 1989, fundador de la FSF, Free Software Foundation, para el proyecto GNU (GNU project), esta licencia fue creada con el objetivo de proteger la libre distribución de los programas GNU, además es Copyleft de manera que cualquier software que tenga raíces de un software con licencia GPL, también tendrá licencia GPL. Esta licencia no ofrece garantías de funcionamiento y es una de las más utilizadas, casi el 60% del software libre se encuentra licenciado GPL.[30]
  15. 15. 75 4.4.3.3 GNU LGPL (Lesser General Public License de GNU) La principal diferencia entre esta licencia y la GPL es que esta puede enlazarse a un programa no-GPL, que puede ser software libre o software no libre siempre y cuando el software final no sea un trabajo derivado, es decir que puedan trabajar en conjunto pero que el software LGPL se mantenga independiente.[31] 4.4.3.4 GNU AGPL (Affero General Public License) Una licencia GNU/GPL con una cláusula nueva que añade la obligación de distribuir el código del software si éste se ejecuta para ofrecer servicios a través de una red de ordenadores.[32] 4.4.3.5 Licencia BSD3 Es una licencia permisiva de tan solo 3 o dos clausulas, permite que aunque la licencia original del autor es libre, se puede distribuir como una licencia libre o como una licencia privativa, no compatible con GPL, ya que este tipo de licencia no obliga a que la distribución sea también libre y permite la comercialización de software derivado.[33] 4.4.3.6 Apache License Una Licencia compatible con GPLv3 que no exige que las obras derivadas (versiones modificadas) del software se distribuyan usando la misma licencia, ni siquiera que se tengan que distribuir como software libre/open source. La licencia apache sólo exige que se mantenga una noticia que informe a los receptores que en la distribución se ha usado código con la Licencia Apache.[29] 4.4.3.7 Zope Public License Una licencia de software libre no Copyleft, usada primordialmente para el software de servidores de Zope. La licencia es similar a la licencia BSD pero incluye cláusulas que prohíben el uso comercial y requiere documentación para todos los cambios en el código fuente.[34] 4.4.3.8 Educational Community License Una licencia iniciativa de la comunidad educativa, que pertenece a las licencias de software libre, compatible con GPLv3 pero no con GPLv2, esta licencia no es Copyleft y está basada en Apache license 2.0.[35]
  16. 16. 76 4.5 Resumen Las herramientas de e-Learning con posibilidades de integración y desarrollo, que se han escogido para la exploración de una plataforma integrada, generalmente se liberan a la comunidad como software libre. La Tabla 35 resume las licencias más frecuentes en estas herramientas Tabla 35. Licencias de software Libre Licencia Ver Fecha Free Copyleft Diferentes Compatible Apr Notas Licencias GPLv3 FSF GPL 3 2007 Si Si No Si Si No compatible con la versión 2 LGPL 3 2007 Si Si Si Si Si Copyleft menos privativo AGPL 3 2007 Si Si No Si Si Obligatoria distribución de fuente en una red BSD 3.0 1989 Si No Si No Si Versión Modificada de 3 Clausulas APACHE 2.0 2004 Si No Si Si Si Copia de la licencia en subproductos ZPL 2.1 2013 Si No Si Si Si Requiere documentación de cambios EPL 2.0 2007 Si No Si Si Si Excluye a trabajadores en organizaciones Los lenguajes más utilizados para desarrollar y soportar aplicaciones web se resumen en la Tabla 36, por lo que se constituyen en necesarios sus intérpretes dentro del nodo servidor y de la plataforma de aprendizaje. La Figura 30 muestra cómo se relacionan estos lenguajes. Tabla 36. Lenguajes de Programación Web Nombre Versión Fecha Sistema operativo Paradigma Tipado Ejecución PHP 5.4.11 Ene. 17 de 2013 multiplataforma imperativo, orientado a objetos, procesal, reflexivo dinámico interpretado Java 1.7.7 Ago. 30 de 2012 multiplataforma Orientado a objetos, imperativo estático pre compilado Python 3.3.0 Sep. 29 de 2012 multiplataforma multiparadigma dinámico Interpretado Perl 5.16.2 Nov. 1 de 2012 multiplataforma multiparadigma dinámico interpretado Figura 30. Lenguajes de aplicaciones web
  17. 17. 77 Aunque existe multitud de criterios para elegir aplicaciones web; se escogieron los cuatro que menciona este capítulo porque valiéndose de ellos se puede hacer evaluación directa de las herramientas con base en la experiencia de uso y la implementación, que son propósitos generales de este trabajo. La Figura 31 nos resume los recursos y criterios de selección elegidos. Figura 31. Criterios de selección de aplicaciones web Haciendo uso de la teoría expuesta en este capítulo, la Tabla 37 resume los criterios y sub-criterios elegidos para evaluar las herramientas de e-Learning. Estos sub-criterios se utilizarán posteriormente para cuantificar la pertinencia en relación a la funcionalidad deseada, la calidad, la optimización y los requisitos establecidos. Tabla 37. Criterios y Sub-criterios Criterio Sub-criterio Medida de la Funcionalidad Participación Facilidad para distribuir y compartir (Herramientas de Comunicación) Didáctica Facilidad para presentar un contenido didáctico (Herramientas de Creación de Contenido) Personalización Facilidad de personalizar apariencia (Herramientas de Configuración) Gestión de Roles Facilidad para establecer el flujo de trabajo (Herramientas de Administración) Estadística Facilidad para llevar registro de uso (Herramientas de Información) Calidad Usabilidad Facilidad de uso (Velocidad de aprendizaje) Integridad Facilidad para controlar de acceso seguro al software y datos (Seguridad) Evolutividad Facilidad para hacer ampliaciones (Extensiones) Portabilidad Facilidad para transferir el contenido de un entorno a otro (Formatos) Optimización de recursos Físicos Facilidad de reúso de hardware Humanos Facilidad de re-capacitación Contenidos Facilidad de reúso de contenidos Requisitos Código Libre Facilidad para conseguir de código fuente actualizado Implementación libre Facilidad para Implementar sobre Sistemas, servidores, bases de datos y SW Libre

×