51 research outputs found
Automated Program Analysis for Novice Programmers
[EN] This paper describes how to adapt a static code analyzer to provide feedback novice programmers and their teachers. Current analyzers have been built to give feedback to experienced programmers who work on software projects or systems. The type of feedback and the type of analysis of these tools focusses on mistakes that are relevant within that context, and help with debugging software system. When teaching novice programmers this type of advice is often not particularly useful. It would be instead more useful to use these techniques to identify problem in the understanding of students of important programming concepts. This paper first explores in what respect static analyzers support the learning and teaching of programming, and what can be implemented based on existing static analysis technology. It presents an extension of static analyzer PMD to create feedback that is more valuable to novice programmers. To answer the question if these techniques are able to find conceptual mistakes that are characteristic for novice programmers make, we ran it over a number of student projects, and compared these results with publicly available mature software projects.Blok, T.; Fehnker, A. (2017). Automated Program Analysis for Novice Programmers. En Proceedings of the 3rd International Conference on Higher Education Advances. Editorial Universitat Politècnica de València. 1138-1146. https://doi.org/10.4995/HEAD17.2017.5533OCS1138114
VPL: laboratorio virtual de programación para Moodle
En este trabajo se presenta VPL (Virtual
Programming Lab), una herramienta software de
código abierto que permite la gestión de prácticas
de programación en Moodle. Esta herramienta
está compuesta de un módulo Moodle, un applet
editor de código fuente y un demonio Linux que
permite la ejecución remota de programas de
forma segura. Pretende ahorrar tiempo y mejorar
la gestión general de este tipo de actividades,
además de permitir la realización de las prácticas
sólo con un navegador. Sus características más
destacadas son: la posibilidad de editar el código
fuente y ejecutar las prácticas de forma interactiva
desde el navegador, ejecutar pruebas que revisen
las prácticas y analizar la similitud entre prácticas
para el control del plagio. Esta herramienta se ha
empleado con éxito en diversas asignaturas
durante el año 2009. VPL está disponible para su
descarga en http://vpl.dis.ulpgc.es.Peer Reviewe
e-CAF: flexible marking schemes for electronic coursework assessment and feedback
Recent surveys reveal that many university students in the U.K. are not satisfied with the timeliness and usefulness of the feedback given by their tutors. Ensuring timeliness in marking can result in a reduction in the quality of feedback. Though suitable use of Information and Communication Technology should alleviate this problem, existing Virtual Learning Environments are inadequate to support detailed marking scheme creation and they provide little support for giving detailed feedback. This paper describes a unique new web-based tool called e-CAF for facilitating coursework assessment and feedback management directed by marking schemes. Using e-CAF, tutors can create or reuse detailed marking schemes efficiently without sacrificing the accuracy or thoroughness in marking. The flexibility in marking scheme design also makes it possible for tutors to modify a marking scheme during the marking process without having to reassess the students’ submissions. The resulting marking process will become more transparent to students
A new marking technique in semi-automated assessment
The number of students learning programming languages in higher education and secondary schools has substantially increased, especially in the last decade. The increasing number of (novice) programmers makes code script assessment more important. Thus, this study proposes a new marking technique based on a semi-automated assessment
approach. It advocates providing detailed and consistent feedback for novice programmers based on formative assessment. An experiment was carried out to check the feasibility of the proposed marking technique. The initial results and findings show that this is a potentially valuable approach
Increasing the similarity of programming code structures to accelerate the marking process in a new semi-automated assessment approach
The increased number of students (in higher education) learning programming languages makes the efficient and effective assessment of student work more important. Thus, academic researchers have focused on the automation of programming assignment marking. However, the fully automated approach to marking has its issues. This study provides an approach geared towards the reduction of marking times while providing comprehensive, effective and consistent feedback on novice programmers’ code script. To assess novices’ code script, a new semi-automated assessment approach has been developed. This paper focuses on the semi-automatic assessment of programming code segments, partially explaining the increasing similarity between code segments using generic rules. The code segments referred to are ‘for’ and ‘while’ loops and sequence parts of code script. The initial results and findings for the proposed approach are positive and point to the need for further research in this area
Técnicas para aumentar o envolvimento dos alunos na aprendizagem da programação
Neste artigo analisam-se em particular duas técnicas concebidas para apoiar o ensino da programação: a Animação de Programas e a Avaliação Automática de Programas. Com base na combinação destas técnicas e respetivas ferramentas, atualmente disponíveis, iremos enunciar duas possíveis abordagens. Serão apresentadas as conclusões retiradas de uma primeira experiência conduzida em sala de aula. Por fim, esboçaremos uma ferramenta que através da Web, implementará uma das abordagens propostas
A Perspective Of Automated Programming Error Feedback Approaches In Problem Solving Exercises
Programming tools are meant for student to practice programming. Automated programming error feedback
will be provided for students to self-construct the knowledge through their own experience. This paper has
clustered current approaches in providing automated error programming feedback to the students during problem solving exercises. These include additional syntax error messages, solution template mismatches, test data comparison, assisted agent report and collaborative comment feedback. The study is conducted
based on published papers for last two decades. The trends are analyzed to get the overview of latest
research contributions towards eliminating programming difficulties among students. The result shows that
future direction of automated programming error feedback approaches may combine agent and collaborative feedback approaches towards more interactive, dynamic, end-user oriented and specific goal oriented. Such future direction may help other researchers fill in the gap on new ways of assisting learners to better understand feedback messages provided by automated assessment tool
Computer-supported Techniques to Increase Students Engagement in Programming
One of the main reasons that justify the student’s failure in (introductory) programming courses is the lack of
motivation that impacts on the knowledge acquisition process, affecting learning results. As soon as students
face the difficulties concerning the development of algorithms or the coding in a programming language, they
give up and do not try harder to solve other problems; they think it is a demanding activity and feel frustrated.
In this paper we describe in detail an experiment conducted to verify the effectiveness, in terms of the increase in motivation and in knowledge acquisition, of combining program Animation tools with the immediate
feedback provided by Automatic Evaluations Systems.info:eu-repo/semantics/publishedVersio
Semi-automatic assessment approach to programming code for novice students
Programming languages have been an integral element of the taught skills of many technical subjects in
Higher Education for the last half century. Moreover, secondary school students have also recently started
learning programming languages. This increase in the number of students learning programming languages
makes the efficient and effective assessment of student work more important. This research focuses on one
key approach to assessment using technology: the semi-automated marking of novice students’ program
code. The open-ended, flexible nature of programming ensures that no two significant pieces of code are
likely to be the same. However, it has been observed that there are a number of common code fragments
within these dissimilar solutions. This observation forms the basis of our proposed approach. The initial
research focuses on the ‘if’ structure to evaluate the theory behind the approach taken, which is appropriate
given its commonality across programming languages. The paper also discusses the results of real world
analysis of novice students’ programming code on ‘if’ structures. The paper concludes that the approach
taken could form a more effective and efficient method for the assessment of student coding assignments
- …