2020
DOI: 10.1002/cae.22317
|View full text |Cite
|
Sign up to set email alerts
|

Customizable and scalable automated assessment of C/C++ programming assignments

Abstract: The correction of exercises in programming courses is a laborious task that has traditionally been performed in a manual way. This situation, in turn, delays the access by students to feedback that can contribute significantly to their training as future professionals. Over the years, several approaches have been proposed to automate the assessment of students' programs. Static analysis is a known technique that can partially simulate the process of manual code review performed by lecturers. As such, it is a p… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
9
0

Year Published

2020
2020
2024
2024

Publication Types

Select...
5
1

Relationship

0
6

Authors

Journals

citations
Cited by 19 publications
(9 citation statements)
references
References 37 publications
0
9
0
Order By: Relevance
“…JEWL is a Java library to create GUI with a mock version that can be used for automatic assessment [34]. CAC++ is a C++ library developed to help instructors design their own assessment programs for C and C++ assignments [110]. Some systems have also been implemented as programs to be run as backend services to ease the integration with existing frontend ones.…”
Section: Toolmentioning
confidence: 99%
“…JEWL is a Java library to create GUI with a mock version that can be used for automatic assessment [34]. CAC++ is a C++ library developed to help instructors design their own assessment programs for C and C++ assignments [110]. Some systems have also been implemented as programs to be run as backend services to ease the integration with existing frontend ones.…”
Section: Toolmentioning
confidence: 99%
“…Automation of assessment facilitates more extensive practice and self-learning of students, which is essential in novice programming and supports nontraditional modes of classes such as in massive open online courses (MOOCs) [2,22,42]. APASs have been found to be beneficial to both instructors and students in a variety of other ways [1,17,32,43,46], including convenient access and streamlined administration and marking of exercises and assignments [4,6,22], provision of prompt and informative feedback to students for effective learning [24,27,35,42], promotion of students' learning motivation [9,26], collection of data analytics for improvement of teaching, and so on. These benefits, however, are critically dependent on how well APASs can assess students' programs accurately.…”
Section: Introductionmentioning
confidence: 99%
“…Output comparison techniques also present another important limitation: because they cannot access the source code and they only check whether the output is correct or wrong, they have only two possible evaluation values: correct or wrong. Nevertheless, the real scenario is often different: teachers usually divide the mark of an exercise into smaller evaluable parts [15,26,9]. Assuming a methodology where 10 points is the maximum grade, 5 the minimum grade to pass the exam, and each appraisable piece not fulfilled decreases the student's final mark, Solution 1 would barely pass the exam.…”
Section: Introductionmentioning
confidence: 99%
“…These properties are specified and verified according to a language based on the abstract syntax tree (AST) of the program, which is unique for a particular Java program. A new similar assessment system is the one introduced by [15] for C/C++ programs. They developed a C library able to inspect the static structure of the code.…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation