Documentos de Académico
Documentos de Profesional
Documentos de Cultura
php/revcie/index
Ginna-Viviana Leytón-Yela 1
Víctor-Andrés Bucheli-Guerrero 2
Hugo-Armando Ordoñez-Erazo 3
Para citar este artículo: Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A. (2022). Herramientas
usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora. Revista
Científica, 45(3), 358-368. https://doi.org/10.14483/23448350.19662
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 358 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
summative evaluation, a numerical or percentage grade herramientas se han implementado como apo-
is generated on whether the solution of a task is correct. yo en las clases tradicionales de programación y
In the case of formative evaluation, information is gene- otras como apoyo y factor clave en el desarrollo
rated on errors or suggestions to be incorporated to the de cursos netamente virtuales. En la mayoría de
programs in order to improve learning. The employed los cursos, en los que se han implementado es-
tools are UNCode, Ask-Elle, and Nbgrader. In addition, tas herramientas el aforo se encuentra entre 60 y
some important remarks are made about some of the tools 90 estudiantes de cursos presenciales asistidos por
used for comparing programs and validating differences. computadora (Razeeth et al., 2019).
Keywords: automated feedback; formative assessment; Los estudiantes no solo necesitan la evaluación
learning programming; programming course; program- sumativa de las tareas de programación resueltas,
ming tools. necesitan saber si es posible mejorar la presen-
tación enviada o saber que errores se cometie-
Resumo ron en la entrega. A pesar, de que los esfuerzos
Atualmente, muitos estudos já estão disponíveis sobre o y experimentos realizados con estas herramientas
conhecimento teórico da população sobre as mudanças es eficaz para mejorar las habilidades en progra-
climáticas. Os resultados de alguns desses estudos mos- mación, se quedan cortos como herramientas de
tram a existência de uma séria confusão em relação a evaluación formativa debido a la limitada reali-
certos fenômenos e conceitos básicos de grande impor- mentación que ofrecen a los estudiantes, puesto
tância, apesar de o problema das mudanças climáticas que en su mayoría lo que se genera es la califica-
ter adquirido uma relevância crescente em diferentes ción a modo numérico o porcentual (Yong and Be-
meios de comunicação nos últimos anos e também es- doya, 2022; Asadullah, 2019). En este contexto, se
tar presente nos currículos escolares como parte funda- realiza un análisis comparativo de tres herramien-
mental da Educação para a Sustentabilidade. Algumas tas con realimentación automatizada utilizadas en
dessas confusões constituem verdadeiras ideias alterna- entornos educativos para el aprendizaje de la pro-
tivas. Este artigo analisa, em primeiro lugar, a incidência gramación. Las herramientas fueron desplegadas
e a força de cinco dessas ideias em alunos do Ensino Se- para determinar las características relevantes de
cundário Obrigatório (ESO) e em vários grupos de pro- estas, principalmente, características referentes a
fessores em formação. Em seguida, é feita uma proposta la evolución formativa.
didática para alcançar a mudança de uma dessas ideias, Para el análisis del tipo de realimentación que
que envolve vários conceitos e princípios da Física. genera la herramienta, se ha tomado como refe-
Palavras-chaves: aprendizagem de programação; ava- rencia el estudio (Keuning et al., 2018), donde se
liação formativa; curso de programação; feedback au- especifican cinco tipos de realimentación apli-
tomatizado; ferramentas de programação. cados en tareas de programación. Estas se han
agrupado de acuerdo con el conocimiento sobre
Introducción restricciones de las tareas (Knowledge About Task
Constraints, KTC), sobre los conceptos relaciona-
Existen muchas herramientas para el aprendiza- dos a las tareas (Knowledge About Concepts, KC),
je de la programación, que brindan entornos de los errores encontrados en estas (Knowledge About
aprendizaje dinámicos para apoyar a los estudian- Mistakes, KM) y sobre cómo proceder para solven-
tes, además de experiencia en los entornos de de- tar un error o mejorar una tarea (Knowledge About
sarrollo y ejecución de tareas de programación, How to Proceed, KH). Además, de determinar el
puesto que es una de las habilidades más deman- tipo de realimentación, se explora como se genera
dadas en la actualidad por los estudiantes de in- la misma, si es configurada por el docente o es so-
geniería (McBroom et al., 2020). Muchas de las portada mediante técnicas computacionales.
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 359 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Otros estudios relacionados que han desple- básico, transformación de programa, diagnostico
gado las herramientas de realimentación auto- basado en intención y las herramientas externas.
matizada buscan realizar comparativos sobre las Como resultado se genera el recuento del núme-
características y funcionamiento de estas. Como es ro de herramientas, el porcentaje de herramientas
el caso de la revisión sistemática de literatura (Keu- que emplean la tecnología y las subcategorías es-
ning et al., 2018), donde se realiza un comparativo pecificas por cada tecnología, de manera general y
de diferentes herramientas para aprender a progra- especifica. Adicionalmente, se encuentra que por
mar mediante la solución de tareas, con el análisis tecnología son nombradas las herramientas clasifi-
del contenido de la realimentación, la tecnología cadas y la razón del porque se encuentran dentro
usada y la adaptabilidad de la herramienta. de esa categoría.
Para el análisis del contenido de la realimen- Y finalmente, la adaptabilidad donde se permi-
tación, se realiza una categorización de los tipos te a los docentes crear ejercicios e influir en la rea-
de comentarios, según (Narciss, 2008) se descri- limentación generada en las herramientas, como
be una clasificación de componentes de realimen- son; las plantillas de solución, la soluciones mode-
tación relacionada con el contenido para entorno lo, los datos de prueba y error. Estas clasificaciones
de aprendizaje asistidos por computadora. Las eti- se han realizado según los diferentes tipos de in-
quetas definidas para clasificar las herramientas formación que los docentes pueden proporcionar
y usadas para categorizar el contenido de los co- para alimentar a la herramienta con modelos de
mentarios es implementada para clasificar las 101 error, reglas y restricciones para buscar las solu-
herramientas seleccionadas en la SLR. Se definen 5 ciones correctas (Keuning et al., 2016). Por ejem-
tipos de componentes de realimentación elabora- plo, herramientas, donde el docente especifica los
da, conocimiento sobre restricciones (Knowledge mensajes de pistas personalizados y controlar que
About Task Constraints, KTC), conocimiento sobre parte del código deben revelarse a los estudiantes
conceptos (Knowledge About Concepts, KC), co- por niveles.
nocimiento sobre errores (Knowledge About Mis- En la mayoría de los curso en línea, las clases
takes, KM), conocimiento sobre cómo proceder con gran número de estudiantes son frecuentes,
(Knowledge About How to Proceed, KH) y cono- la proporción de estudiantes por docente o tutor
cimiento sobre metacognición (Knowledge About no es la mejor, ocasionando que la aplicación
Meta-cognition, KMC). Por cada subcategoría se de modelos de tutoría sea imposible de imple-
clasifican las herramientas bajo estudio y se obtie- mentar, como por ejemplo, el modelo de Oxford
ne los porcentajes correspondientes a cada caso, (English and English, 2019) que reúne tanto a es-
analizando que cada una de las herramientas y tudiante como docente de manera semanal para
la forma en cómo se genera el contenido de la revisar las evaluaciones de tareas, identificando
realimentación. y corrigiendo conceptos errores de la temática
Las tecnologías usadas también fueron clasi- evaluada.
ficadas en dos grupos, sistemas de tutoría inteli- Por lo tanto, el tiempo disponible y proporción
gente (ITS) y técnicas específicas para el dominio de tareas que debe revisar un tutor es limitado, lo
de la programación (Keuning et al., 2016; Keu- que significa que el número de tareas puede re-
ning et al., 2018). Cada una con sus subcatego- ducirse a causa de esto, además de que las fechas
rías. En la primera; se definen las herramientas de entrega de todas las actividades tienen un pla-
de rastreo de modelos, basados en restricciones zo hasta finalizar el curso, lo que provoca que los
y tutorías basadas en análisis de datos. En la se- estudiantes no cuenten con mucha realimentación
gunda, se definen el análisis de código dinámico sobre su progreso en las tareas y curso en general
mediante pruebas automatizadas, análisis estático (Vittorini et al., 2021).
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 360 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Una de las propuestas para entregar realimenta- una perspectiva específica que permitió identificar
ción oportuna a los estudiantes es a través de la au- que plataformas han implementaron realimenta-
tomatización de la evaluación sumativa y formativa ción automática. De las herramientas que se en-
en los cursos en línea, aunque no es factible para cuentran en la revisión de literatura, se citan 3 de
algunas temáticas realizar la evaluación, aunque las herramientas que se desplegaron con el fin de
si se han realizado trabajos preliminares al respec- verificar el funcionamiento de la evaluación suma-
to logrando avances, como por ejemplo Shermis tiva y/o formativa en sus entornos.
(2014) o Annamaa et al. (2017) realizaron investi-
gaciones sobre cómo generar realimentación auto- Herramientas
matizada en un curso de programación, mediante
rúbricas que verifican si un fragmento de código se UNCode
compila, si un fragmento de código produce las sa-
lidas esperadas en el tiempo definido, entre otros. Se han implementado diferentes herramientas y
Por otro lado, se han implementado herramien- complementos desarrolladas con el fin de generar
tas (Ramirez-Echeverry et al., 2018; Angelone and de manera automatizada tanto evaluación sumati-
Vittorini, 2020; Gerdes et al., 2017) que con ayuda va y formativa, como en el caso de la herramien-
de módulos que le permiten al docente la configu- ta UNCode que provee una evaluación sumativa
ración de casos de prueba, mediante los cuales es y formativa automatizada a los estudiantes (Rami-
posible definir las salidas esperadas en un proble- rez-Echeverry et al., 2018).
ma de programación, así como la configuración de En el caso de UNCode, es una plataforma en
comentarios a cada caso de prueba, para generar- línea para la práctica y evaluación automática de
se a modo de realimentación cuando un caso de tareas de programación de computadoras, utiliza-
prueba no tenga la salida requerida. da en la Universidad Nacional de Colombia, cam-
Existen otras herramientas que se enfatizan en pus Bogotá. Esta herramienta toma como base a
la generación de pistas para una tarea de progra- INGInious.
mación. Una forma de hacerlo es a través de un INGInious (Université catholique de Louvain,
módulo que le permita al estudiante solicitar una s. f.), es un sistema de calificación automatizada
pista a cambio de una penalidad en la evaluación de código, que es usada como apoyo a entornos
sumativa de la tarea, como por ejemplo, si se uti- educativos. La herramienta recibe una tarea con
liza la escala Likert de 5 puntos, se reduciría la un conjunto de casos de prueba relacionados para
evaluación a 4 puntos, es decir, que por la pista validar la misma. Para cada tarea, es posible reali-
proporcionada se disminuye un punto para la eva- zar un número infinito de envíos, hasta que la eva-
luación (Jeuring et al., 2012; Gerdes et al., 2017; luación sea correcta.
Marin et al., 2017). La tarea es ejecutada, y un script configurado
Las herramientas anteriormente menciona- al momento de crear la tarea, es el que se encarga
das se han implementado con diferentes técnicas de verificar y probar los entregables, determinan-
computacionales, así como también existen he- do si la ejecución y la salida esperada es exitosa o
rramientas que han incorporado la inteligencia fracaso.
artificial (AI) para la evaluación automatizada en Por otro lado, el archivo de la tarea es ejecutado
cursos de programación (Srikant and Aggarwal, dentro de un contenedor, con el fin de encarcelar
2014; Beck et al., 2019; Akram et al., 2020; Do- completamente la ejecución del script, haciendo
minguez et al., 2010). verificaciones del envío, entregando otra evalua-
A partir de este análisis sobre las plataformas ción con cuatro estados posibles como éxito, blo-
utilizadas para cursos de programación, se obtiene queo, tiempo de espera o error.
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 361 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 362 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 363 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
definidas por el docente, con el fin de buscar con- resultados correctos de una tarea, mediante una
traejemplos o comentarios asociados que permi- descripción o sugerencia de la solución correc-
tan al estudiante resolver sus inquietudes (Gerdes ta. Igualmente para determinar si las herramientas
et al., 2017). estudiadas cuentan con las métricas anteriormen-
te mencionadas, se citan las estrategias de reali-
Resultados mentación para tareas de programación (Keuning
et al., 2018).
Como resultado de las implementaciones se tie- La herramienta UNCode cuenta con una eva-
ne la comparación del despliegue y exploración luación formativa configurable por parte del do-
de las herramientas anteriormente descritas. Para cente en dos complementos correspondientes a
la comparación de características en la realimen- los casos de prueba y las pistas. Por cada tarea se
tación se usaron las métricas establecidas en el tra- definen los casos de prueba y pistas que quiera el
bajo (Keuning et al., 2018), para las características docente configurar, así mismo, en la configuración
de la herramienta se usaron las citadas en el tra- inicial de los casos de prueba se definen las entra-
bajo (Ramirez-Echeverry et al., 2018) y adicional das y salidas por tarea para posteriormente confi-
a estas, se tienen en cuenta las características de gurar la realimentación por cada uno. El tipo de
despliegue o puesta en marcha, establecidas en realimentación aplicado en los casos de prueba es
este trabajo. Se han comparado UNCode, Nbgra- de tipo de conocimiento sobre errores con pruebas
der con Web-CAT y Ask-Elle. La Tabla 1 presenta de falla y errores de compilación, puesto que para
esta comparación. verificar si la tarea es correcta, se evalúa la sintaxis
Para la realimentación formativa se tuvieron y la salida esperada.
en cuenta las métricas establecidas por (Narciss, Las pistas son opcionales y por lo tanto pueden
2008), que especifica tres métricas básicas con configurarse si se requieren con penalidad o sin
las que debe contar la realimentación: conoci- penalidad. Este tipo de realimentación puede con-
miento sobre el desempeño alcanzado para un figurarse de manera libre, puesto que puede ser
conjunto de tareas; conocimiento sobre el resul- acerca del conocimiento sobre conceptos, como
tado de una tarea, si pasa todas las pruebas, si las temáticas vistas en clases a través de ejemplos
es igual al programa modelo o cumple con to- o los pasos sobre cómo proceder para resolver o
das las restricciones y el conocimiento sobre los mejorar una tarea.
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 364 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Con respecto al despliegue, UNCode puede aparece un visor de código con más detalles sobre
usarse como evaluador externo para sistemas de cómo Web-CAT calificó la tarea.
gestión de aprendizaje (LMS); funciona con las de- En cuanto al despliegue, la última versión de
pendencias actualizadas, aunque en lo que respec- Web-CAT para Jupyter notebook fue actualizada
ta al sistema operativo se recomienda usar Centos, hace tres años. En cuanto a la activación de com-
en nuestro caso fue implementado en Centos 6. plementos, no se encuentra una opción que per-
No es posible implementar en Windows, solo es mita incluir otros tipos de realimentación. Jupyter
posible en Linux (kernel 3.10+). El backend tiene notebook solo permite trabajar con leguaje de pro-
la responsabilidad de crear, administrar y eliminar gramación Python, y es posible trabajarlo tanto de
contenedores para aislar de manera segura la eje- manera local con acceso a internet o en un ser-
cución y calificación del código fuente. En cuanto vidor. Esta herramienta se incluye en Jupyter no-
a los complementos, se pueden añadir de forma tebook como complemento. En el caso de otras
simple con el llamado de un método correspon- plataformas, se puede incluir como una aplicación
diente al nombre dado al complemento, esto con LTI (Learning Tool Interoperability) externa.
el fin de extender las características existentes en Finalmente, Ask-Elle, permite generar realimen-
la herramienta. tación sobre la explicación de la tarea mediante in-
Entre las características principales de la herra- formación complementaria para procesar la tarea,
mienta, UNCode puede implementarse en un ser- asi como pistas que se entregan para continuar con
vidor para la administración de usuarios, cursos y el desarrollo de la tarea y las pistas con ejemplos
tareas, los usuarios pueden ser administradores de que permiten medir los efectos del aprendizaje y
la plataforma, docentes y estudiantes de los cur- eficacia en los estudiantes. La herramienta cuenta
sos. Los cursos se configuran con diferentes len- con facilidad para añadir tareas de programación
guajes de programación, incluso se ha expandido y programar la realimentación. Los comentarios y
a la evaluación automática para cursos de inteli- sugerencias proporcionados por Ask-Elle se genera
gencia artificial con Jupyter notebook y leguajes automáticamente a partir de las soluciones anota-
de descripción de hardware, usado para cursos de das y definidas por el docente.
electrónica digital. La implementación se realizó en Linux Debian
La herramienta Nbgrader con Web-CAT, permi- con la instalación de las dependencias e Haskell,
te brindar realimentación inmediata a los estudian- GHC y el paquete ideas. Ask-Elle es un entorno
tes con sugerencias de cómo resolver una tarea o de aprendizaje que puede usarse externamente a
que pasos se deben seguir para resolverla, además la aplicación web disponible en (Universiteit Utre-
de realimentación referente a los errores de com- cht & Open Universiteit, s. f.-a). En Windows se
pilación que puedan presentarse. La tarea resuel- presentaron inconsistencias en la instalación de
ta en Jupyter es enviada a Web-CAT y tardará un dependencias, por la versión y tipo de Windows.
tiempo en ejecutarse para comprobar el código. Sólo se encuentra habilitado para el lenguaje de
Una vez hecho esto, devuelve un enlace que es programación Ask-Elle.
abierto en una ventana emergente de Jupyter. Esto Como se puede observar, los tipos de realimen-
muestra algunos detalles básicos de la tarea, como tación mayormente implementados en las herra-
el nombre de la tarea, el nombre del estudiante, la mientas son sobre el conocimiento de errores y el
fecha de envío y el puntaje total para la tarea. Lue- conocimiento de cómo proceder para resolverlos
go, la puntuación se desglosa un poco más en el en una tarea de programación.
cuadro Resumen de puntuación. Esto muestra en En la realimentación sobre conocimiento de
qué fase se perdieron los puntos. También habrá errores, los resultados sugieren que este tipo de
una lista de los archivos del envío. Al hacer clic, realimentación es positiva (Funabiki et al., 2016),
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 365 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 366 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 367 ]
Herramientas usadas para la evaluación formativa automatizada en cursos de programación asistidos por computadora
Leytón-Yela, G. V., Bucheli-Guerrero, V. A. y Ordoñez-Erazo, H. A.
Kim, D., Kwon, Y., Liu, P., Kim, I. L., Perry, D. M., Zhang, org/paper/E-learning-at-home-vs-traditional-lear-
X., Rodriguez-Rivera, G. (2016). Apex: Automatic ning-among-a-Razeeth-Kariapper/546b671a-
programming assignment error explanation. En Pro- f8f0542edb932a7819b62e80a0c3010b
ceedings of the 2016 ACM SIGPLAN International Shermis, M. D. (2014). State-of-the-art automated es-
Conference on Object-Oriented Programming, Sys- say scoring: Competition, results, and future
tems, Languages, and Applications (pp. 311-327). directions from a United States demonstration. As-
https://doi.org/10.1145/2983990.2984031 sessing Writing, 20, 53-76. https://doi.org/10.1016/j.
Manzoor, H., Naik, A., Shaffer, C. A., North, C., Edwards, asw.2013.04.001
S. H. (2020). Auto-Grading Jupyter Notebooks. En Srikant, S., Aggarwal, V. (2014). A system to grade com-
Proceedings of the 51st ACM Technical Symposium puter programming skills using machine learning. En
on Computer Science Education (pp. 1139-1144). Proceedings of the 20th International Conference on
https://doi.org/10.1145/3328778.3366947 Knowledge Discovery and Data Mining (pp. 1887-
Marin, V. J., Pereira, T., Sridharan, S., Rivero, C. R. (2017). 1896). https://doi.org/10.1145/2623330.2623377
Automated Personalized Feedback in Introductory Universidad del Valle. (s. f.). Course list - INGInious
Java Programming MOOCs. En IEEE 33rd Interna- M-iDEA. http://ingin.ddns.net/courselist
tional Conference on Data Engineering (pp. 1259- Universidad Nacional de Colombia. (2022). UNCode
1270). https://doi.org/10.1109/ICDE.2017.169 [Python]. UNCode. https://github.com/JuezUN/
McBroom, J., Yacef, K., Koprinska, I. (2020). Scalabi- INGInious
lity in Online Computer Programming Education: Université catholique de Louvain. (s. f.). What is IN-
Automated Techniques for Feedback, Evaluation GInious? —INGInious 0.7 documentation. https://
and Equity. En Proceedings of the 13th Internatio- docs.inginious.org/en/v0.7/what_is_inginious.html
nal Conference on Educational Data Mining. ht- Universiteit Utrecht, Open Universiteit. (s. f.-a). Ask-
tps://educationaldatamining.org/files/conferences/ Elle. https://ideas.science.uu.nl/AskElle/
EDM2020/papers/paper\_252.pdf Universiteit Utrecht, Open Universiteit. (s. f.-b). Ideas
Narciss, S. (2008). Feedback Strategies for Interactive tutorial. https://ideas.science.uu.nl/tutorial/
Learning Tasks (pp. 125-144) Vittorini, P., Menini, S., Tonelli, S. (2021). An AI-Based
Ramirez-Echeverry, J. J., Restrepo-Calle, F., Gonzá- System for Formative and Summative Assessment in
lez, F. (2018). Uncode: Interactive System for Data Science Courses. International Journal of Arti-
Learning and Automatic Evaluation of Compu- ficial Intelligence in Education, 31(2), 159-185. ht-
ter Programming Skills. https://doi.org/10.21125/ tps://doi.org/10.1007/s40593-020-00230-2
edulearn.2018.1632 Yong Castillo, E., Bedoya Ortiz, D. H. (2022). De la edu-
Razeeth, M., Kariapper, R. K. A. R., Pirapuraj, P., Nafrees, A., cación tradicional a la educación mediada por TIC.
Rishan, U. M., Ali, S. (2019). E-learning at home vs tra- https://pdf4pro.com/amp/view/de-la-educaci-243-
ditional learning among higher education students: A n-tradicional-a-la-educaci-243-n-mediada-por-tic-
survey based analysis. https://www.semanticscholar. 733bf7.html
Revista Científica • ISSN 0124-2253 • e-ISSN 2344-8350 • septiembre-diciembre • Bogotá-Colombia • N. 45(3) • pp. 358-368
[ 368 ]