Automatic test-based assessment of programming (original) (raw)
Related papers
Automatic Assessment of Programming Assignments to Enable New Educational Paradigms
2017
Automating the assessment of programming assignments in higher education institutions is important to provide prompt feedback to the students, reduce teachers’ workload on repetitive tasks, avoid human errors, and enable the exploration of new educational paradigms such as gamification and course adaptation based on learning analytics. However, the automatic assessment of programming assignments is challenging because of the variety of programming languages, the variety of assessment strategies, the difficulty to assess quality attributes beyond functional correctness, and the need to integrate with e-learning and students management platforms. There are several platforms for automatic assessment that are used namely in programming contests, but that support only one assessment strategy or do not integrate with students management platforms. To overcome those limitations, the authors, from the Faculty of Engineering of the University of Porto, developed an extensible web based platf...
Building a Comprehensive Automated Programming Assessment System
IEEE Access
Automated Programming Assessment Systems (APAS) are used for overcoming problems associated with manually managed programming assignments, such as objective and efficient assessing in large classes and providing timely and helpful feedback. In this paper we survey the literature and software in this field and identify the set of necessary features that make APAS comprehensive-such that it can support all key stages in the assessment process. Put differently, comprehensive APAS is generic enough to meet the demands of "any" computer science course. Despite the vast number of publications, the choice of software turns out to be very limited. We contribute by developing Edgar, a comprehensive open-source APAS which, to the best of our knowledge, exceeds any other similar free and/or open-source tool. Edgar is the result of three years of development and usage in, for the time being, eight courses dealing with various programming languages and paradigms (C, Java, SQL, etc.). Edgar supports various text-based programming languages, multi-correct multiple-choice questions, provides rich exam logging and monitoring infrastructure to prevent potential fraudulent behaviour, and subsequent data analysis and visualization of students' scores, exams, question quality, etc. It can be deployed on all major operating systems and is written in a modular fashion so that it can be adjusted and scaled to a custom fit. We comment on the architecture and present data from real-world use-cases to support these claims. Edgar is in active use today (1000+ students per semester) and it is being constantly developed with new features.
COMPUTER-BASED ASSESSMENT SYSTEM FOR E-LEARNING APPLIED TO PROGRAMMING EDUCATION
2011
The e-learning systems are, currently, extremely useful tools in education, helping to reduce the distance between students and teachers and providing better methods for monitoring the learning process. These systems can play a particularly important role in programming courses, due to students needing to solve a high number of exercises while learning from their mistakes.
Are Automated Assessment Tools Helpful in Programming Courses?
2015 ASEE Annual Conference and Exposition Proceedings, 2015
teaches courses in programming, artificial intelligence, objected oriented design, algorithms, theory of computation, and related subjects in ACU's School of Information Technology and Computing. Prior to joining the ACU faculty, he spent twenty years in software development, research, and training the Air Force Research Lab and NASA's Langley Research Center as well as private industry. His current research focuses on how automated assessment tools interact with student learning in university programming courses.
A Critical Review on Recent Proposed Automated Programming Assessment Tool
2021
Automated assessment tool for programming assignments has been discussed extensively in education technology ever since of its existence. The tool aims to reduce the work load of instructors as well as providing an instantfeedback to students in pertaining to assessing programming assignments. Myriad versions of the tool accompanied with multiple features has been proposed till this day in order to cater modern trend of education technologies. Many previous studies have analyse on these existing tools but not on recent one. This study have conducted a critical review on the recent proposed tool based on its pedagogical and technical aspect. As a result of this study, more recent proposed tool are identified and its challenging issues are also highlighted.
Investigating the Feasibility of Automatic Assessment of Programming Tasks
Journal of Information Technology Education: Innovations in Practice
Aim/Purpose: The aims of this study were to investigate the feasibility of automatic assessment of programming tasks and to compare manual assessment with automatic assessment in terms of the effect of the different assessment methods on the marks of the students. Background: Manual assessment of programs written by students can be tedious. The assistance of automatic assessment methods might possibly assist in reducing the assessment burden, but there may be drawbacks diminishing the benefits of applying automatic assessment. The paper reports on the experience of a lecturer trying to introduce automated grading. Students’ solutions to a practical Java programming test were assessed both manually and automatically and the lecturer tied the experience to the unified theory of acceptance and use of technology (UTAUT). Methodology: The participants were 226 first-year students registered for a Java programming course. Of the tests the participants submitted, 214 were assessed both man...
This paper describes the development of a web-based programming and assessment environment for use in supporting programming fundamentals courses (CS1, CS2) taught in Java. This environment is currently linked with WeBWorK, an open source web-based system developed at the University of Rochester that is popular for administering and assessing mathematics and physics coursework, but is designed for the potential integration with other course management system (CMS) environments. In addition to the traditional multiple-choice and short answer questions that have been augmented with the extensive randomization and customization routines of WeBWorK, this new environment (called WeBWorK-JAG where JAG stands for Java Auto Grader) can automatically collect and grade free-form program fragments written in Java. Novel pedagogy has been developed based on the capabilities of this extension and preliminary classroom results are discussed in this paper. For example, when students contributed to WeBWorK by creating WeBWorK-JAG questions for their peers, they are exposed to the reality of creating comprehensive unit tests and to the wider quality assurance aspects of formulating questions and their solution sets. This work is described in the context of an emerging commercial market for web-based programming assistants and its unique contributions are summarized.
E-Learning Tool: A Review on Trends in Automated Programming Codes Assessment
The students' assessment is done in order to gauge their progress in a learning process. The ratio of one lecturer to a small number of students is considered a practical solution. However, the numbers of students are increasing, which could lead to a significant increase of workload for the lecturer. Teaching a programming course to a large number of students is a challenging. There are tradeoffs between giving a lot of assessments to the students to boost their understanding of the subject matter versus the amount of extra work for the lecturer to mark the assessments given. Since an assessment related to programming code merely deals with programming logic, it is desirable that an automated assessment tool is used to relieve the unnecessary load. Over the past few years, there are studies that offers solutions for automated marking of programming codes. Each solution has its own characteristics and mechanism. This study explores the trends in the e-learning tool (automated pr...