Automated Grading and Feedback Tools for Programming Education: A Systematic Review

We conducted a systematic literature review on automated grading and feedback tools for programming education. We analysed 121 research papers from 2017 to 2021 inclusive and categorised them based on skills assessed, approach, language paradigm, degree of automation and evaluation techniques. Most...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:arXiv.org 2023-12
Hauptverfasser: Messer, Marcus, Brown, Neil C C, Kölling, Michael, Shi, Miaojing
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title arXiv.org
container_volume
creator Messer, Marcus
Brown, Neil C C
Kölling, Michael
Shi, Miaojing
description We conducted a systematic literature review on automated grading and feedback tools for programming education. We analysed 121 research papers from 2017 to 2021 inclusive and categorised them based on skills assessed, approach, language paradigm, degree of automation and evaluation techniques. Most papers assess the correctness of assignments in object-oriented languages. Typically, these tools use a dynamic technique, primarily unit testing, to provide grades and feedback to the students or static analysis techniques to compare a submission with a reference solution or with a set of correct student submissions. However, these techniques' feedback is often limited to whether the unit tests have passed or failed, the expected and actual output, or how they differ from the reference solution. Furthermore, few tools assess the maintainability, readability or documentation of the source code, with most using static analysis techniques, such as code quality metrics, in conjunction with grading correctness. Additionally, we found that most tools offered fully automated assessment to allow for near-instantaneous feedback and multiple resubmissions, which can increase student satisfaction and provide them with more opportunities to succeed. In terms of techniques used to evaluate the tools' performance, most papers primarily use student surveys or compare the automatic assessment tools to grades or feedback provided by human graders. However, because the evaluation dataset is frequently unavailable, it is more difficult to reproduce results and compare tools to a collection of common assignments.
doi_str_mv 10.48550/arxiv.2306.11722
format Article
fullrecord <record><control><sourceid>proquest_arxiv</sourceid><recordid>TN_cdi_arxiv_primary_2306_11722</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2828072204</sourcerecordid><originalsourceid>FETCH-LOGICAL-a524-c2266e4628f59f42910d588820e659907f8a1263a9dc33b9c0b6d32e1ed066d93</originalsourceid><addsrcrecordid>eNotj0FPwjAYhhsTEwnyAzzZxPPm169rab0tBNCERCO7L2XtyJCt2G0o_94Bnt7LkyfvQ8gDgzhRQsCzCb_VMUYOMmZsinhDRsg5i1SCeEcmbbsDAJRTFIKPyDrtO1-bzlm6DMZWzZaaxtKFc3Zjii-aeb9vaekD_Qh-G0xdn5G57QvTVb55oSldn9rODYqqoJ_uWLmfe3Jbmn3rJv87Jtlins1eo9X78m2WriIjMIkKRCldIlGVQpcJagZWKKUQnBRaw7RUhqHkRtuC840uYCMtR8ecBSmt5mPyeNVeivNDqGoTTvm5PL-UD8TTlTgE_927tst3vg_N8ClHhQoGBhL-B7BdWi0</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2828072204</pqid></control><display><type>article</type><title>Automated Grading and Feedback Tools for Programming Education: A Systematic Review</title><source>arXiv.org</source><source>Free E- Journals</source><creator>Messer, Marcus ; Brown, Neil C C ; Kölling, Michael ; Shi, Miaojing</creator><creatorcontrib>Messer, Marcus ; Brown, Neil C C ; Kölling, Michael ; Shi, Miaojing</creatorcontrib><description>We conducted a systematic literature review on automated grading and feedback tools for programming education. We analysed 121 research papers from 2017 to 2021 inclusive and categorised them based on skills assessed, approach, language paradigm, degree of automation and evaluation techniques. Most papers assess the correctness of assignments in object-oriented languages. Typically, these tools use a dynamic technique, primarily unit testing, to provide grades and feedback to the students or static analysis techniques to compare a submission with a reference solution or with a set of correct student submissions. However, these techniques' feedback is often limited to whether the unit tests have passed or failed, the expected and actual output, or how they differ from the reference solution. Furthermore, few tools assess the maintainability, readability or documentation of the source code, with most using static analysis techniques, such as code quality metrics, in conjunction with grading correctness. Additionally, we found that most tools offered fully automated assessment to allow for near-instantaneous feedback and multiple resubmissions, which can increase student satisfaction and provide them with more opportunities to succeed. In terms of techniques used to evaluate the tools' performance, most papers primarily use student surveys or compare the automatic assessment tools to grades or feedback provided by human graders. However, because the evaluation dataset is frequently unavailable, it is more difficult to reproduce results and compare tools to a collection of common assignments.</description><identifier>EISSN: 2331-8422</identifier><identifier>DOI: 10.48550/arxiv.2306.11722</identifier><language>eng</language><publisher>Ithaca: Cornell University Library, arXiv.org</publisher><subject>Automation ; Computer Science - Software Engineering ; Documentation ; Education ; Feedback ; Literature reviews ; Maintainability</subject><ispartof>arXiv.org, 2023-12</ispartof><rights>2023. This work is published under http://arxiv.org/licenses/nonexclusive-distrib/1.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.</rights><rights>http://arxiv.org/licenses/nonexclusive-distrib/1.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,781,785,886,27930</link.rule.ids><backlink>$$Uhttps://doi.org/10.1145/3636515$$DView published paper (Access to full text may be restricted)$$Hfree_for_read</backlink><backlink>$$Uhttps://doi.org/10.48550/arXiv.2306.11722$$DView paper in arXiv$$Hfree_for_read</backlink></links><search><creatorcontrib>Messer, Marcus</creatorcontrib><creatorcontrib>Brown, Neil C C</creatorcontrib><creatorcontrib>Kölling, Michael</creatorcontrib><creatorcontrib>Shi, Miaojing</creatorcontrib><title>Automated Grading and Feedback Tools for Programming Education: A Systematic Review</title><title>arXiv.org</title><description>We conducted a systematic literature review on automated grading and feedback tools for programming education. We analysed 121 research papers from 2017 to 2021 inclusive and categorised them based on skills assessed, approach, language paradigm, degree of automation and evaluation techniques. Most papers assess the correctness of assignments in object-oriented languages. Typically, these tools use a dynamic technique, primarily unit testing, to provide grades and feedback to the students or static analysis techniques to compare a submission with a reference solution or with a set of correct student submissions. However, these techniques' feedback is often limited to whether the unit tests have passed or failed, the expected and actual output, or how they differ from the reference solution. Furthermore, few tools assess the maintainability, readability or documentation of the source code, with most using static analysis techniques, such as code quality metrics, in conjunction with grading correctness. Additionally, we found that most tools offered fully automated assessment to allow for near-instantaneous feedback and multiple resubmissions, which can increase student satisfaction and provide them with more opportunities to succeed. In terms of techniques used to evaluate the tools' performance, most papers primarily use student surveys or compare the automatic assessment tools to grades or feedback provided by human graders. However, because the evaluation dataset is frequently unavailable, it is more difficult to reproduce results and compare tools to a collection of common assignments.</description><subject>Automation</subject><subject>Computer Science - Software Engineering</subject><subject>Documentation</subject><subject>Education</subject><subject>Feedback</subject><subject>Literature reviews</subject><subject>Maintainability</subject><issn>2331-8422</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2023</creationdate><recordtype>article</recordtype><sourceid>ABUWG</sourceid><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><sourceid>GOX</sourceid><recordid>eNotj0FPwjAYhhsTEwnyAzzZxPPm169rab0tBNCERCO7L2XtyJCt2G0o_94Bnt7LkyfvQ8gDgzhRQsCzCb_VMUYOMmZsinhDRsg5i1SCeEcmbbsDAJRTFIKPyDrtO1-bzlm6DMZWzZaaxtKFc3Zjii-aeb9vaekD_Qh-G0xdn5G57QvTVb55oSldn9rODYqqoJ_uWLmfe3Jbmn3rJv87Jtlins1eo9X78m2WriIjMIkKRCldIlGVQpcJagZWKKUQnBRaw7RUhqHkRtuC840uYCMtR8ecBSmt5mPyeNVeivNDqGoTTvm5PL-UD8TTlTgE_927tst3vg_N8ClHhQoGBhL-B7BdWi0</recordid><startdate>20231206</startdate><enddate>20231206</enddate><creator>Messer, Marcus</creator><creator>Brown, Neil C C</creator><creator>Kölling, Michael</creator><creator>Shi, Miaojing</creator><general>Cornell University Library, arXiv.org</general><scope>8FE</scope><scope>8FG</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>HCIFZ</scope><scope>L6V</scope><scope>M7S</scope><scope>PIMPY</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20231206</creationdate><title>Automated Grading and Feedback Tools for Programming Education: A Systematic Review</title><author>Messer, Marcus ; Brown, Neil C C ; Kölling, Michael ; Shi, Miaojing</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a524-c2266e4628f59f42910d588820e659907f8a1263a9dc33b9c0b6d32e1ed066d93</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2023</creationdate><topic>Automation</topic><topic>Computer Science - Software Engineering</topic><topic>Documentation</topic><topic>Education</topic><topic>Feedback</topic><topic>Literature reviews</topic><topic>Maintainability</topic><toplevel>online_resources</toplevel><creatorcontrib>Messer, Marcus</creatorcontrib><creatorcontrib>Brown, Neil C C</creatorcontrib><creatorcontrib>Kölling, Michael</creatorcontrib><creatorcontrib>Shi, Miaojing</creatorcontrib><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Materials Science &amp; Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection (ProQuest)</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Engineering Collection</collection><collection>Engineering Database</collection><collection>Access via ProQuest (Open Access)</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>Engineering Collection</collection><collection>arXiv Computer Science</collection><collection>arXiv.org</collection><jtitle>arXiv.org</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Messer, Marcus</au><au>Brown, Neil C C</au><au>Kölling, Michael</au><au>Shi, Miaojing</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Automated Grading and Feedback Tools for Programming Education: A Systematic Review</atitle><jtitle>arXiv.org</jtitle><date>2023-12-06</date><risdate>2023</risdate><eissn>2331-8422</eissn><abstract>We conducted a systematic literature review on automated grading and feedback tools for programming education. We analysed 121 research papers from 2017 to 2021 inclusive and categorised them based on skills assessed, approach, language paradigm, degree of automation and evaluation techniques. Most papers assess the correctness of assignments in object-oriented languages. Typically, these tools use a dynamic technique, primarily unit testing, to provide grades and feedback to the students or static analysis techniques to compare a submission with a reference solution or with a set of correct student submissions. However, these techniques' feedback is often limited to whether the unit tests have passed or failed, the expected and actual output, or how they differ from the reference solution. Furthermore, few tools assess the maintainability, readability or documentation of the source code, with most using static analysis techniques, such as code quality metrics, in conjunction with grading correctness. Additionally, we found that most tools offered fully automated assessment to allow for near-instantaneous feedback and multiple resubmissions, which can increase student satisfaction and provide them with more opportunities to succeed. In terms of techniques used to evaluate the tools' performance, most papers primarily use student surveys or compare the automatic assessment tools to grades or feedback provided by human graders. However, because the evaluation dataset is frequently unavailable, it is more difficult to reproduce results and compare tools to a collection of common assignments.</abstract><cop>Ithaca</cop><pub>Cornell University Library, arXiv.org</pub><doi>10.48550/arxiv.2306.11722</doi><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier EISSN: 2331-8422
ispartof arXiv.org, 2023-12
issn 2331-8422
language eng
recordid cdi_arxiv_primary_2306_11722
source arXiv.org; Free E- Journals
subjects Automation
Computer Science - Software Engineering
Documentation
Education
Feedback
Literature reviews
Maintainability
title Automated Grading and Feedback Tools for Programming Education: A Systematic Review
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-12T10%3A51%3A35IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_arxiv&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Automated%20Grading%20and%20Feedback%20Tools%20for%20Programming%20Education:%20A%20Systematic%20Review&rft.jtitle=arXiv.org&rft.au=Messer,%20Marcus&rft.date=2023-12-06&rft.eissn=2331-8422&rft_id=info:doi/10.48550/arxiv.2306.11722&rft_dat=%3Cproquest_arxiv%3E2828072204%3C/proquest_arxiv%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2828072204&rft_id=info:pmid/&rfr_iscdi=true