A Validated Scoring Rubric for Explain-in-Plain-English Questions

Previous research has identified the ability to read code and understand its high-level purpose as an important developmental skill that is harder to do (for a given piece of code) than executing code in one's head for a given input ("code tracing"), but easier to do than writing the code. Prior work involving code reading ("Explain in plain English") problems, have used a scoring rubric inspired by the SOLO taxonomy, but we found it difficult to employ because it didn't adequately handle the three dimensions of answer quality: correctness, level of abstraction, and ambiguity. In this paper, we describe a 7-point rubric that we developed for scoring student responses to "Explain in plain English'' questions, and we validate this rubric through four means. First, we find that the scale can be reliably applied with with a median Krippendorff's alpha (inter-rater reliability) of 0.775. Second, we report on an experiment to assess the validity of our scale. Third, we find that a survey consisting of 12 code reading questions had a high internal consistency (Cronbach's alpha = 0.954). Last, we find that our scores for code reading questions in a large enrollment (N = 452) data structures course are correlated (Pearson's R = 0.555) to code writing performance to a similar degree as found in previous work.

[1]  Craig Zilles,et al.  PrairieLearn: Mastery-based Online Problem Solving with Adaptive Scoring and Recommendations Driven by Machine Learning , 2015 .

[2]  Sue Fitzgerald,et al.  'explain in plain english' questions revisited: data structures problems , 2014, SIGCSE.

[3]  Marcia C. Linn,et al.  Patterns and pedagogy , 1999, SIGCSE '99.

[4]  Amy J. Ko,et al.  Comprehension First: Evaluating a Novel Pedagogy and Tutoring System for Program Tracing in CS1 , 2017, ICER.

[5]  Dastyni Loksa,et al.  A theory of instruction for introductory programming skills , 2019, Comput. Sci. Educ..

[6]  Raymond Lister,et al.  On the Frequency of Words Used in Answers to Explain in Plain English Questions by Novice Programmers , 2019, ACE '19.

[7]  Raymond Lister,et al.  Relationships between reading, tracing and writing skills in introductory programming , 2008, ICER '08.

[8]  A. Colman,et al.  Optimal number of response categories in rating scales: reliability, validity, discriminating power, and respondent preferences. , 2000, Acta psychologica.

[9]  Susan Wiedenbeck,et al.  Novice/Expert Differences in Programming Skills , 1985, Int. J. Man Mach. Stud..

[10]  Anne Venables,et al.  A closer look at tracing, explaining and code writing skills in the novice programmer , 2009, ICER '09.

[11]  David Reed,et al.  AAA and CS 1: the applied apprenticeship approach to CS 1 , 1995, SIGCSE.

[12]  Robert McCartney,et al.  Commonsense computing: what students know before we teach (episode 1: sorting) , 2006, ICER '06.

[13]  Lance A. Miller,et al.  Natural Language Programming: Styles, Strategies, and Contrasts , 1981, IBM Syst. J..

[14]  F. Paas,et al.  Cognitive Architecture and Instructional Design , 1998 .

[15]  Raymond Lister,et al.  Not seeing the forest for the trees: novice programmers and the SOLO taxonomy , 2006, ITICSE '06.

[16]  Sue Fitzgerald,et al.  Ability to 'explain in plain english' linked to proficiency in computer-based programming , 2012, ICER '12.

[17]  Sue Fitzgerald,et al.  'Explain in plain English' questions: implications for teaching , 2012, SIGCSE '12.

[18]  Colin J. Fidge,et al.  Further evidence of a relationship between explaining, tracing and writing skills in introductory programming , 2009, ITiCSE.

[19]  Kevin F. Collis,et al.  Evaluating the Quality of Learning: The SOLO Taxonomy , 1977 .

[20]  Beth Simon,et al.  Evaluating a new exam question: Parsons problems , 2008, ICER '08.

[21]  Lauri Malmi,et al.  A Review of Generic Program Visualization Systems for Introductory Programming Education , 2013, TOCE.

[22]  M. Linn,et al.  Cognitive consequences of Programming Instruction: Instruction, Access, and Ability , 1985 .

[23]  Timothy Bretl,et al.  Making Testing Less Trying: Lessons Learned from Operating a Computer-Based Testing Facility , 2018, 2018 IEEE Frontiers in Education Conference (FIE).

[24]  Timothy Bretl,et al.  Every University Should Have a Computer-Based Testing Facility , 2019, CSEDU.

[25]  Raymond Lister,et al.  Early relational reasoning and the novice programmer: swapping as the hello world of relational reasoning , 2011, ACE 2011.

[26]  Frederick W. B. Li,et al.  Failure rates in introductory programming revisited , 2014, ITiCSE '14.

[27]  Tony Clear,et al.  An Australasian study of reading and comprehension skills in novice programmers, using the bloom and SOLO taxonomies , 2006 .

[28]  M. Tavakol,et al.  Making sense of Cronbach's alpha , 2011, International journal of medical education.

[29]  Klaus Krippendorff,et al.  Content Analysis: An Introduction to Its Methodology , 1980 .

[30]  James R. Lewis,et al.  Multipoint scales: Mean and median differences and observed significance levels , 1993, Int. J. Hum. Comput. Interact..