• No se han encontrado resultados

RoBlock - Sistema de enseñanza de algorítmica mediante robótica móvil

N/A
N/A
Protected

Academic year: 2020

Share "RoBlock - Sistema de enseñanza de algorítmica mediante robótica móvil"

Copied!
135
0
0

Texto completo

(1)

1

UNIVERSIDAD DE LOS ANDES

FACULTAD DE INGENIERÍA

Departamento de Ingeniería de Sistemas y Computación

RoBlock – Sistema de Enseñanza de Algorítmica

mediante Robótica Móvil

Documento de Tesis

Autor:

Pedro Guillermo Feijóo García, Ing.

Julio de 2015

(2)

2

UNIVERSIDAD DE LOS ANDES

FACULTAD DE INGENIERÍA

Departamento de Ingeniería de Sistemas y Computación

RoBlock – Sistema de Enseñanza de

Algorítmica mediante Robótica Móvil

Documento de Tesis para optar por el Título de:

Magister en Ingeniería de Sistemas y Computación

Presentado por:

Pedro Guillermo Feijóo García, Ing.

Profesor Asesor:

Mario Fernando De la Rosa Rosero, PhD

Julio de 2015

Bogotá D.C, Colombia

(3)

3

Agradecimientos

Esta Tesis culmina gracias al aporte de varias personas que me brindaron su apoyo en el transcurso de su realización.

En primer lugar agradezco a Dios, porque me dio la bendición de poder realizar y culminar la Maestría en Ingeniería de Sistemas y Computación en la Universidad de los Andes. Porque con Él tuve la convicción de nunca retroceder, y de buscar culminar todo lo que en algún momento comencé, aparte de facilitarme el llegar a la meta sin contrapesos ni altibajos. Agradezco de igual forma a mis padres, Alix y José Genaro, y a mi hermano Miguel Alfonso por su apoyo y motivación, y por su dedicación para con el desarrollo de este proyecto. Sin ellos nada de esto hubiese sido posible.

Agradezco la asesoría, la guía, la paciencia y el apoyo de mi Asesor. La tutoría del Profesor Fernando de la Rosa fue fundamental para llevar a cabo este proceso, y sus consejos fueron vitales tanto para el planteamiento como para la puesta en marcha de la Tesis. El honor y la alegría de haber podido trabajar de la mano con alguien como él es incomparable, por lo que doy infinitas gracias por haberme dejado vivir esta experiencia.

Por último, pero no menos importante, quiero agradecer a las instituciones y a los estudiantes que participaron en el estudio conllevado. Agradezco de corazón al Colegio Provinma, al Padre Jhonier de Jesús Montoya y a las Hermanas de la Providencia y de la Inmaculada Concepción, por haber colaborado con tanta calidez. De igual manera, agradezco al Programa Progresa Fenicia que estuvo pendiente y dispuesto a la realización de todo el proceso con sus niños. Así mismo, mi más sincero agradecimiento al Centro Cultural y Educativo Reyes Católicos, que participó activamente en el desarrollo de la Tesis con sus estudiantes. Sin la participación de estas tres instituciones, este proyecto no habría culminado exitosamente.

(4)

4

Contenido

1. Estructura del Documento ... 8

2. Motivación y Justificación del Proyecto... 8

3. Definición del Problema y Objetivos del Proyecto ... 11

3.1 Formulación de la Pregunta de Investigación ... 11

3.2 Objetivo General ... 11

3.3 Objetivos Específicos ... 11

4. Marco Teórico y Conceptual ... 12

4.1 Estrategias Pedagógicas: Conductismo y Constructivismo ... 12

4.2 Robótica Móvil ... 13

5. Estado del Arte ... 15

5.1 Revisión Bibliográfica y Proyectos Similares de Interés ... 15

5.2 Herramientas y Lenguajes Similares ... 21

5.2.1 Plataformas de enseñanza sintáctica multi-lenguaje ... 21

5.2.2 Plataformas de Programación Visual por Bloques para la enseñanza de algorítmica ... 22

5.2.3 Plataformas y Lenguajes de Programación Textual para la enseñanza de algorítmica ... 25

6. Herramienta Diseñada – RoBlock ... 28

6.1 Módulos Incorporados ... 28

6.2 Estrategia Pedagógica y Tipo de Software ... 28

6.3 Interacción Usuario - RoBlock ... 29

7. Fase Experimental... 33

7.1 Tecnologías Utilizadas ... 33

7.2 Grupos Participantes... 33

7.3 Grupo de Estudio ... 34

7.4 Metodología Experimental ... 34

7.5 Evaluación Pedagógica: Variables de Estudio ... 35

7.6 Evaluación Pedagógica: Índices Experimentales ... 37

7.7 Evaluación Pedagógica: Ejercicios Propuestos ... 38

7.7.1 Módulo 1: Variables ... 38

(5)

5

7.7.3 Módulo 3: Ciclos ... 42

7.7.4 Módulo 4: Funciones ... 44

7.8 Medición de Interés y Autoevaluación de Aprendizaje por Módulo ... 46

7.9 Evaluación de Calidad para la Herramienta: RoBlock ... 47

7.10 Fase Experimental: Elementos y tiempos utilizados ... 48

8. Presentación de Resultados Experimentales ... 49

8.1 Evaluación Pedagógica: Resultados Obtenidos ... 49

8.1.1 Índice de Éxito por Módulo ... 49

8.1.2 Índice de Población por Módulo ... 51

8.1.3 Índice Global... 52

8.2 Evaluación de Calidad: Resultados Obtenidos ... 55

8.2.1 Nivel de Interés de los Estudiantes por Módulo y Herramienta ... 56

8.2.2 Nivel de Comprensión Reportado Módulo y Herramienta... 56

8.2.3 Evaluación de Calidad: Grupo de Estudiantes que trabajó con RoBlock ... 59

9. Análisis de Resultados ... 61

10. Conclusiones ... 62

11. Trabajo Futuro ... 63

12. Referencias Bibliográficas ... 64

(6)

6

T

ABLA DE

I

LUSTRACIONES

ILUSTRACIÓN 1.COMPUTACIÓN:PORCENTAJE DE ESTUDIANTES FORMADOS PARA ÉSTA (PARTOVI,2013) ... 9

ILUSTRACIÓN 2.RELACIÓN OFERTA-DEMANDA PARA CARGOS EN TECNOLOGÍA (PARTOVI,2013) ... 9

ILUSTRACIÓN 3.USO DE CONCEPTOS PARTICULARES - X100 LÍNEAS DE CÓDIGO (ADAMS &WEBSTER,2012) ... 15

ILUSTRACIÓN 4.RESULTADOS DE SATISFACCIÓN DE ESTUDIANTES FRENTE A SCRATCH (KAUCIC &ASIC,2011) ... 16

ILUSTRACIÓN 5.RESULTADOS GLOBALES DE ACEPTACIÓN ENTRE DIFERENTES NIVELES (KAUCIC &ASIC,2011) ... 17

ILUSTRACIÓN 6.LABORATORIO ROBÓTICO PARA LA PROGRAMACIÓN DE ROBOTS INDUSTRIALES (ROSADO MUÑOZ ET AL.,2008) ... 17

ILUSTRACIÓN 7.VISUALIZACIÓN DEL TRAYECTO DEL ROBOT EN EL LABORATORIO REMOTO (SÁNCHEZ ET AL.,2012) ... 18

ILUSTRACIÓN 8.LEGOMINDSTORMS Y APRENDIZAJE EMPÍRICO (PANADERO ET AL.,2010)... 19

ILUSTRACIÓN 9.SISTEMA DE ENSEÑANZA DE ALGORÍTMICA BASADO EN "TEMPLATES" (AL-IMAMY ET AL.,2006) ... 19

ILUSTRACIÓN 10.RESULTADOS PRESENTADOS (AHMED &ALSALEH,2011) ... 20

ILUSTRACIÓN 11.CODEACADEMY -CONSOLA INTERACTIVA (SIMS &BUBINSKI,2011) ... 21

ILUSTRACIÓN 12.STENCYL -PROGRAMACIÓN VISUAL POR BLOQUES (CHUNG,2011) ... 22

ILUSTRACIÓN 13.STARLOGO TNG:PROGRAMACIÓN VISUAL - AMBIENTES 3D(MITMEDIA LAB,2008) ... 23

ILUSTRACIÓN 14.ALICE:PROGRAMACIÓN VISUAL - ANIMACIÓN DE HISTORIAS (CARNEGIE MELLON UNIVERSITY,1998)... 24

ILUSTRACIÓN 15.SCRATCH:PROGRAMACIÓN VISUAL POR BLOQUES (MITMEDIA LAB &LIFELONG KINDERGARTEN GROUP,2006) ... 25

