28 research outputs found

    The model judge : a tool for supporting novices in learning process modeling

    Get PDF
    Process models are a fundamental element in the BPM lifecycle. Hence, it is of paramount importance for organizations to rely on high-quality, accurate and up-to-date process models, to avoid taking decisions on the basis of a wrong picture of the reality. In this demo we present modeljudge.cs.upc.edu, a platform to boost the training of novice modelers when confronted with the task of translating a textual description into a process model in BPMN notation. The platform is integrated with Natural Language Processing (NLP) analysis and textual annotation, together with a novel model-to-text alignment technique. By using this platform, a novice modeler will receive diagnostics in real-time, which may contribute to a more satisfactory modeling experience.Peer ReviewedPostprint (published version

    Jutge.org

    Get PDF
    Jutge.org is an open access educational online programming judge where students can try to solve more than 800 problems using 22 programming languages. The verdict of their solutions is computed using exhaustive test sets run under time, memory and security restrictions. By contrast to many popular online judges, Jutge.org is designed for students and instructors: On one hand, the problem repository is mainly aimed to beginners, with a clear organization and gradding. On the other hand, the system is designed as a virtual learning environment where instructors can administer their own courses, manage their roster of students and tutors, add problems, attach documents, create lists of problems, assignments, contests and exams. This paper presents Jutge.org and offers some case studies of courses using it.Postprint (published version

    Jutge.org: characteristics and experiences

    Get PDF
    Jutge.org is an open educational online programming judge designed for students and instructors, featuring a repository of problems that is well organized by courses, topics and difficulty. Internally, Jutge.org uses a secure and efficient architecture and integrates modern verification techniques, formal methods, static code analysis and data mining. Jutge.org has exhaustively been used during the last decade at the Universitat Politecnica de Catalunya to strengthen the learn-by-doing approach in several courses. This paper presents the main characteristics of Jutge.org and shows its use and impact in a wide range of courses covering basic programming, data structures, algorithms, artificial intelligence, functional programming and circuit design.Peer ReviewedPostprint (author's final draft

    Identifying Student Profiles Within Online Judge Systems Using Explainable Artificial Intelligence

    Get PDF
    Online Judge (OJ) systems are typically considered within programming-related courses as they yield fast and objective assessments of the code developed by the students. Such an evaluation generally provides a single decision based on a rubric, most commonly whether the submission successfully accomplished the assignment. Nevertheless, since in an educational context such information may be deemed insufficient, it would be beneficial for both the student and the instructor to receive additional feedback about the overall development of the task. This work aims to tackle this limitation by considering the further exploitation of the information gathered by the OJ and automatically inferring feedback for both the student and the instructor. More precisely, we consider the use of learning-based schemes—particularly, Multi-Instance Learning and classical Machine Learning formulations—to model student behaviour. Besides, Explainable Artificial Intelligence is contemplated to provide human-understandable feedback. The proposal has been evaluated considering a case of study comprising 2,500 submissions from roughly 90 different students from a programming-related course in a Computer Science degree. The results obtained validate the proposal: the model is capable of significantly predicting the user outcome (either passing or failing the assignment) solely based on the behavioural pattern inferred by the submissions provided to the OJ. Moreover, the proposal is able to identify prone-to-fail student groups and profiles as well as other relevant information, which eventually serves as feedback to both the student and the instructor.This work has been partially funded by the “Programa Redes-I3CE de investigacion en docencia universitaria del Instituto de Ciencias de la Educacion (REDES-I3CE-2020-5069)” of the University of Alicante. The third author is supported by grant APOSTD/2020/256 from “Programa I+D+I de la Generalitat Valenciana”

    The Cowl - v.77 - n.5 - Oct 4, 2012

    Get PDF
    The Cowl - student newspaper of Providence College. Vol 77 - No. 5 - October 4, 2012. 28 pages

    Python module for automatic testing of programming assignments

    Get PDF
    Antud töö sisaldab kirjeldust Pythoni teegi kohta, mille abil saab automaatselt testida programmeerimisülesandeid sissejuhatavates programmeerimiskursustes. Antud teegi abil saab testida nii sisend-väljundipõhiseid ülesandeid ja ka funktsioone samal ajal. Töö esimeses osas analüüsitakse olemasolevaid hindamissüsteeme. Lisaks tutvustatakse kuidas loodud teeki saab kasutada erinevate ülesannetetüüpide testimiseks, kuidas teeki laiendada ning kuidas teda kasutada olemasolevate hindamissüsteemide sees. Kirjeldatakse ka teegi arhitektuuri, kuidas turvata võõra koodi käivitamist ning tuuakse välja kogemused teegi kasutamisest eri kursustes.This thesis contains a description of a Python module for automatically assessing programming assignments in introductionary programming courses. Most notably, the module allows to test both input-output based tasks and functions at the same time. In the first part, existing automatic assessment systems are analyzed. Then a guide is given on how to use the module for testing different task types, how to extend it and how to use it within other grading systems. Lastly the thesis deals with implementation decisions, on how to secure testing and usage experiences from two different courses

    Bridging the gap between textual and formal business process representations

    Get PDF
    Tesi en modalitat de compendi de publicacionsIn the era of digital transformation, an increasing number of organizations are start ing to think in terms of business processes. Processes are at the very heart of each business, and must be understood and carried out by a wide range of actors, from both technical and non-technical backgrounds alike. When embracing digital transformation practices, there is a need for all involved parties to be aware of the underlying business processes in an organization. However, the representational complexity and biases of the state-of-the-art modeling notations pose a challenge in understandability. On the other hand, plain language representations, accessible by nature and easily understood by everyone, are often frowned upon by technical specialists due to their ambiguity. The aim of this thesis is precisely to bridge this gap: Between the world of the techni cal, formal languages and the world of simpler, accessible natural languages. Structured as an article compendium, in this thesis we present four main contributions to address specific problems in the intersection between the fields of natural language processing and business process management.A l’era de la transformació digital, cada vegada més organitzacions comencen a pensar en termes de processos de negoci. Els processos són el nucli principal de tota empresa i, com a tals, han de ser fàcilment comprensibles per un ampli ventall de rols, tant perfils tècnics com no-tècnics. Quan s’adopta la transformació digital, és necessari que totes les parts involucrades estiguin ben informades sobre els protocols implantats com a part del procés de digitalització. Tot i això, la complexitat i biaixos de representació dels llenguatges de modelització que actualment conformen l’estat de l’art sovint en dificulten la seva com prensió. D’altra banda, les representacions basades en documentació usant llenguatge natural, accessibles per naturalesa i fàcilment comprensibles per tothom, moltes vegades són vistes com un problema pels perfils més tècnics a causa de la presència d’ambigüitats en els textos. L’objectiu d’aquesta tesi és precisament el de superar aquesta distància: La distància entre el món dels llenguatges tècnics i formals amb el dels llenguatges naturals, més accessibles i senzills. Amb una estructura de compendi d’articles, en aquesta tesi presentem quatre grans línies de recerca per adreçar problemes específics en aquesta intersecció entre les tecnologies d’anàlisi de llenguatge natural i la gestió dels processos de negoci.Postprint (published version

    Feedback en Jueces Online

    Get PDF
    Los jueces online son sistemas que surgieron inicialmente con el objetivo de actuar como repositorios de problemas que habían formado parte de concursos de programación. Con el tiempo, se han ido popularizando y ahora se utilizan también como herramientas didácticas, y permiten practicar y aprender algoritmia y métodos de programación de forma entretenida, llegando incluso a utilizarse en las aulas. Así, una situación común es que el profesor explique un tema e indique a sus alumnos qué ejercicios del juez pueden usar para practicar lo que ha contado. Sin embargo, la mayoría de jueces existentes no están adaptados completamente a las necesidades de esos usuarios. Cuando los alumnos envían una solución a un problema, pueden recibir un veredicto positivo (solución correcta) o un veredicto negativo (incorrecta). Al recibir un veredicto negativo, el alumno tiende a sentirse perdido y desmotivado, y no sabe cómo continuar, ya que el feedback que da el juez ante los errores cometidos es inexistente. En este trabajo se estudian las diferentes formas de incluir pistas en los jueces online, que ayudarán a los usuarios en su camino hacia el éxito, dándoles información sobre los errores que están cometiendo para que intenten corregirlos. Para ello, se ha realizado una implementación para el juez ¡Acepta el Reto!, desarrollado por los directores de este trabajo. Dicha implementación utiliza las salidas generadas por las soluciones que envían los usuarios para agruparlos en función del error que han cometido y posteriormente darles una pista personalizada. Además, se proporciona una herramienta de visualización del grafo de envíos, así como una herramienta de comparación de soluciones, bajo la convicción de que ambas resultarán muy útiles a la hora de ayudar al autor o a los propios alumnos a proponer pistas para futuros usuarios

    Sistemas de recomendación basados en técnicas de predicción de enlaces para jueces en línea

    Get PDF
    La oferta de todo tipo de productos o experiencias que se puede encontrar en Internet hoy en día es inmensa y difícil de valorar para los usuarios que quieren buscar un producto que se adapte a sus necesidades. Debido a este problema, surgen los sistemas de recomendación, que ayudan a los usuarios a encontrar productos que sean de su interés facilitando sus tareas de búsqueda. Los sistemas de recomendación están implantados en muchísimas plataformas de consumo, pero no en otro tipo de plataformas donde su uso también sería interesante y necesario. Una de estas plataformas son los jueces en línea, donde los sistemas de recomendación podrían ayudar a los usuarios en la selección de los problemas a resolver que les resulten más interesantes. En este Trabajo Fin de Máster se proponen diferentes métodos de recomendación para implantar en jueces en línea que están basados en grafos de interacciones y que hacen uso de técnicas de predicción de enlaces con el fin de generar recomendaciones. En este trabajo se ha realizado una evaluación de los métodos de recomendación propuestos a través de la generación de experimentos realizados sobre el juez en línea de Acepta el Reto con el objetivo de determinar qué métodos resultan más prometedore
    corecore