Un juez en línea usable para la enseñanza y aprendizaje de la programación concurrente

Estado: 
Número de proyecto: 
834-C0-008
Vigencia:
De 01/Mar/2020 hasta 28/Feb/2022

Objetivo:

Construir un juez en línea que provea una buena experiencia de usuario a los profesores y estudiantes de la programación concurrente. Se aclara que esta investigación considera la usabilidad como parte de la experiencia de usuario.


Descripción:

Un juez de programación en línea (online judge) es un software web que emite criterio (veredicto) sobre la corrección y eficiencia de otros programas para computadora. Una revisión reciente de literatura recabó 96 jueces en línea clasificados en las siguientes categorías (Wasik et al. 2018):

  1. Jueces de programación competitiva: 42 herramientas que permiten a los organizadores de concursos de programación plantear problemas que los participantes del concurso resuelven, y someten al juez en línea. Los veredictos del juez sobre las soluciones, ayuda a los competidores a mejorarlas. El juez provee a los organizadores detalles sobre el rendimiento de los participantes que les ayuda a determinar objetivamente los ganadores del concurso.
  2. Jueces educativos: 18 herramientas que apoyan el aprendizaje autodidacta o mediado de la programación. Permiten a los profesores plantear problemas que los estudiantes resuelven en el juez, y éste les provee realimentación inmediata. Tiene la ventaja de proveer mayor objetividad y rigurosidad al proceso de enseñanza y aprendizaje.
  3. Jueces de reclutamiento: 6 herramientas comerciales que ayudan a los empleadores a contratar desarrolladores talentosos, y a estos a optar por puestos competitivos.
  4. Otros jueces: 30 herramientas que permiten competencias de minería de datos, o que son parte de herramientas más complejas.

Esta investigación se ubica en el contexto de la educación universitaria, donde profesores requieren tener un seguimiento de sus estudiantes. De los 18 jueces activos en esta categoría, 13 están ideados para el autoaprendizaje. De los cinco jueces que apoyan la docencia universitaria, tres son inaccesibles, y los otros dos tienen problemas de usabilidad que impidieron al investigador principal adoptarlos como herramientas para sus cursos de programación.

 

Developing tools for resolving conflicts online is a modern option that works like most services including such games in a casino site, such as https://bestpayoutonlinecasino.com/, for example. This tool simplifies and speeds up dispute resolution.

Investigador principal
Dr. Jeisson Hidalgo-Céspedes

Colaboradores
Dra. Gabriela Marín Raventós
Marta Calderón
Dr. Jeisson Hidalgo-Céspedes

Unidad académica base
Centro de Investigaciones en Tecnologías de la Información y Comunicación (CITIC)

Unidades académicas colaboradoras
Escuela de Ciencias de la Computación e Informática (ECCI)

Publicaciones asociadas

Concurrent and Distributed Pseudocode: A Systematic Literature Review

Descripción:

Pseudocode is a valuable resource used in programming education, software development, and scientific reports for designing algorithmic solutions as it is easy to write, understand, and modify. Since pseudocode is lacking in its ability to be tested, it is difficult to determine whether a pseudocode solution is correct or not. Software tools are specially required to reach this goal, e.g., helping professors find race conditions, deadlocks, or starvation issues while grading students’ concurrent pseudocode. Although there are various tools to work with sequential pseudocode, there is a lack of tools to work with concurrent pseudocode. This shortage motivated us to determine the state-of-the-art in notations and tools for testing concurrent and distributed pseudocode. We conducted a systematic literature review and found only a few related publications, confirming that this topic is understudied. We found and report about five software tools capable of interpreting concurrent or distributed pseudocode, and two software tools capable of verifying its correctness. As another result, no other literature review was found about this topic, conferring novelty to the contributions of this work.

Tipo de publicación: Conference Paper

Publicado en: 2021 XLVII Latin American Computing Conference (CLEI)