ILUSTRACIÓN 16.ROBOMIND:PROGRAMACIÓN POR SCRIPTS -ROBÓTICA (RESEARCH KITCHEN,2005) ... 26

ILUSTRACIÓN 17.KAREL THE ROBOT:PROGRAMACIÓN POR SCRIPTS -ROBÓTICA (PATTIS,1986) ... 27

ILUSTRACIÓN 18.LOGO:PROGRAMACIÓN GRÁFICA POR SCRIPTS (FEURZEIG &PAPERT,1967) ... 27

ILUSTRACIÓN 19.ROBLOCK:MÓDULOS PROVISTOS ... 28

ILUSTRACIÓN 20.ROBLOCK:PÁGINA DE INICIO ... 30

ILUSTRACIÓN 21.ROBLOCK:MENÚ DEL ESTUDIANTE ... 31

ILUSTRACIÓN 22.ROBLOCK:ENTORNO VIRTUAL EN UN MÓDULO ... 31

ILUSTRACIÓN 23.ROBLOCK:ENTORNO REMOTO –CATÁLOGO DE LABORATORIOS ... 32

ILUSTRACIÓN 24.ROBLOCK:AYUDA EN VIDEO ... 32

ILUSTRACIÓN 25.ESQUEMA METODOLÓGICO DE EXPERIMENTACIÓN ... 35

ILUSTRACIÓN 26.EJEMPLO DE EJERCICIO PARA EL MÓDULO DE VARIABLES ... 38

ILUSTRACIÓN 27.MÓDULO DE VARIABLES -EDITOR DE CÓDIGO POR BLOQUES ... 38

ILUSTRACIÓN 28.MÓDULO DE VARIABLES:NAVE ESPACIAL... 39

ILUSTRACIÓN 29.SCRATCH:AMBIENTE DE PROGRAMACIÓN VISUAL POR BLOQUES ... 39

ILUSTRACIÓN 30.EJEMPLO DE EJERCICIO PARA EL MÓDULO DE CONDICIONES ... 40

ILUSTRACIÓN 31.MÓDULO DE SENSORES:EJEMPLO DE BLOQUES ... 41

ILUSTRACIÓN 32.MÓDULO DE CONDICIONES:EJEMPLO DE BLOQUES ... 41

ILUSTRACIÓN 33.MÓDULO DE CONDICIONES –EDITOR DE CÓDIGO POR BLOQUES ... 41

ILUSTRACIÓN 34.MÓDULO DE SENSORES Y CONDICIONES:CONDE DRÁCULA ... 42

ILUSTRACIÓN 35.EJEMPLO DE EJERCICIO PARA EL MÓDULO DE FUNCIONES ... 43

ILUSTRACIÓN 36.MÓDULO DE FUNCIONES –EDITOR DE CÓDIGO POR BLOQUES ... 43

ILUSTRACIÓN 37.MÓDULO DE CICLOS:BAJO DEL MAR ... 44

ILUSTRACIÓN 38.EJEMPLO DE EJERCICIO PARA EL MÓDULO DE FUNCIONES ... 45

ILUSTRACIÓN 39.MÓDULO DE FUNCIONES –EDITOR DE CÓDIGO POR BLOQUES ... 45

ILUSTRACIÓN 40.MÓDULO DE FUNCIONES:MOUSE CHEESE ... 46

ILUSTRACIÓN 41.PROMEDIO DEL ÍNDICE DE ÉXITO POR MÓDULO CON CADA HERRAMIENTA ... 51

ILUSTRACIÓN 42.PROMEDIO DEL ÍNDICE GLOBAL POR MÓDULO CON CADA HERRAMIENTA ... 54

(7)

7

ILUSTRACIÓN 44.ÍNDICE GLOBAL:PROPORCIÓN DE ESTUDIANTES POR ENCIMA DEL PROMEDIO ... 55

ILUSTRACIÓN 45.NIVEL DE INTERÉS POR MÓDULO TRABAJADO ... 56

ILUSTRACIÓN 46.MÓDULO 1(VARIABLES):PORCENTAJE DE ESTUDIANTES VS NIVEL DE COMPRENSIÓN REPORTADO ... 57

ILUSTRACIÓN 47.MÓDULO 2(INTEGRACIÓN DE SENSORES Y CONDICIONES):PORCENTAJE DE ESTUDIANTES VS NIVEL DE COMPRENSIÓN REPORTADO ... 57

ILUSTRACIÓN 48.MÓDULO 3(CICLOS):PORCENTAJE DE ESTUDIANTES VS NIVEL DE COMPRENSIÓN REPORTADO... 58

ILUSTRACIÓN 49.MÓDULO 4(FUNCIONES):PORCENTAJE DE ESTUDIANTES VS NIVEL DE COMPRENSIÓN REPORTADO ... 58

ILUSTRACIÓN 50.RESPUESTA:¿QUÉ TAN INTERESANTE TE PARECIÓ ROBLOCK? ... 59

ILUSTRACIÓN 51.RESPUESTA:¿SIRVE ROBLOCK PARA ENSEÑAR ALGORÍTMICA? ... 60

ILUSTRACIÓN 52.RESPUESTA:¿CREES QUE ROBLOCK SIRVE PARA LA ENSEÑANZA AUTODIDACTA? ... 60

ILUSTRACIÓN 53.DIAGRAMA DE CASOS DE USO ... 67

ILUSTRACIÓN 54.DIAGRAMA DE CONTEXTO ... 94

ILUSTRACIÓN 55.DIAGRAMA DE DESPLIEGUE ... 95

ILUSTRACIÓN 56.DIAGRAMA DE COMPONENTES ... 96

(8)

8

1. Estructura del Documento

El presente documento describe una problemática y un contexto que se enfoca hacia el diseño, evaluación y uso de tecnologías amigables para la enseñanza de algorítmica y programación. Éste inicia presentando el contexto que motiva la realización del proyecto, seguido de su respectiva justificación (capítulo 2). Prosigue en el capítulo 3 con la definición del problema y la presentación de los objetivos del proyecto, continuando en el capítulo 4 con la exposición del marco teórico y conceptual correspondiente. En el capítulo 5, se elabora el estado del arte, presentando en éste proyectos previos y herramientas de interés para el estudio.

En el capítulo 6 se avanza con la presentación de la herramienta diseñada, continuando con la descripción y detalle de la fase experimental en el capítulo 7. Por último, se presentan los resultados obtenidos complementados con su respectivo análisis (capítulos 8 y 9), cerrando con las respectivas conclusiones para este estudio (capítulo 10) y el planteamiento en el capítulo 11 del trabajo futuro propuesto para dar continuidad al proyecto.

2. Motivación y Justificación del Proyecto

Las Tecnologías de la Información y la Comunicación (TIC) han ganado en los últimos años un espacio fundamental en el día a día de la sociedad. Hoy se cuenta con un sinfín de aplicaciones que responden a necesidades de interacción, entretenimiento, comunicación y comercio, con las que no se contaba hace más de 10 años. La sociedad ha cambiado completamente las formas como realiza negocios o comercializa productos, sin mencionar que la información se ha transformado en la piedra angular de empresas multinacionales presentes en distintos mercados.

Por otra parte, mediante el uso de tecnología, el concepto de “empresa” que antes tomaba décadas en formularse y fortalecerse, hoy en día es posible lograrlo en pocos años (Blank & Dorf, 2012). La empresa Google. Inc., conocida mundialmente por ser un gigante tecnológico fundado hace no más de 20 años (Septiembre 04 de 1998), presentó ganancias en el año 2013 superiores a US$59.800 billones de dólares (Google, 2013), no siendo el único caso de éxito que dentro del contexto de emprendimiento tecnológico, sobresale notablemente:

Amazon.com, Inc.: Fundada en Julio 05 de 1994, presentó ingresos superiores a US$74 billones de dólares en el año 2013 (MarketWatch, 2013a).

Facebook, Inc.: Fundada en Febrero 04 de 2004, presentó ingresos superiores a $7 billones de dólares en el año 2013 (MarketWatch, 2013b).

Twitter, Inc.: Fundada en Marzo 21 de 2006, presentó ingresos superiores a US$660 millones de dólares en el año 2013 (Twitter, 2013).

Tristemente, el panorama educativo hacia la formación de personas aptas para el desarrollo de soluciones tecnológicas no ha crecido de manera tan exitosa, como si lo han hecho las propias tecnologías de la información. El artículo “What 90% of Schools Don't Teach” presentado por

(9)

9 estadounidenses aprende a programar (ilustración 1), por lo que existe una alta demanda de personal capacitado para desarrollar soluciones tecnológicas, frente a una oferta que no logra suplir la totalidad de vacantes existentes (ilustración 2), ni mucho menos, la velocidad con que crecen las necesidades y soluciones en torno a la tecnología.

