Upload
jmcontrer
View
182
Download
0
Embed Size (px)
Citation preview
Manual Técnico para Google Course
Builder [Escriba el subtítulo del documento] [Escriba aquí una descripción breve del documento. Normalmente, una descripción breve es un resumen corto del contenido del documento. Escriba aquí una descripción breve del documento. Normalmente, una descripción breve es un resumen corto del contenido del documento.]
2013
Ana Illanas Vila Servicio de informática. Universidad de Alicante
Versión 1.0. Marzo 2013
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
Introducción a los MOOC y al Google Course Builder 1
Universidad de Alicante
Contenido
Introducción a los MOOC y al Google Course Builder ............................................................ 2
MONTAR UN CURSO CON GOOGLE COURSE BUILDER ........................................................... 3
¿Qué necesito? .......................................................................................................................... 3
Montar un sitio multicurso ....................................................................................................... 4
Crear un curso ........................................................................................................................... 5
Añadir unidades y lecciones al curso ........................................................................................ 7
Unidades: .............................................................................................................................. 8
Lecciones: .............................................................................................................................. 9
Crear una actividad ................................................................................................................. 10
Crear assessments (graded test) ............................................................................................. 14
Crear un test ........................................................................................................................ 14
Puntuación (scoring) ........................................................................................................... 16
Modificar el número de assessments ................................................................................. 16
Otros aspectos del desarrollo ............................................................................................. 17
Internacionalización ................................................................................................................ 17
Verificar el código .................................................................................................................... 17
Subir la aplicación (curso) a google ..................................................................................... 18
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
Introducción a los MOOC y al Google Course Builder 2
Universidad de Alicante
Introducción a los MOOC y al Google Course Builder
MOOC. Massive Open Online Course - Open Access: Los estudiantes no tienen que estar matriculados en el centro que los
soporta.
- Scalability: Indefinido número de participantes
- Financiación:
o Las universidades que los lideran, principalmente.
o Empresas de inversión capital-riesgo
o Empresas (estudiantes = futuros contratados)
o Gratis para los alumnos (por ahora). La certificación podría ser de pago.
- Evaluación:
o ‘peer assessment’ (evaluación entre pares): los propios alumnos se califican
entre ellos (Google Course Builder no lo incorpora)
o Criterios claramente establecidos rúbrica (criterios + estándares)
Google Course Builder. - Incluye:
o Lecciones, tutoriales, ejercicios
o Actividades para los alumnos
o Exámenes y gestión de evaluaciones
o Comunidades virtuales, foros…
- Prerrequisitos de uso:
o Experiencia en creación de materiales
o Familiarización con HTML y JavaScript
o Familiarizado con AppEngine (como un plus)
- Coste:
o Cada curso puede consumir un cierto número de recursos gratis.
o Si se necesita más, hay que comprarlo
- Publicación del curso:
o Dominio gratuito: APP_ID.appspot.com
o Puedes comprar tu propio dominio
- Los alumnos tienen que usar cuenta de google.
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 3
Universidad de Alicante
MONTAR UN CURSO CON GOOGLE COURSE BUILDER
¿Qué necesito? - Instalar el Course Builder Launcher,
para compilar y lanzar los cursos en
local. Para que funcione necesitas:
o Instalar Python
o Instalar App Engine
- Descargar el curso de ejemplo de Google. Al descomprimirlo en el destino deseado
obtienes los archivos siguientes:
- Cargar, compilar y ejecutar el curso de ejemplo de Google en el Launcher.
(*)
(*)
(*)
(*) Estos son los únicos archivos y
directorios que aconsejan modificar para
elaborar tu curso. El resto deberías evitar
modificarlos para simplificar la migración a
futuras versiones de CourseBuilder.
Nota. Debido a incompatibilidades de versiones entre librerías, completar la
instalación y lanzar el curso de prueba en el launcher con éxito puede no funcionar a
la primera.
Abrir
Compilar Ejecutar
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 4
Universidad de Alicante
Montar un sitio multicurso Es posible montar varios cursos en una única instacia de Course Builder. Esto
permitiría acceder a cada uno de ellos de la siguiente forma:
http://www.uamooc.es/index.html Página principal de la plataforma de cursos.
http://www.uamooc.es/algebra mooc de algebra
http://www.uamooc.es/calculo mooc de calculo
…
Cambio en la estructura de ficheros:
- Se crea una carpeta llamada courses y dentro de ella, tantas carpetas como
cursos se necesiten.
- Dentro de cada curso, se copian las carpetas asstes, data, view y el fichero
course.yaml. Estos archivos serán particulares para cada curso y el resto son
comunes para todos:
Añadir las rutas en el archivo app.yaml:
En la sección env_variables del archivo app.yaml hay que añadir tantas reglas
GCB_COURSES_CONFIG como cursos tengamos.
Una regla GCB_COURSES_CONFIG tiene la siguiente estructura:
GCB_COURSES_CONFIG:
‘course:url_prefix:localización_de_los_archivos_fisicos,
‘course:url_prefijo:localización_de_los_archivos_fisicos’
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 5
Universidad de Alicante
Crear un curso No merece la pena crear un curso desde cero, ya que se genera
un ‘Hola Mundo’ básico con muy pocos ficheros:
Lo recomendable es modificar el curso de ejemplo que Google te proporciona.
Personalizar la página principal
Se necesita modificar el archivo course.yaml para cambiar el título del curso, los textos
de la pantalla principal y de otras (como la de registro), los textos y logos de la
cabecera y pie, el idioma del curso, el video de bienvenida…
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 6
Universidad de Alicante
Nota. El fichero tiene un formato rígido y es muy sensible a tabulaciones y
caracteres especiales.
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 7
Universidad de Alicante
Para modificar la visualización de los cursos hay que recurrir a los ficheros (aunque
al principio, el directorio view está en la lista de los archivos que te recomiendan no
modificar):
- views/base_registration.html o views/base.html: cabecera y pie para
usuarios no registrados o registrados.
- views/preview.html o views/course.html: contenido del curso para
usuarios no registrados o registrados.
- views/summary.html: descripción del curso y video introductorio.
Añadir unidades y lecciones al curso En CourseBuilder, un curso está formado por unidades y cada unidad por lecciones y
actividades.
Unidades
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 8
Universidad de Alicante
Unidades:
Para especificar las unidades del curso hay que editar el archivo: data/unit.csv
En él, cada fila corresponde a una unidad con la siguiente información:
- id: identificador de la unidad. Números consecutivos comenzando por 1.
- type: tipo de unidad. Sólo puede tener los siguientes valores:
o A: Actividad
o U: Unidad
o O: Otros (link, video, hongout on air)
- unit_id: su valor depende del campo ‘type’
o A: sufijo del fichero js que contiene la actividad (assessment-sufijo.js)
o U: identificador de la unidad
o O: el link del material externo
- title: texto con el título de la unidad
- release_date: fecha a partir de la cual la unidad está disponible. Puede
quedarse vacio.
- now_available: si la unidad está disponible o no para ser cursada (‘true’ o
‘false’).
Lecciones
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 9
Universidad de Alicante
Lecciones:
Para especificar las unidades del curso hay que editar el archivo: data/lesson.csv
En él, cada fila corresponde a una lección con la siguiente información:
- unit_id: identificador de la unidad a la que pertenece la lección.
- unit_title: título de la unidad a la que pertenece la lección.
- lesson_id: identificador de la unidad. Número consecutivo comenzando por 1.
- lesson_title: título de la lección
- lesson_activity: si es una actividad (‘yes’) o no (se deja en blanco).
- lesson_notes: URL de la versión texto de la lección.
- lesson_video_id: código de video de youtube
- lesson_objectives: texto con los objetivos de la lección (html)
Notas:
- Lo títulos de la unidad deben coincidir en el archivo unit.csv y lesson.csv.
Al modificar el título de una lección en unit.csv hay que modificarlo
también en lesson.csv para que no falle.
- La versión en texto de la lección es un enlace externo (lesson_notes), eso
quiere decir que algunos datos de la lección, como por ejemplo el título,
podrían no coincidir si se modificaron en el archivo .csv pero no en la
versión texto.
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 10
Universidad de Alicante
Crear una actividad
Los archivos implicados en la pantalla de una actividad son los siguientes:
- views/base.html: (igual que en las lecciones) para usuarios registrados
- views/activity.html: define las mismas partes que views/unit.html
- assets/js/activity-N.M.js: contiene un array JavaScript. Donde:
o N: corresponde al número de unidad a la que pertenece
o M: corresponde al número de lección a la que pertenece.
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 11
Universidad de Alicante
Activity-N.M.js
- Consiste en una variable activity que es un array que puede contener:
o Una cadena de texto HTML
o Una pregunta
o Un ‘Answer Information’ (respuestas seleccionables)
Texto
HTML
pregunta
Answer
Information
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 12
Universidad de Alicante
- Tipos de Answer Information:
o Single multiple-choice question
{ questionType: ‘multiple choice’,
choices: [
[‘texto de la respuesta’,
true/false,
‘texto a mostrar si la selecciona’
],
[‘texto de la respuesta’,
true/false,
‘texto a mostrar si la selecciona’,
],
…
]
}
o Group of multiple-choice questions
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 13
Universidad de Alicante
{ questionType: ‘multiple choice group’,
questionsList:
[
{
questionHTML: ‘texto de la pregunta’,
choices: [‘OpciónA’, ‘OpciónB’, ‘OpciónC’, …],
correctIndex: 0
},
{
questionHTML: …
…
},
…
],
allCorrectOutput: ‘texto que aparecerá si acierta todas las preguntas’,
someIncorrectOutput: ‘texto que aparecerá si falla alguna pregunta’
}
o Free text
{ questionType: ‘freetext’,
correctAnswerRegex: expresión regular para comprobar si la respuesta
del alumno es correcta o no.
correctAnwerOutput: ‘texto que aparecerá si la respuesta es correcta’,
incorrectAnswerOutput: ‘texto que aparecerá si es incorrecta’,
showAnswerOutput: ‘texto que aparecerá si pulsas el botón de “Saltar y
Mostrar Respuesta”’,
showAnswerPrompt: ‘texto del botón “Saltar y Mostrar Respuesta”’,
outputHeight: ‘altura en píxels para la caja de texto’
}
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 14
Universidad de Alicante
Crear assessments (graded test)
Crear un test
Cada test está en un fichero assets/js/assessment-SUFFIX.js que contiene los
atributos del cuestionario y sus preguntas correspondientes.
assessment-SUFFIX.js
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 15
Universidad de Alicante
Este fichero contiene una variable assessment que es un array de atributos y preguntas:
var assessment =
{
assessmentName: ‘nombre_unico_del_assessment’,
preamble: ‘texto HTML que introduce el cuestionario’,
checkAnswer: true/false, // si los estudiantes pueden comprobar
// las respuestas antes de enviar el
// cuestionario
{Listado_de_preguntas} (*)
}
(*) Listado de preguntas: Se refiere a un array de preguntas separadas por comas.
Cada pregunta tiene la siguiente estructura:
{
questionHTML: ‘El texto de la pregunta’,
Lesson: ‘1.5’, // Lección a la que corresponde (para orientar)
Pregunta (**)
}
(**) Pregunta: La estructura de este atributo varía dependiendo del tipo de pregunta
que sea. Los tipos de preguntas y sus correspondientes estructuras son los siguientes:
- Pregunta de respuesta múltiple: choices[‘respuesta 1’,
‘respuesta 2’,
correct(‘respuesta 3’),
‘respuesta 4’]
- Pregunta de respuesta numérica:
correctAnswerNumeric:
- Pregunta de respuesta de texto (case-sensitive): correctAnswerString: ‘hello’
(aceptaría ‘hello’ y ‘Hello’ como respuestas correctas, pero no ‘hellos’)
- Pregunta de respuesta de texto libre (expresión regular): correctAnswerRegex: expresión_regular
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
MONTAR UN CURSO CON GOOGLE COURSE BUILDER 16
Universidad de Alicante
Puntuación (scoring)
- assets/js/activity-generic.js:
checkOrSubmitAnswers determina la puntuación de cada assessment. La
fórmula por defecto es un porcentaje simple de preguntas correctas
sobre el número total de preguntas.
- controllers/assessments.py:
storeAssessmentData determina cuando se almacena la nota. Por
defecto se hace la primera vez que el alumno hace el test y cada vez
que supera la nota anterior.
Cuando se completa el test final, storeAssessmentData también
determina cómo se puntúa el curso entero. Por defecto es un 30% para
el test de mitad de curso y 70% para el test final.
Modificar el número de assessments
Por defecto, Course Builder tiene 3 assessments: precourse assessment, midterm
assessment y final assessment.
Para modificar esto:
1. Crear un fichero assessment-SUFFIX.js en assets/js para cada cuestionario y
rellenar sus atributos.
2. Añadir el assessment en su lugar correspondiente en data/unit.csv utilizando
el SUFFIX del archivo .js para referenciarlo.
3. Actualizar el storeAssessmentData en controllers/assessment.py para
añadirlo a las notas del alumno utilizando el atributo assessmentName del
archivo .js para referenciarlo.
4. Actualizar el archivo views/student_profile.html para que le aparezca el
cuestionario al alumno en su perfil.
5. Actualizar views/test_confirmation.html para mostrar un mensaje de
confirmación apropiado para cada cuestionario.
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
Otros aspectos del desarrollo 17
Universidad de Alicante
Otros aspectos del desarrollo
Internacionalización
Se puede traducir el texto visible para los alumnos a varios idiomas. Se refiere a los textos en
los ficheros HTML del directorio views.
Sintaxis: {% trans %} Texto _a_traducir {% endtrans %}
Este framework de internacionalización se basa en las tecnologías: webapp2, pybabel, pytx,
jinja2’s. Es un desarrollo de unimooc-tec.
Verificar el código
Consiste en comprobar si los ficheros csv están correctamente formados antes de subir el
curso a google.
Se ejecuta por línea de comandos lo siguiente:
cd APPPATH
python tolos/verify.py
MANUAL TÉCNICO PARA GOOGLE COURSE BUILDER
Subir la aplicación (curso) a google 18
Universidad de Alicante
Subir la aplicación (curso) a google
- Es necesario una cuenta de google.
- Registrar la aplicación (curso) con google:
o En este paso es donde te asignan el dominio
o Dos formas:
Con el navegador: appengine.google.com
Con el launcher: Dashboard
- Subir (upload or deploy) la aplicación:
o Línea de comandos: cd APPPATH
appcfg.py update.
- Modificar una aplicación en producción:
o Línea de comandos: cd APPPATH
appcfg.py update.
o Se actualizan los ficheros:
csv y course.yaml de manera inmediata
assessments, activities y views tienen un retardo de 10 minutos.