Plataforma on-line per l'aprenentatge de llenguatges de programació.

Categoria:PID (Projecte d'Innovació Docent)
Codi de projecte:APL_2012_PID_022
Responsable:Xavier Baró
Equip:Elena Planas Hortal David Masip Rodo Julià Minguillón Alfonso Francesc Santanach Delisau
Programa/ Grup/ Institució:Estudis d'informàtica,multimèdia i telecomunicacions,Tecnologia Educativa
Tipologia:Projecte APLICA
Eix temàtic:Evolució de la metodologia educativa
Convocatòria:2012
Inici:24/02/2012
Finalització:01/03/2013
Finalitzat:No

Descripció

L’aprenentatge de la programació ha estat des de sempre una tasca difícil per a molts estudiants, especialment durant els primers passos. De la mateixa manera que quan s’aprèn un idioma nou, aprendre un llenguatge de programació requereix familiaritzar-se amb les estructures sintàctiques bàsiques del llenguatge, i aprendre com aquestes es poden anar combinant per obtenir entitats semànticament correctes, esdevenint programes que resolguin un problema donat. 

Malgrat l’objectiu principal dels primers cursos de programació sigui aprendre a programar, les principals dificultats que es troben els estudiants durant aquest aprenentatge estan relacionades amb: 

- Compilar del codi: Per comprovar que el programa que ha escrit l’estudiant (codi font) és correcte sintàcticament, cal disposar d’un conjunt d’eines que tradueixen aquest codi font a un codi que la màquina pugui executar posteriorment. La instal•lació de l’entorn de programació a l’ordinador personal de l’estudiant (tenint en compte que no tots els estudiants treballen amb la mateixa plataforma) és una tasca que afegeix una dificultat considerable durant la iniciació a la programació. 

- Executar del codi: Per comprovar que el codi font de l’estudiant és correcte semànticament, és a dir, que el seu comportament és l’esperat, cal que el compilador posi en funcionament el programa utilitzant els recursos de l’ordinador de l’estudiant. Cal destacar que és molt freqüent que els programes continguin errors, alguns dels quals poden provocar que la màquina que els executa es pengi o fins i tot que es puguin danyar dades de l’estudiant. 

La instal•lació i aprenentatge de les eines de compilació/execució s’afegeix al ja complicat aprenentatge de la pròpia programació, fent que iniciar-se a la programació pugui esdevenir un fet traumàtic i estressant per a molts estudiants, el que desencadena en molts casos de desmotivació i una font d’abandonament de les assignatures.

Per tal de millorar l’acompanyament als estudiants durant els primers cursos de programació, el que es proposa en aquest projecte és crear un conjunt d’eines que permetin dur a terme tots els passos necessaris per comprovar la correctesa a nivell sintàctic i semàntic del codi dels estudiants, de forma fàcil, segura i totalment transparent per als estudiants. A més a més, tot el procés es realitzarà de forma remota, accedint a uns serveis Web específics, que l’estudiant podrà executar independentment de la tipologia de la seva màquina. Aquesta arquitectura basada en serveis ens obrirà el camí per crear eines que permetin la generació de materials d’aprenentatge interactius i exercicis d’autoavaluació que els estudiants puguin utilitzar des de dispositius mòbils.

Objetius

  • 1. Aplicar les tècniques qualitatives i quantitatives necessàries per fer l’anàlisi i el disseny d’una plataforma servidor que permeti compilar i executar un programa escrit en un llenguatge de programació estàndard, retornant el màxim de d’informació a l’usuari.
  • 2. Implementar la plataforma servidor resultat de l’objectiu 1 (per als llenguatges C i JAVA).
  • 3. Oferir una implementació de la interfície ordinador-ordinador oberta, per permetre la implementació d’aplicacions client que connectin amb el servidor des de qualsevol plataforma (e.g. iOS, android, MeeGo, etc.).
  • 4. Implementar aplicacions client que utilitzin la plataforma servidor punt 2 per permetre als estudiants:
    a. Lliurar activitats que continguin codi en C/JAVA.
    b. Comprovar la correctesa sintàctica i semàntica d’un codi lliurat.
    c. Rebre un retorn personalitzat generat automàticament a partir d’un codi lliurat.
  • 5. Estudiar i definir, en els productes dels punts 2 i 4, la seguretat i escalabilitat necessàries per fer-les servir en l’entorn UOC.
     

Resultats de la cerca

En acabar el projecte obtindrem una plataforma que proveirà un conjunt d’eines per facilitar i millorar l’aprenentatge de la programació d’ordinadors.
A més, es lliuraran unes aplicacions client que permetran utilitzar les eines de la plataforma per part dels estudiants, tant des del punt de vista de l’aprenentatge, com de l’avaluació.
Tota la informació generada pel projecte, tant pel que fa a l’estudi previ del projecte, com de les eines i informes resultants d’aquest, es publicaran al repositori institucional, dins la recent creada àrea de programació, servint de material de consulta per estudiants i professors de l’àrea.
Finalment, i des del punt de vista més pràctic, s’espera poder analitzar l’eina mitjançant una prova pilot amb estudiants del “Taller de JAVA”, iniciant la prova pilot a principis del semestre 20121.

Tags

0 comentaris
Comentari
Nom
Correu electrònic
captcha Codi de seguretat
 
PIxG (Projecte d'Innovació Gestió)
Carles Ramírez
Projecte APLICA
Obtenir un registre de dades que ens permetés mesurar amb exactitud la situació de cada procés d'activitat. Alhora també com a necessitat d'establir una metodologia per mesurar, revisar i millorar de manera continuada ...
PID (Projecte d'Innovació Docent)
Javier Melenchón
Projecte APLICA
Amb el desenvolupament d'aquest projecte es pretén conceptualitzar, dissenyar, implementar i avaluar l'ús de l'hipervídeo en els processos d'ensenyament-aprenentatge de conceptes complexos a assignatures desenvolupades ...