Ilustración 1. Computación: Porcentaje de Estudiantes formados para ésta (Partovi, 2013)

Ilustración 2. Relación Oferta-Demanda para cargos en Tecnología (Partovi, 2013)

En los últimos 10 años ha habido un decremento de estudiantes formándose en Ciencias de la Computación, sin dejar de mencionar que, aún con la velocidad con que crecen y se transforman las actuales tecnologías, es casi nula la cantidad de países que han encarado dicho crecimiento, y decidido implementar algorítmica y programación dentro de sus currículos de educación media y básica (caso concreto el de Reino Unido, quien lo implementó desde Septiembre de 2013) (Dredge, 2014). Generalmente se deja en manos de la Educación Superior dicha tarea, pero para cuando llega el momento de ésta, son pocos los estudiantes que deciden formarse en temas alusivos a computación (Dredge, 2014).

Aunque en el mundo existen varias aproximaciones orientadas a la enseñanza de algorítmica y programación de forma amigable (capítulo 5), en el sector Colombiano nos encontramos con que éste no es uno de los temas afrontados. La tendencia general de los colegios del país se enfoca en enseñanza ofimática y de informática básica, y como la enseñanza de algorítmica y

(10)

10 programación no está ni cerca de ser un pilar en el Sistema Educativo Colombiano al día de hoy, no se presentan estadísticas ni estudios sólidos del impacto de estas nuevas tendencias para la mejora del contexto educativo nacional. En las instituciones de enseñanza primaria, media y vocacional se desconoce en general la existencia de aquellas herramientas y ambientes de apoyo a la enseñanza de la programación (capítulo 5), y en caso de conocerse, se presenta limitación frente a éstas dado a la falta de preparación por parte del Docente para utilizarlas en el proceso de enseñanza. Esto último, debido a que las herramientas presentadas, si bien exponen una interfaz o un lenguaje sintácticamente amigable, no facilitan un enfoque autodidacta ni ofrecen orientación bajo algún contexto específico. Por otra parte, en caso de presentar dicho enfoque, no brindan una interfaz o un lenguaje sintácticamente amigable para el usuario, o se limitan en la enseñanza de lenguajes de programación ya existentes (cada lenguaje trae consigo su respectiva sintaxis y curva de aprendizaje).

Es por esto que, teniendo como objetivo impactar en el contexto educativo colombiano, este proyecto se plantea con miras a ser una iniciativa piloto para llevar la algorítmica y programación a niños y jóvenes en colegios tanto públicos como privados, rompiendo el paradigma frente a la necesidad de tener un docente para este fin. Esto último, buscando enseñarles conceptos que en un futuro los motiven a desarrollar proyectos innovadores en sus profesiones explotando las posibilidades tecnológicas de actualidad y que sean usuarios que difundan el uso de TIC en su medio. Adicionalmente busca favorecer la formación de técnicos y profesionales en temas relacionados con las TIC indispensables para las necesidades futuras del crecimiento y desarrollo del país.

Al hacer uso de la Robótica Móvil como contexto de enseñanza, el proyecto brinda un caso de estudio palpable que encierra aquellos conceptos algorítmicos fundamentales para la programación orientada por eventos (sección 4.2). Incorporando este contexto con una metodología pedagógica guiada (sección 4.1), se busca que el estudiante adquiera habilidad y conocimiento frente a los conceptos en cuestión, y que gane fortalezas algorítmicas mientras se estimula programando Robots tanto en un ambiente virtual, como remotamente en un laboratorio pre-configurado.

De llevarse a la práctica este proyecto, colegios de educación media y básica podrían hacer uso de la herramienta desarrollada, ya sea planteándola de manera extra-curricular, como también, proponiéndola como herramienta de apoyo para la enseñanza de algorítmica y programación. Esto último, porque el contexto planteado en el proyecto, invita al aprendizaje de conceptos algorítmicos y de programación, con un caso de estudio que trae consigo el planteamiento y manejo de conceptos abstractos básicos: variable, dato de entrada, dato de salida, instrucción, función, ecuación, condición, algoritmo, entre otros. Esto último, presentado de forma lúdica al estudiante.

(11)

11

3. Definición del Problema y Objetivos del Proyecto

En este capítulo se formula la pregunta de investigación que se responde a lo largo del proyecto, a través de los objetivos aquí presentados y diseñados para este fin.

3.1 Formulación de la Pregunta de Investigación

A partir de la justificación planteada en el capítulo 2, y con base en aquellos estudios y herramientas que se describen posteriormente en este documento (capítulo 5), el problema de interés es favorecer la enseñanza de la programación y algorítmica en la población estudiantil de 11 a 14 años para incentivar su conocimiento y desarrollar habilidades básicas que puedan ser explotadas en niveles de formación superior o universitaria. La propuesta de este proyecto consiste en diseñar e implementar una plataforma para el aprendizaje autodidacta de conceptos algorítmicos y de programación, desde un enfoque contextualizado en Robótica Móvil.

Esto último plasma la pregunta que se ampara dentro del desarrollo y estudio del presente proyecto. A conocimiento del autor, no se tiene presente un estudio previo que responda particularmente a esta problemática:

¿Es posible que estudiantes Colombianos de distintos esquemas de educación (pública o privada) logren aprender conceptos de algorítmica y programación mediante una herramienta de aprendizaje autodidacta, escalable, auto-contenida en infraestructura, y orientada en un contexto específico: Robótica Móvil?

3.2 Objetivo General

Efectuar un estudio que discrimine el nivel de comprensión de conceptos de algorítmica y programación en estudiantes Colombianos de distintos esquemas de educación (pública o privada), tras el uso de una herramienta de aprendizaje autodidacta, escalable, auto-contenida en infraestructura, y contextualizada en Robótica Móvil.

3.3 Objetivos Específicos

a) O.E_01: Diseñar y documentar los módulos y enunciados acordes a la población objetivo, teniendo en cuenta el criterio y apoyo de los profesores pertenecientes a las instituciones colaboradoras.

b) O.E_02: Elaborar y detallar un protocolo de experimentación que permita la medición de variables involucradas en el aprendizaje de conceptos de algorítmica y programación. c) O.E_03: Diseñar, desarrollar, validar y documentar la herramienta tecnológica de apoyo a la

enseñanza de algorítmica básica, orientando su diseño a que sea interesante para la población objetivo.

d) O.E_04: Realizar los experimentos con la población objetivo haciendo uso de la herramienta tecnológica implementada, para adquirir con éstos la información requerida para dar respuesta a la problemática planteada.

e) O.E_05: Analizar los resultados del proceso completo del Proyecto, identificando ventajas, limitantes, problemas y mejoras frente a la propuesta.

(12)

12

4. Marco Teórico y Conceptual

A continuación se presenta la teoría que se cubre y aplica en el desarrollo de este proyecto.

4.1 Estrategias Pedagógicas: Conductismo y Constructivismo

A continuación se presentan las dos metodologías pedagógicas que se incorporarán de manera híbrida en el diseño y desarrollo del proyecto propuesto:

Teoría Conductista: Corriente que tiene sus raíces en los trabajos conllevados en 1989 por Thorndike (relacionados con teorías de estímulo-respuesta), la cual fue bastante popular a principios del siglo XX, presentando un pico de popularidad en el año 1958 cuando Skinner y Holland incluyeron los principios de la teoría de reforzamiento en su primer curso de aprendizaje programado (Galvis & Ed, 2013).

Esta teoría supone que los maestros tratan de llevar a los estudiantes de un estado inicial de conocimiento (una base de conocimiento de partida), a un estado final de conocimiento, en donde se presente un “saber” que deberían adquirir. Esto último puede lograrse por diferentes caminos, pero uno de éstos es mediante la programación de la instrucción o enseñanza.

Al mencionar la “programación de la enseñanza”, se hace alusión a que el proceso de aprendizaje del estudiante se lleva a cabo por medio de una serie de etapas, diseñadas para guiar al estudiante desde el punto del “saber” que se asume que ya conoce, hacia aquel conocimiento que en el momento ignora.

Cabe aclarar que el conductismo no es sinónimo de la “programación”. Lo que hace conductista a una “programación”, es el tratamiento que se le da al alumno para guiarlo del punto de partida en el que se encuentra, hacia a dónde se desea llevarlo.

Los principios básicos conductistas se enuncian a continuación:

o Un individuo logra aprender, al observar las consecuencias de sus actos. o Aquellas consecuencias que fortalecen la posibilidad de repetir una acción, son

consideradas refuerzos.

o Entre más refuerzo reciba el estudiante, es más probable que realice de manera exitosa la acción deseada.

o La ausencia o retraso del refuerzo tras una acción, limita las posibilidades de que ésta se repita.

