Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3649217.3653534acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
research-article

A Case For Reflection In Autograding

Published: 03 July 2024 Publication History

Abstract

Autograders are programs written to analyze student work from formative assessments and produce both grades and constructive feedback for the benefit of instructors and/or students. Many strategies can be used to develop these programs. This paper demonstrates a strategy based on reflection that allows test cases to examine the internal state of objects and to create objects with arbitrary internal states. We report on our experiences using this technique in a CS2 course, where we found that students given autograders based on this strategy produce more correct solutions than those given autograders that rely on the public interfaces of student-written classes.

References

[1]
Brett A. Becker, Paul Denny, Raymond Pettit, Durell Bouchard, Dennis J. Bouvier, Brian Harrington, Amir Kamil, Amey Karkare, Chris McDonald, Peter-Michael Osera, Janice L. Pearce, and James Prather. 2019. Compiler Error Messages Considered Unhelpful: The Landscape of Text-Based Programming Error Message Research. In Proceedings of the Working Group Reports on Innovation and Technology in Computer Science Education (Aberdeen, Scotland, UK). 177--210.
[2]
Jeremiah Blanchard, John R. Hott, Vincent Berry, Rebecca Carroll, Bob Edmison, Richard Glassey, Oscar Karnalim, Brian Plancher, and Seán Russell. 2022. Stop Reinventing the Wheel! Promoting Community Software in Computing Education. In Proceedings of the 2022 Working Group Reports on Innovation and Technology in Computer Science Education (Dublin, Ireland). 261--292.
[3]
Yoonsik Cheon and Gary T. Leavens. 2002. A Simple and Practical Approach to Unit Testing: The JML and JUnit Way. In Proceedings of the 16th European Conference on Object-Oriented Programming (Malaga, Spain). Springer-Verlag, 231--255.
[4]
Steve Freeman and Nat Pryce. 2009. Growing Object-Oriented Software, Guided By Tests 1st ed.). Addison-Wesley Professional.
[5]
Michael T. Helmick. 2007. Interface-based Programming Assignments and Automatic Grading of Java Programs. In Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (Dundee, Scotland, UK). 63--67.
[6]
Chad Hogg and Maria Jump. 2022. Designing Autograders for Novice Programmers. In Proceedings of the 53rd ACM Technical Symposium on Computer Science Education, V. 2 (Providence, RI, USA). 1200.
[7]
Pattie Maes. 1987. Concepts and experiments in computational reflection. SIGPLAN Not., Vol. 22, 12 (1987), 147--155.
[8]
Michael Main. 2011. Data Structures and Other Objects Using Java 4th ed.). Prentice Hall Press.
[9]
Derek S. Morris. 2002. Automatically Grading Java Programming Assignments via Reflection, Inheritance, and Regular Expressions. In Proceedings of the 32nd Annual Frontiers in Education Conference (Boston, MA, USA). T3G--22.
[10]
David O'Hallaran, Gregory Kesden, and et. al. 2014. AutoLab Project. https://autolabproject.com/.
[11]
Viera K. Proulx and Weston Jossey. 2009. Unit Test Support for Java via Reflection and Annotations. In Proceedings of the 7th International Conference on Principles and Practices of Programming in Java (Calgary, Alberta, Canada). Association for Computing Machinery, 49--56.
[12]
David Spadini, Maur'icio Aniche, Magiel Bruntink, and Alberto Bacchelli. 2019. Mock Objects for Testing Java Systems. Empirical Software Engineering, Vol. 24, 3 (2019), 1461--1498.
[13]
Chris Wilcox. 2016. Testing Strategies for the Automated Grading of Student Programs. In Proceedings of the 47th ACM Technical Symposium on Computer Science Education (Memphis, TN, USA). 437--442.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ITiCSE 2024: Proceedings of the 2024 on Innovation and Technology in Computer Science Education V. 1
July 2024
776 pages
ISBN:9798400706004
DOI:10.1145/3649217
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 03 July 2024

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. autograding
  2. feedback
  3. introductory computing

Qualifiers

  • Research-article

Conference

ITiCSE 2024
Sponsor:

Acceptance Rates

Overall Acceptance Rate 552 of 1,613 submissions, 34%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 36
    Total Downloads
  • Downloads (Last 12 months)36
  • Downloads (Last 6 weeks)6
Reflects downloads up to 21 Sep 2024

Other Metrics

Citations

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media