ABSTRACT
In introductory programming courses it is common to demand from students exercises based on the production of code. However, it is difficult for the teacher to give fast feedback to the students about the main solutions tried, the main errors and the drawbacks and advantages of certain solutions. If we could use automatic code comparison algorithms to build visualisation tools to support the teacher in analysing how each solution provided is similar or different from another, such information would be able to be rapidly obtained. However, can computers compare students code solutions as well as teachers? In this work we present an experiment in which we have requested teachers to compare different code solutions to the same problem. Then we have evaluated the level of agreement among each teacher comparison strategy and some algorithms generally used for plagiarism detection and automatic grading. We found out a maximum rate of 77% of agreement between one of the teachers and the algorithms, but a minimum agreement of 75%. However, for most of the teachers, the maximum agreement rate was over 90% for at least one of the automatic strategies to compare code. We have also detected that the level of agreement among teachers regarding their personal strategies to compare students solutions was between 62% and 95%, which shows that there may be more agreement between a teacher and an algorithm than between a teacher and one of her colleagues regarding their strategies to compare students' solutions. The results also seem to support that comparison of students' codes has significant potential to be automated to help teachers in their work.
- A. Chamillard and K. A. Braun. Evaluating programming ability in an introductory computer science course. ACM SIGCSE Bulletin, 32(1):212--216, 2000. Google ScholarDigital Library
- J. L. Donaldson, A.-M. Lancaster, and P. H. Sposato. A plagiarism detection system. In ACM SIGCSE Bulletin, volume 13, pages 21--25. ACM, 1981. Google ScholarDigital Library
- C. D. Manning, P. Raghavan, and H. Schütze. Introduction to Information Retrieval. Cambridge University Press, New York, NY, USA, 2008. Google ScholarCross Ref
- C. D. Manning, P. Raghavan, and H. Schütze. Introduction to information retrieval, volume 1. Cambridge University Press Cambridge, 2008. Google ScholarCross Ref
- K. A. Naudé. Assessing program code through static structural similarity. PhD thesis, Nelson Mandela Metropolitan University, jan 2007.Google Scholar
- C. K. Roy. Detection and analysis of near-miss software clones. PhD thesis, Kingston, Ont., Canada, Canada, 2009. AAINR65337. Google ScholarDigital Library
- M. Sahami, S. Roach, E. Cuadros-Vargas, and R. LeBlanc. Acm/ieee-cs computer science curriculum 2013: reviewing the ironman report. In Proceeding of the 44th ACM technical symposium on Computer science education, pages 13--14. ACM, 2013. Google ScholarDigital Library
- P.-N. Tan, M. Steinbach, and V. Kumar. Introduction to Data Mining, (First Edition). Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2005. Google ScholarDigital Library
- K. Zhang and D. Shasha. Simple fast algorithms for the editing distance between trees and related problems. SIAM J. Comput., 18(6):1245--1262, Dec. 1989. Google ScholarDigital Library
Index Terms
- Can computers compare student code solutions as well as teachers?
Recommendations
Technology workshops by in-service teachers for pre-service teachers
SIGUCCS '01: Proceedings of the 29th annual ACM SIGUCCS conference on User servicesThis project was an initiative through university courses to have graduate in-service teachers, who have learned the use of technology for classroom instruction, offer workshops to undergraduate pre-service teachers. The goals of the project were two-...
Preparing STEM Teachers to offer New Mexico Computer Science for All
SIGCSE '17: Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science EducationIn this paper, we describe a new teacher professional development program, New Mexico Computer Science for All (NM-CSforAll), that prepares high school science, technology, engineering and math (STEM) teachers to serve as learning coaches / teaching ...
Comments