o La conducta de aprendizaje de un estudiante puede ser moldeada de manera gradual mediante un reforzamiento diferencial. De esta forma, se refuerzan aquellas acciones que se desea que se repitan, evitando reforzar aquellas acciones indeseadas.

(13)

13

Teoría Constructivista: A diferencia de la Teoría Conductista, en el Constructivismo es fundamental entender al sujeto que aprende. Esto último implica el comprender su campo vital, así como la interacción existente entre su entorno (el contexto que influye en él) y su “intorno” (lo que ha sido, es y desea ser). Al referirse al campo vital del estudiante, se refiere a la comprensión que tenga éste de su ambiente, formado por su pasado, presente y futuro, además de una realidad concreta y otra imaginaria (Galvis & Ed, 2013).

Dentro del enfoque de esta Teoría, el proceso de aprendizaje tiene que ver con la creación de conocimiento mediante la interacción con ambientes que facilitan o permiten la explotación de la curiosidad, la vivencia de experiencias y el potenciamiento de la imaginación del estudiante. En otras palabras, se enfoca en ofrecerle al estudiante la capacidad de aprender, mientras éste construye sus propios modelos mentales.

Con base en este enfoque, a diferencia de la Teoría Conductista, el Constructivismo sustenta que el aprendizaje que obtiene un estudiante no es fruto de una estructura de operaciones

pre-definida (operación es una acción interiorizada que modifica el objeto de conocimiento). Según éste, las estructuras son generadas con base al proceso de aprendizaje que conlleva el estudiante, y se considera que el estudiante no evoluciona en su saber mediante la “asociación” de saberes, sino mediante la “asimilación” de nuevos modelos mentales, como bien lo dijo Jean Piaget en 1971:

“La relación fundamental que tiene que ver con todo desarrollo y con todo aprendizaje no es una relación con asociación, como se pregona en el esquema estímulo‐respuesta, sino de asimilación. Definiré asimilación como la integración de cualquier tipo de realidad a una estructura. El aprendizaje es posible sólo cuando existe una asimilación activa. Es esta actividad la que me parece que ha sido descuidada en el esquema estímulo‐respuesta. Sin tal actividad no es posible didáctica alguna ni pedagogía que transformen al sujeto en forma significativa.”

4.2 Robótica Móvil

La Robótica Móvil es una rama de conocimiento que se orienta en el estudio asociado a máquinas que poseen la capacidad de desplazarse en tierra, en el aire o en el agua, y espacialmente en 2 o en 3 dimensiones (Sánchez et al., 2012).

Para este estudio es interesante el abordar este enfoque para la enseñanza de algorítmica y programación, debido a que dentro de éste se incorporan conceptos que involucran la automatización de actividades y la toma de decisiones, partiendo de la interacción de un Robot (dispositivo físico o máquina) con su entorno mediante el uso de sensores de diferentes tipos. En Robótica Móvil se utilizan los siguientes conceptos de manera armónica, por lo que es viable el utilizarla como contexto de enseñanza en el planteamiento de problemáticas bien detalladas y definidas:

(14)

14

 Sensores: El Robot incorpora diferentes tipos de sensores que permiten la interacción de éste con su medio. Dentro de este contexto, el uso de sensores abarca información interna (estado de batería, desplazamientos realizados) e información externa en una escena (proximidad o color de objetos cercanos).

 Condicionales y Operadores: Decidir si se sigue adelante, si se cambia la orientación o si se retrocede, son algunas de las preguntas que se efectúan al momento de poner un Robot ante un contexto particular. Dichas preguntas se resumen en condiciones que el estudiante deberá aprender a utilizar para llevar a cabo la solución de problemas planteados.

 Iteraciones y Ciclos: En Robótica Móvil la automatización de actividades es fundamental. La enseñanza de ciclos e iteraciones mediante la programación de Robots se facilita dado a que existe la necesidad de repetir pasos en recorridos, como también, de efectuar iteraciones hasta que se logre cierto reto o condición.

 Variables: Al programar un Robot se pueden trabajar distintos tipos de variables: posiciones espaciales, posiciones angulares, variables booleanas frente a si está activo un sensor, distancias, entre otras.

 Funciones: Al utilizar la Robótica como contexto de enseñanza, se proveen variadas posibilidades para la enseñanza de funciones. Esto último, porque dentro de este contexto es habitual el uso de algoritmos para búsquedas, como también, la definición de comportamientos de diferentes niveles de complejidad.

Es interesante ver que en Robótica Móvil se puede articular un entorno virtual de programación con su respectivo entorno físico. Como el enfoque de ésta radica en el posicionamiento y desplazamiento de una máquina en el espacio 2D o 3D, la simulación de ésta en un entorno virtual no es compleja dado que se simplifica el posicionamiento y desplazamiento de un objeto virtual (2D o 3D) en un espacio virtual bien definido (un mapa o escena). Por esto último, no es difícil el que una herramienta elaborada con base en este contexto virtual, pueda escalar sin inconvenientes, permitiendo que varios estudiantes puedan interactuar con ésta simultáneamente. Adicionalmente, el entorno virtual se desarrolla coherentemente teniendo en cuenta el funcionamiento de un robot real, de forma que los problemas y soluciones planteados en el entorno virtual puedan representarse igualmente en un entorno experimental con un robot físico.

(15)

15

5. Estado del Arte

En este capítulo se presenta la revisión bibliográfica de proyectos con enfoques de interés para el desarrollo de este proyecto, complementándola con la descripción de aquellas herramientas tecnológicas que poseen un enfoque similar al de la herramienta diseñada y elaborada en el proceso.

5.1 Revisión Bibliográfica y Proyectos Similares de Interés

A continuación se expone la documentación encontrada que servirá como punto de referencia para el estudio que se efectuará en el presente proyecto. Se presentan trabajos interesantes que centran sus estudios en el uso y evaluación de herramientas para la enseñanza de algorítmica y programación, en el uso de Robótica para enseñanza algorítmica, y en la implementación de escenarios o laboratorios remotos para el aprendizaje.

1) What Do Students Learn About Programming From Game, Music Video, And Storytelling Projects?: Este estudio se centró en analizar plataformas gráficas de enseñanza algorítmica por bloques (Scratch y Alice). Se enfocó en estudiar 322 proyectos implementados por estudiantes, haciendo uso de estas plataformas, examinando dentro de éstos la frecuencia de uso de diferentes conceptos: variables, condicionales, ciclos, diálogos y manejo de eventos. Todo esto, para dar respuesta a las preguntas “¿Aprenden los estudiantes diferentes conceptos al crear videojuegos en comparación a la creación de historias “Storytelling”?” y “¿Qué conceptos algorítmicos aprenden y usan bien los estudiantes con este tipo de plataformas?” (Adams & Webster, 2012).

Este estudio concluye que el tipo de contexto utilizado para el aprendizaje (“Storytelling” o videojuego) conlleva a la adquisición de diferentes conceptos y en diferentes medidas. En el caso de Alice, el cual es netamente orientado a la creación de historias en video, se evidencia un mayor uso de diálogos dentro de los proyectos, mientras que en Scratch

(enfocado en videos musicales y videojuegos), hay mayor uso de ciclos y de condicionales (ilustración 3).

Ilustración 3. Uso de conceptos particulares - x100 líneas de código (Adams & Webster, 2012)

(16)

16 Este estudio aporta a comprender cómo el contexto de enseñanza diferencia la adquisición de conceptos algorítmicos en el proceso de aprendizaje del estudiante. La conclusión principal es que el contexto y la motivación del estudiante hacia hacer o cumplir “algo”, es lo que permite que éste logre la adquisición de conceptos algorítmicos de interés.

2) Improving Introductory Programming with Scratch: Este estudio se enfocó en analizar el nivel de satisfacción y de opinión para estudiantes de primaria y bachillerato que hicieron uso de Scratch como primera herramienta de aprendizaje en algorítmica y programación (Kaucic & Asic, 2011).

Se tuvo en consideración a 36 estudiantes categorizados en tres cursos escolares: 5to, 8vo y 2do. En 5 meses de experimentación, los estudiantes fueron entrenados en el uso de

Scratch para la creación de proyectos orientados a la solución de tareas en específico. El énfasis fue dado en resolver problemas haciendo uso de Scratch como herramienta.

Al finalizar la fase de adquisición de habilidades informáticas, los estudiantes realizaron una encuesta de opinión, para medir con ésta criterios de satisfacción, facilidad de uso y actitud (¿Es Scratch motivante?). Los resultados de éstas se encuentran expuestos en la ilustración 4, en una escala de 0 a 5.

Ilustración 4. Resultados de Satisfacción de Estudiantes frente a Scratch (Kaucic & Asic, 2011)

Este estudio es interesante, dado a que ilustra el cómo una misma herramienta orientada a la programación visual por bloques, varía en términos de perspectiva de usuario entre distintas edades y grupos. Como se puede ver en la ilustración 4, en temas de facilidad de uso, motivación e interés, los estudiantes de 5to (16 en total) demuestran aceptar

(17)

17 positivamente la herramienta. En la ilustración 5 se muestra un índice global de satisfacción y aceptación de la herramienta, que compara diferentes niveles de educación.

Ilustración 5. Resultados globales de aceptación entre diferentes niveles (Kaucic & Asic, 2011)

Visualizando la ilustración 5, se observa que este tipo de entornos de aprendizaje fueron favorables para estudiantes de primaria, y que hay cierta tendencia decreciente al acercarse a mayores niveles de educación. Es por esto que este artículo resulta interesante, dado a que permite tener una idea inicial de cómo diferentes poblaciones reaccionan ante entornos de aprendizaje de programación diseñados para ser visualmente amigables.

3) Herramienta e-learning para la programación de Robots mediante entorno Web: En éste se expone el diseño e implementación de un laboratorio remoto para aprendizaje de robótica, en donde se brindan las facilidades de conexión, hardware y software para que estudiantes de diferentes disciplinas en ingeniería, puedan aprender a programar Robots de carácter industrial (ilustración 6). El proyecto fue implementado hasta su primera versión oficial, dándole al estudiante un tiempo de 30 minutos para trabajar con el Robot (Rosado Muñoz, Muñoz Marí, & Magdalena Benedito, 2008).

Ilustración 6. Laboratorio Robótico para la programación de Robots Industriales (Rosado Muñoz et al., 2008)

(18)

18 Este estudio es interesante en el sentido de que muestra la necesidad de enseñar a distancia aspectos de robótica, considerando el costo y la dificultad de adquisición de componentes, en especial, de hardware. No obstante, también se evidencia que la cobertura de éste no es amplia, y que no se posee dentro de este laboratorio la capacidad de interactuar entre distintos estudiantes.

4) Remote Laboratory on Mobile Robotics TeleMobileRobot-Lab: Este Proyecto expone el diseño e implementación de un laboratorio remoto Web para el apoyo de cursos orientados a Robótica Móvil (Sánchez, Acero, & De la Rosa, 2012). En éste, cada práctica de laboratorio es realizada por un único estudiante, permitiendo a la vez la participación de estudiantes observadores (ilustración 7). Este laboratorio mantiene un registro de múltiples robots móviles disponibles, lo que permite a diferentes usuarios realizar prácticas simultáneas con robots diferentes.

Ilustración 7. Visualización del trayecto del Robot en el Laboratorio Remoto (Sánchez et al., 2012)

Este estudio es interesante porque presenta, a comparación del estudio anterior, una arquitectura de software bastante más rica. Se tiene desde capa Web de presentación, hasta una capa cliente de uso remoto Standalone. Mediante éste se posee una arquitectura de referencia sólida, la cual puede ser base para la solución propuesta en el presente documento.

5) Impact of Learning Experiences Using LEGO Mindstorms® in Engineering Courses: Este estudio muestra la experiencia tenida en cuanto a la utilización de LEGO Mindstorms para la enseñanza de algorítmica y computación en tres diferentes contextos: Enseñanza de programación, Inteligencia Artificial y Robótica (Panadero, Roman, & Kloos, 2010). Adicionalmente, presenta cómo un ambiente competitivo, práctico y de laboratorio es favorable para que los estudiantes aprendan conceptos algorítmicos y los retengan (ilustración 8).

(19)

19

Ilustración 8. LEGO Mindstorms y aprendizaje empírico (Panadero et al., 2010)

Este estudio es interesante y útil para este proyecto, porque no solo exhibe experiencia dentro del contexto de enseñanza algorítmica, sino que también, presenta la tecnología de LEGO Mindstorms como herramienta para alcanzar su objetivo.

6) On the Development of a Programming Teaching Tool: The Effect of Teaching by Templates on the Learning Process: Este estudio presenta resultados alusivos a la implementación de un sistema de enseñanza algorítmica fundamentado en “templates” (ilustración 9). Se focaliza en la necesidad de mitigar la dependencia hacia la enseñanza de sintaxis en cursos de algorítmica introductorios, argumentando que, al enfocar la mente del estudiante hacia conceptos de algorítmica no sintácticos, éstos desarrollan habilidades superiores de programación, en comparación a estudiantes cuyo primer abre bocas en algorítmica incluye temas de sintaxis (Al-imamy, Alizadeh, & Nour, 2006).

Ilustración 9. Sistema de enseñanza de algorítmica basado en "Templates" (Al-imamy et al., 2006)

(20)

20 Los resultados del estudio exponen cifras estadísticas que validan la hipótesis planteada en éste, exhibiendo mayor retención en conceptos de algorítmica, en cuanto a estudiantes que participaron de su curso introductorio con este sistema de “templates”.

Este estudio es interesante porque argumenta de manera cuantitativa, el por qué la enseñanza de algorítmica y programación se optimiza cuando se limitan aspectos de sintaxis. De esta forma, no solo complementa estudios previamente mencionados en el presente estado del arte, sino que también, motiva a seguir esta línea para buscar resultados similares, pero en contextos diferentes.

7) Robotics: Its Effectiveness as a Tool to Teach Engineering Design and Computer Programming: Este estudio presenta resultados obtenidos en un proyecto que hizo uso de Robótica para la enseñanza de programación a estudiantes universitarios de primeros semestres (Ahmed & Alsaleh, 2011). Se centró en comparar el nivel de aceptación de estudiantes frente a 3 lenguajes de programación diferentes: MATLAB (usado como lenguaje común en su Universidad), RobotC (plataforma de programación creada en Carnegie Mellon University) y NXT (propio de LEGO Mindstorms).

Los resultados son bastante interesantes, debido a que no solo presentan lo que es el acercamiento de estudiantes hacia aspectos algorítmicos (Robótica para enseñanza de ciclos, eventos y condicionales), sino también resultados subjetivos pero cuantificados, en cuanto a facilidad de uso y a motivación después del uso de la herramienta. Por otra parte, se visualiza que los estudiantes presentaron una actitud positiva al recibir la plataforma NXT y su esquema de programación visual (ilustración 10).

Ilustración 10. Resultados presentados (Ahmed &Alsaleh, 2011)

(21)

21

5.2 Herramientas y Lenguajes Similares

Las herramientas y lenguajes aquí presentados, son soluciones previas que poseen características similares a las de la herramienta elaborada a lo largo del presente proyecto.

5.2.1 Plataformas de enseñanza sintáctica multi-lenguaje

 CodeAcademy.com:

Descripción: Plataforma que lleva a cabo la iniciación y entrenamiento de personas hacia distintos lenguajes de programación, como también API’s varios como el API de YouTube, Deezer, WePay, entre otros. Los lenguajes enseñados por CodeAcademy son: HTML & CSS, Python, Ruby, PHP, JQuery y JavaScript (Sims & Bubinski, 2011).

Autor: CodeAcademy, Inc

Costo: Gratuito.

Ambiente: Web. El usuario no requiere instalación alguna.

Fortalezas: Fuera de que es gratuito, la plataforma Web brinda para cada lenguaje su consola interactiva (ilustración 11), y permite mediante un enfoque conductista (sección 4.1) llevar al estudiante desde la apropiación de conceptos básicos del lenguaje, hasta el desarrollo de componentes más robustos. Todo a partir de una serie de etapas o niveles pre-definidos.

Ilustración 11. CodeAcademy - Consola interactiva (Sims & Bubinski, 2011)

Debilidades: Esta plataforma asume que el estudiante tiene bases en algorítmica, por lo que se enfoca principalmente en el desarrollo de actividades que buscan fortalecer el dominio sintáctico del estudiante ante diversos lenguajes de programación. Es por esto último que, frente a la problemática planteada en el capítulo 6, la plataforma se limita para dar respuesta a ésta.

(22)

22

5.2.2 Plataformas de Programación Visual por Bloques para la enseñanza de

algorítmica

 Stencyl:

Descripción: Es una plataforma para la creación de videojuegos que le permite a los usuarios crear juegos 2D Standalone, Web y móviles (Chung, 2011).

Autor: Stencyl, LLC.

Costo: El usuario puede trabajar de manera gratuita. El costo viene después al momento de publicar sus juegos: US$99 para Web y Standalone, y U$199 para móviles.

 Ambiente: Standalone. El usuario debe descargar el IDE.

 Fortalezas: La plataforma ofrece la posibilidad de definir actores y escenarios, y le brinda a éstos la posibilidad de realizar acciones, mediante un esquema visual de programación por bloques (ilustración 11). El usuario programa sus videojuegos, y tiene la posibilidad de publicarlos tanto Standalone, como Web o móvil: Android, iOS, Windows, Mac, Linux.

Debilidades: Aunque la plataforma permite completamente conllevar una metodología constructivista (sección 4.1), ésta no provee un esquema autodidacta que permita que cualquier estudiante se acerque y realicé un videojuego. Ésta provee un lenguaje de sintaxis sencilla, una visualización, y un medio de interacción. No obstante, demuestra desinterés hacia cómo el estudiante aprende, por lo que no brinda respuesta hacia la problemática en cuestión (capítulo 6).

Por otra parte, el desarrollo de videojuegos no posee ningún contexto en particular. Al ser una herramienta descontextualizada, no hay garantía alguna de que el estudiante potencie la totalidad de conceptos que si se potencian mediante un contexto como la Robótica Móvil (sección 4.2).

(23)

23  Starlogo – TNG:

Descripción: Es una plataforma didáctica que permite que los estudiantes aprendan los fundamentos de programación, mediante programación visual por bloques (ilustración 15). Éste es una extensión del lenguaje Logo (MIT Media Lab, 2008).

Autor: MIT Media Lab and y MIT Teacher Education Program.

Costo: Gratuito.

Ambiente: Standalone. El usuario debe registrarse para poder descargar el IDE.

Fortalezas: Brinda a los usuarios un enfoque lúdico con base en el desarrollo de videojuegos 3D (ilustración 13), los cuales incorporan características tales como: terreno, importación de modelos de Google Earth y tracking con cámaras para dar una experiencia de juego más realista. Por otra parte, éste es planteado para niños y provee herramientas visuales para que ellos se motiven mientras adquieren fundamentos en programación.

Debilidades: Aunque la plataforma brinda una serie de características interesantes, y permite conllevar enfoques de carácter constructivista, ésta se queda corta frente a brindarle al estudiante un punto de partida con el cual llevar a cabo la construcción de sus modelos y estructura mental. Por otra parte, debido a que ofrece libre albedrío al no estar encerrada dentro de un contexto en particular, no hay garantía alguna de que el estudiante potencie la totalidad de conceptos que si se potencian mediante un contexto como la Robótica Móvil (sección 4.2).

Ilustración 13. StarLogo TNG: Programación visual - Ambientes 3D (MIT Media Lab, 2008)

 Alice:

Descripción: Es una herramienta que utiliza el esquema de programación visual por bloques para facilitar a estudiantes la creación de animaciones con características 3D (Carnegie Mellon University, 1998).

Autor: Carnegie Mellon University.

Costo: Gratuito.

(24)

24

Fortalezas: Al proveer un esquema de programación visual por bloques (ilustración 14), Alice provee al estudiante la capacidad de fundamentarse algorítmicamente sin encontrarse con de aprendizaje sintáctico, los cuales son comunes en lenguajes industriales como C++ o Java. Por otra parte, provee la posibilidad de llevar a cabo programación orientada a objetos, como también, programación orientada a eventos.

Debilidades: Igual a las demás herramientas estudiadas, Alice no ofrece un contexto encerrado que guíe a los estudiantes hacia la adquisición de fundamentos concretos en programación. Al brindar libre albedrío frente a la creación de animaciones, no se garantiza que el estudiante adquiera la totalidad de conceptos que si se potencian mediante un contexto como la Robótica Móvil (sección 4.2). Por ende, la herramienta se queda corta para responder a la problemática planteada (capítulo 3).

Ilustración 14. Alice: Programación visual - Animación de Historias (Carnegie Mellon University, 1998)

 Scratch:

Descripción: Es una herramienta diseñada para que personas sin nociones de algorítmica o programación, puedan llevar a cabo la realización de videojuegos 2D y animaciones. Todo esto, mediante el uso de la programación visual por bloques como mecanismo lúdico de interacción (MIT Media Lab & Lifelong Kindergarten Group, 2006).

Autor: MIT Media Lab - Lifelong Kindergarten Group.

Costo: Gratuito.

Ambientes: Web y Standalone. El ambiente Web es mucho más rico, dado a que brinda actores y escenarios prediseñados (ilustración 15), aparte de otorgarle al usuario una comunidad de usuarios, con la cual se comparten proyectos y experiencias.

Fortalezas: Orientado para niños y jóvenes entre 8 y 16 años, esta herramienta brinda un entorno amigable de programación, el cual limita cualquier curva de aprendizaje dado a cuestiones de sintaxis del lenguaje, facilitando así que el estudiante se concentre en ganar fundamentos y habilidades algorítmicas.

(25)

25

 Al proveer una comunidad en línea, en la cual se comparten proyectos y código, el estudiante está en plena capacidad de revisar soluciones ya existentes, y con éstas, hacer uso de código ya programado para sus propias soluciones: juegos o animaciones.

Ilustración 15. Scratch: Programación visual por bloques (MIT Media Lab & Lifelong Kindergarten Group, 2006)

Debilidades: Así como las demás herramientas expuestas en este documento, Scratch se queda corto en cuanto se trata de proveer una guía auto-contenida para iniciar a trabajar en éste. Como no hay un contexto específico prediseñado para los estudiantes, no se garantiza que éstos hagan uso y aprendan la totalidad de fundamentos o conceptos que si se aprenderían con un contexto como la Robótica Móvil (sección 4.2). Por ende, aún con la riqueza de la herramienta, ésta se queda corta para responder a la problemática planteada (capítulo 3).

5.2.3 Plataformas y Lenguajes de Programación Textual para la enseñanza de

algorítmica

 RoboMind:

Descripción: Entorno sencillo de programación que orienta la enseñanza de algorítmica y programación mediante la elaboración de scripts y la programación virtual de un Robot simulado. Tiene como objetivo el ofrecer conocimiento básico en Robótica e inteligencia artificial (Research Kitchen, 2005).

Autor: Research Kitchen.

Costo: Posee versión de prueba gratuita y licencias variadas según el uso final de la herramienta (como Profesor, como Estudiante e Institución).

Ambientes: Web y Standalone. En el ambiente Web se encuentran cursos y guías para el aprendizaje de conceptos de programación. La herramienta como tal es Standalone, por lo que el estudiante debe descargarla para poder utilizarla.

Fortalezas: Al ofrecer un contexto de enseñanza (Robótica), la herramienta provee los conceptos que desea transmitir al estudiante de manera controlada (ilustración 16). Con contextos definidos como éste, es posible la elaboración de problemáticas

(26)

26 definidas, con las cuales resulta más sencillo encerrar qué conceptos se desean transmitir mediante éstas, como también, el identificar cuándo un estudiante logra cumplir un reto o no.

Ilustración 16. RoboMind: Programación por Scripts - Robótica (Research Kitchen, 2005)

Debilidades: RoboMind se queda corto al depender de módulos y cursos en línea que lo complementan como herramienta. Su estructura no provee un esquema de enseñanza auto-contenida o autodidacta, y al no proveer un esquema de programación visual por bloques, se entra en riesgo de poseer errores de sintaxis.

 Karel the Robot:

Descripción: Software educativo de código abierto dirigido a estudiantes principiantes en el estudio de lenguajes de programación (Pattis, 1986). Se caracteriza por transmitir conceptos de programación mediante la emulación de un Robot controlado mediante instrucciones que se encierran dentro de paradigma de programación estructurada (secuencia, selección e iteración).

Autor: Richard E. Pattis.

Costo: Gratuito.

Ambientes: Standalone. El estudiante debe descargar e instalar la herramienta para su uso.

Fortalezas: Aun cuando la herramienta es bastante más antigua que las herramientas planteadas anteriormente (última versión estable: Diciembre 31 del 2000), ofrece un contexto de enseñanza bien definido: Robótica (ilustración 17). Con éste define apropiadamente la enseñanza de conceptos tales como: secuencias, selecciones (If y Switch) e iteraciones (For y While).

(27)

27

Ilustración 17. Karel the Robot: Programación por Scripts - Robótica (Pattis, 1986)

Debilidades: La herramienta no posee conectividad alguna entre usuarios, ni tampoco brinda un ambiente de autoaprendizaje auto contenido (depende de libros y guías para su uso). Por otra parte, no ofrece un entorno de programación visual por bloques, por lo que se corre el riesgo de que el estudiante cometa errores de sintaxis.

 Logo:

Descripción: Lenguaje educativo del año 1967 que consiste en la enseñanza de conceptos básicos de programación mediante la programación de una “tortuga”. La interacción con el estudiante se da mediante la creación gráfica de figuras a partir de la elaboración de instrucciones como forward, turnright y turnleft (Feurzeig & Papert, 1967).

Autor: Wally Feurzeig y Seymour Papert.

Costo: Gratuito.

Ambientes: Standalone. El estudiante debe descargar e instalar la herramienta para su uso.

Fortalezas: Provee instrucciones básicas para la programación de la “tortuga”, por lo que es excelente para iniciar estudiantes jóvenes en conceptos de programación.

Ilustración 18. Logo: Programación Gráfica por Scripts (Feurzeig & Papert, 1967)

Debilidades: La herramienta se limita a instrucciones muy básicas (ilustración 18), por lo que enseñar conceptos tales como condicionales o iteraciones es complicado mediante ésta. Por otra parte, no ofrece un entorno de programación visual por bloques, por lo que se corre el riesgo de que el estudiante cometa errores de sintaxis.

(28)

28

6. Herramienta Diseñada – RoBlock

A continuación se describe la solución diseñada dentro del marco de este Proyecto.

Conceptualmente RoBlock integra módulos diseñados específicamente a la enseñanza de conceptos algorítmicos básicos planteando retos de complejidades diferentes.

6.1 Módulos Incorporados

RoBlock incorpora una metodología que se sustenta en la guía del estudiante a través de módulos dedicados hacia conceptos de programación particulares. En total se cuenta con 6 módulos:

 Variables: Enfocado hacia el uso de variables cinemáticas del Robot (posiciones y ángulos).

 Sensores: Orientado en el uso de sensores de proximidad frontales y posteriores del Robot, aparte de identificación de límites de la escena.

 Condiciones: Enfocado hacia el manejo de condiciones y operandos.

 Ciclos: Orientado en el uso de ciclos e iteraciones.

 Funciones: Enfocado hacia el uso de funciones que agrupen acciones del Robot.

 Módulo Remoto: Provee escenarios virtuales homólogos a escenarios reales disponibles en un laboratorio remoto, con problemas que el estudiante debe resolver abiertamente para luego probar tanto en el ambiente virtual (simulado) como en el laboratorio remoto (físico).

Ilustración 19. RoBlock: Módulos provistos

El avance entre módulos se da a partir de un puntaje mínimo requerido para habilitar el módulo siguiente (ilustración 19). Cada ejercicio posee un puntaje a adquirir, el cual se acumulará (tanto a nivel global como por módulo) si el ejercicio es resuelto correctamente por el estudiante.

6.2 Estrategia Pedagógica y Tipo de Software

La herramienta diseñada se propone para romper con el paradigma de enseñanza algorítmica catedrático y dependiente. Esto último porque, principalmente en lo que se dialogó con Directivos de las instituciones participantes (sección 9.2), y considerando el esquema educativo nacional, no se cuenta con tiempo curricular suficiente para cubrir temas de algorítmica y

(29)

29 programación sin exponer tiempo disponible hacia el fortalecimiento de las áreas núcleo (áreas establecidas por el ICFES en sus pruebas Saber 11).

Es por esto que se articula la enseñanza de algorítmica y programación con base en la necesidad de reforzar los conceptos de lógica matemática, mediante un contexto de enseñanza definido mediante la Robótica Móvil (sección 4.2). Dado esto, se diseña un Sistema Ejercitador Autónomo que permite la evolución del estudiante algorítmicamente, partiendo desde la enseñanza de conceptos básicos (una variable, un operador, una condición, entre otros) hasta la propuesta de problemas más complejos en donde debe poder aplicar todos los conceptos ya adquiridos de manera incremental.

Pedagógicamente, se hace uso de la Teoría Constructivista esperando que el estudiante esté en capacidad de diseñar y construir sus propias respuestas a problemas que son enunciados, más los estudiantes no están siendo guiados. Estos problemas parten del principio que su solución es única (sección 7.7). De esta forma, el estudiante obtiene estímulos frente a sus respuestas, con base en el desarrollo personal de sus soluciones algorítmicas.

Considerando que la programación no se presenta de igual forma entre distintos programadores, es fundamental que los primeros niveles permitan libre albedrío, pero a la vez, lo enfoquen en la funcionalidad del algoritmo o solución hacia el entendimiento y manejo de conceptos particulares. Esto último implica que, el estudiante es guiado implícitamente para dar con la solución de los problemas expuestos, al ofrecerle únicamente y de manera estratégica, aquellos componentes con los cuales se desea que trabaje. En este último aspecto, se incorpora la Teoría Conductista descrita en la sección 4.1, porque fuera de brindar un esquema de estímulo-respuesta, se moldea el aprendizaje del estudiante de manera gradual mediante un refuerzo diferencial con el paso de cada módulo presentado por la herramienta.

La herramienta se propone no solo como un punto de partida para que el estudiante aprenda a programar de manera contextualizada, sino que también, como una herramienta atractiva frente al refuerzo de conceptos de áreas núcleo que a las instituciones se les exige reforzar (principalmente matemáticas).

6.3 Interacción Usuario - RoBlock

El diseño de RoBlock se orientó con base en la incorporación de los módulos descritos en la sección 6.1. Al ser Web, la herramienta presenta las siguientes fortalezas:

 La aplicación se encuentra al alcance de todo aquel que posea conexión a internet.

 Se elimina cualquier necesidad de instalación de Software o de mantenimiento de Hardware.

 La información es centralizada a través de una Base de Datos Relacional, permitiendo así consistencia e integridad de los datos persistidos.

(30)

30

 Los ejercicios presentados a los usuarios se exponen de manera personalizada, con base al alcance de éstos a través de los módulos planteados en la sección 6.1

La interacción del estudiante con RoBlock inicia al momento de tener que registrarse o autenticarse en el Sistema. Dicha autenticación o registro, se propuso con miras a que exista un seguimiento personalizado hacia cada estudiante como individuo (ilustración 20).

Ilustración 20. RoBlock: Página de Inicio

Ya encontrándose registrado el estudiante en el Sistema y autenticado respectivamente, se le presenta un menú en donde se exponen aquellos módulos habilitados para éste. Dichos módulos habilitados se presentan debido a que el estudiante ya culminó los módulos anteriores (ilustración 21). El orden de los módulos es:

1. Variables. 2. Sensores. 3. Condicionales. 4. Ciclos.

5. Funciones. 6. Módulo Remoto.

(31)

31

Ilustración 21. RoBlock: Menú del Estudiante

Como se puede ver en la ilustración 21, los módulos habilitados presentan colores vivos, mientras que aquellos todavía pendientes, se exponen en blanco y negro. De igual forma, el estudiante puede visualizar su puntaje acumulado y el puntaje respectivo para cada módulo, aparte de contar con la posibilidad de reiniciar toda su cuenta, como también, reiniciar un módulo en particular para volver a trabajarlo.

Ya seleccionando un módulo en particular, se le despliega al estudiante un ejercicio cualquiera que dispone de un tiempo límite para su realización, y de un puntaje posible a obtener (se expone en el enunciado). En esta página (ilustración 22) el estudiante puede visualizar el puntaje acumulado en el módulo actual, aparte de poder interactuar con el Robot tanto a nivel virtual como remoto (ilustración 23).

(32)

32

Ilustración 23. RoBlock: Entorno Remoto – Catálogo de Laboratorios

En cada módulo, el estudiante tiene acceso a videos cortos prediseñados (ninguno supera los 5 minutos de duración) en donde se explican las bases del módulo (ilustración 24), aparte de contar con bloques específicamente otorgados según el concepto que se desee enseñar o reforzar. Por ejemplo, si el estudiante se encuentra en el primer módulo (variables), no se le presenta bloque alguno del tercer módulo (condiciones), para así no confundirlo y orientar su aprendizaje hacia el concepto de interés en el momento.

Ilustración 24. RoBlock: Ayuda en Video

De igual forma, se incorporó como funcionalidad el que el estudiante pudiese pausar en cualquier punto cualquier ejecución. Esto último, con el propósito de que éste tenga control sobre la retroalimentación visual que la herramienta le provee.

Para mayor detalle en el Diseño de RoBlock, remitirse al Anexo: “Documento de Arquitectura y Diseño”.

(33)

33

7. Fase Experimental

7.1 Tecnologías Utilizadas

Para la realización del estudio, se hace uso de las siguientes tecnologías:

RoBlock v1.0: Software Educativo diseñado y desarrollado dentro del marco del Proyecto que es resumido a través del presente documento. Con esta herramienta se provee el mecanismo para evaluar y validar la pregunta de investigación expuesta en el capítulo 6. Para mayor detalle, remitirse al capítulo 6.

Scratch v2.0: Software Educativo que se utiliza como mecanismo de referencia en el estudio propuesto en este documento. Mediante su uso, se evalúa de forma comparativa el desempeño de RoBlock como Software Educativo para la enseñanza de conceptos de algorítmica y programación. Para mayor detalle, remitirse a la sección 5.2.2 (ítem Scratch).

Microsoft Excel 2014: Se hace uso de esta herramienta para la administración, manejo y procesamiento respectivo de datos para el posterior análisis de éstos y la debida elaboración de conclusiones.

7.2 Grupos Participantes

La descripción de los grupos participantes en el proceso de validación se presenta a continuación:

 Colegio Provinma: o Calendario: A. o Jornada: Completa.

o Clasificación: Muy Superior. o Tipo: Privado.

o Grupo participante: 24 niñas y 1 niño. o Edad promedio: 11 – 14 años.

o Nivel de escolaridad: 1ro y 2do de Bachillerato (Esquema Colombiano de Educación).

 Centro Cultural y Educativo Reyes Católicos: o Calendario: B.

o Jornada: Completa.

o Clasificación: Muy Superior. o Tipo: Privado.

o Grupo participante: 11 niñas y 5 niños.

(34)

34

 Programa Progresa Fenicia – Universidad de los Andes:

o El programa hace seguimiento escolar a estudiantes de bajos recursos habitantes del barrio Fenicia, aledaño a la Universidad de los Andes. Los estudiantes que participaron a través del Programa, estudian en instituciones oficiales del distrito ubicadas en este sector.

o Tipo: Público.

o Grupo participante: 3 niños y 2 niñas. o Edad promedio: 11 – 14 años.

o Nivel de escolaridad: curso(s) 1ro y 2do de Bachillerato (Esquema Colombiano de Educación).

En total se contó con la participación de 46 estudiantes, que fueron organizados según el esquema que se describe en la sección 7.4.

7.3 Grupo de Estudio

La población de estudiantes que participó en este proyecto, se escogió con base en las siguientes características:

 Grado educativo: Encontrarse en primer o segundo grado de bachillerato, según el esquema educativo Colombiano. Esto último dado a que en este grado poseen las siguiente bases matemáticas:

o Dominan conceptos de aritmética básica: Suma, resta, multiplicación y división. o Se encuentran cursando pre-algebra: Saben de manejo de variables algebraicas

y operaciones básicas con éstas.

 Rango de edad: Tener entre 11 y 14 años de edad.

 Condición psicológica: El estudiante no presenta características relacionadas con problemas o trastornos de aprendizaje ni de déficit de atención.

 Bases algorítmicas y de programación: Pocas o nulas.

La población fue obtenida a través de las instituciones que participaron activamente en el estudio (sección 7.2).

7.4 Metodología Experimental

Al iniciar el estudio, cada estudiante presenta una prueba preliminar de 20 preguntas, siendo evaluado en conocimientos previos de algorítmica y de programación. Esto último, con el propósito de medir su progreso y aprendizaje en el transcurso de cada fase.

Posteriormente, cada estudiante trabaja y es evaluado en un periodo de 5 horas (sección 7.10) divididas en 2 o 4 sesiones, en las cuales interactúa con alguna de las 2 herramientas para el aprendizaje de algorítmica y programación descritas en la sección 7.1: Scratch y RoBlock. Antes de iniciar las sesiones de trabajo, se lleva a cabo una sub-agrupación aleatoria, para definir los 2 grupos que entran a trabajar con las 2 herramientas de forma paralela y utilizando ejercicios (con sus respectivas guías) orientados a tener una experiencia de aprendizaje autodidacta.

(35)

35 Al finalizar cada módulo propuesto, cada estudiante presenta una prueba específica de 5 preguntas siendo evaluado en conocimientos de algorítmica y de programación que se considera debió haber adquirido en el transcurso de éste, buscando medir su progreso y aprendizaje en comparación a la evaluación preliminar ya mencionada. De igual forma y en paralelo, responde un número de preguntas aparte orientadas a medir qué tanto considera haber aprendido, y que tan interesantes le parecieron los ejercicios propuestos en el módulo realizado.

Culminando el estudio, se realiza una evaluación de calidad con aquellos estudiantes que hicieron uso de la herramienta RoBlock, para que indiquen aquellos aspectos positivos y negativos que hayan experimentado, con miras a mejorar la primera versión de la herramienta (ilustración 25).

Ilustración 25. Esquema metodológico de Experimentación

Ya teniendo los resultados obtenidos con la participación de los estudiantes en el estudio, se procede a realizar el debido análisis de éstos, haciendo uso de las variables y los índices explicados en las secciones 7.5 y 7.6, para así cerrar con las respectivas conclusiones buscando responder la pregunta planteada en el capítulo 3.

7.5 Evaluación Pedagógica: Variables de Estudio

Para dar respuesta a la pregunta de investigación planteada en el capítulo 3, se define un conjunto de variables discriminadas por estudiante:

Proporción de Ejercicios Culminados frente a Ejercicios propuestos por Módulo (v1):

o Unidad de Medida: Numérica porcentual.

o Justificación: El porcentaje de ejercicios culminados por parte del estudiante, frente al número total propuesto en cada módulo, permite conocer qué tanto trabajó el estudiante para la comprensión de conceptos de algorítmica cubiertos en cada uno de éstos. Por otra parte, nos acerca a comprender qué tanto aprendió el estudiante en cada etapa del estudio.

(36)

36 o Herramienta de Medición:

 Con RoBlock se hace uso de la Base de Datos Relacional que almacena la información de usuarios, ejercicios y módulos. Esto último, porque el Diseño Relacional de la herramienta esquematiza el que para avanzar al siguiente módulo, el estudiante debe haber alcanzado un puntaje requerido para ello. Puntaje que generalmente se alcanza completando 2 o más ejercicios propuestos en cada nivel, teniendo pleno conocimiento del número de ejercicios aprobados por el estudiante en éste, y el número total de problemas en un inicio propuesto.

 Con Scratch se evalúa el nivel de completitud de cada ejercicio propuesto al estudiante (el cual es 1 por módulo), a partir del número de requerimientos alcanzados dentro de éste frente al número total de requerimientos propuestos para la culminación del ejercicio.

Porcentaje de Preguntas Acertadas en Evaluación Final (v2):

o Unidad de Medida: Numérica adimensional.

o Justificación: Para la comparación de herramientas a partir de la interacción de éstas con los estudiantes participantes en el estudio, es necesario el realizar evaluaciones transversales por módulo que permitan comparar los dos subgrupos (sección 7.4). El número de preguntas acertadas en cada evaluación por parte del estudiante, frente al módulo evaluado, permite conocer qué tanto éste domina los conceptos de algorítmica ya vistos, acercándonos a comprender qué tanto aprendió en cada etapa del estudio.

o Herramienta de Medición: Como se indicó en la sección 7.4, hay dos evaluaciones a lo largo del estudio. Para esta variable, los resultados son adquiridos a través de la Evaluación Final, realizada parcialmente una vez finalizado cada módulo del estudio.

Porcentaje de Preguntas Acertadas en Evaluación Preliminar (v3):

o Unidad de Medida: Numérica adimensional.

o Justificación: Para evaluar el alcance y nivel de impacto de las herramientas utilizadas (sección 7.4), es necesario medir el estado inicial de cada estudiante en cuanto a conceptos algorítmicos por medio de una Evaluación Preliminar. El número de preguntas acertadas en ésta, permite conocer qué tanto éste domina los conceptos de algorítmica que se cubren a lo largo del estudio, acercándonos a comprender qué tanto sabe antes de iniciarlo.

o Herramienta de Medición: Como se indicó en la sección 7.4, hay dos evaluaciones a lo largo del estudio. Para esta variable, los resultados son adquiridos a través de las Evaluaciones Preliminar que se realizará antes del inicio del estudio.

Referencias

Documento similar

En este ensayo de 24 semanas, las exacerbaciones del asma (definidas por el aumento temporal de la dosis administrada de corticosteroide oral durante un mínimo de 3 días) se

En un estudio clínico en niños y adolescentes de 10-24 años de edad con diabetes mellitus tipo 2, 39 pacientes fueron aleatorizados a dapagliflozina 10 mg y 33 a placebo,

• Descripción de los riesgos importantes de enfermedad pulmonar intersticial/neumonitis asociados al uso de trastuzumab deruxtecán. • Descripción de los principales signos

Debido al riesgo de producir malformaciones congénitas graves, en la Unión Europea se han establecido una serie de requisitos para su prescripción y dispensación con un Plan

Como medida de precaución, puesto que talidomida se encuentra en el semen, todos los pacientes varones deben usar preservativos durante el tratamiento, durante la interrupción

Abstract: This paper reviews the dialogue and controversies between the paratexts of a corpus of collections of short novels –and romances– publi- shed from 1624 to 1637:

Por lo tanto, en base a su perfil de eficacia y seguridad, ofatumumab debe considerarse una alternativa de tratamiento para pacientes con EMRR o EMSP con enfermedad activa

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,