ABSTRACT
Abstraction is a core skill for both programming and problem solving, however it is also a challenge for many students to develop a correct understanding of abstract concepts, such as program behaviour, which causes them to struggle with both introductory and advanced programming courses. Thus, evaluating students' ability to reason about programs should be an important topic for CS education.
We use a think-aloud study to record and analyse the strategies students apply to reason about program behaviour within the context of reversibility. Reversibility is a property of a program or function that indicates it could be brought back to its original state. Reasoning about reversibility requires students to have a mental model of the state, thus they should reason about program behaviour as a whole, compared with reasoning about concrete cases using testing and tracing. We have identified four strategies used by students to complete the reversibility task, which we have named as algorithm decomposition, input analysis, abstraction and inductive testing. Although 70% of students successful identified reversibility in 2 of the 3 exercises, most students fail to correctly reason about reversibility in an exercise involving a seemingly simple conditional statement.
- R. Bornat, S. Dehnadi, and D. Barton. Observing mental models in novice programmers. In Proc. 24th Annual Workshop of the Psychology of Programming Interest Group, ACE '12, pages 77--86, 2012.Google Scholar
- I. Cetin. Student's Understanding of Loops and Nested Loops in Computer Programming: An APOS Theory Perspective. Canadian Journal of Science, Mathematics and Technology Education, 15(2):155--170, Feb. 2015.Google ScholarCross Ref
- E. Charters. The Use of Think-aloud Methods in Qualitative Research An Introduction to Think-aloud Methods. Brock Educ. J., 12(2):68--82, 2003.Google ScholarCross Ref
- C. L. Corritore and S. Wiedenbeck. What do novices learn during program comprehension? International Journal of Human-Computer Interaction, 3(2):199--222, 1991.Google ScholarCross Ref
- K. Ericsson and H. Simon. Protocol Analysis: Verbal Reports as Data. Bradford books. MIT Press, 1984.Google Scholar
- F. King, L. Goodson, and F. Rohani. Higher order thinking skills: Definitions, strategies, assessment. A publication of the Educational Services Program (now known as the Center for Advancement of Learning and Assessment). Retrieved December, 4:2014, 1998.Google Scholar
- R. Lister. Concrete and other neo-piagetian forms of reasoning in the novice programmer. Conf. Res. Pract. Inf. Technol. Ser., 114:9--18, 2011. Google ScholarDigital Library
- R. Lister, B. Simon, E. Thompson, J. L. Whalley, and C. Prasad. Not seeing the forest for the trees: Novice programmers and the solo taxonomy. SIGCSE Bull., 38(3):118--122, June 2006. Google ScholarDigital Library
- M. Lopez, J. Whalley, P. Robbins, and R. Lister. Relationships between reading, tracing and writing skills in introductory programming. In Proc. 4th Int. Workshop on Computing Education Research, ICER '08, pages 101--112, New York, NY, USA, 2008. ACM. Google ScholarDigital Library
- N. Pennington. Empirical studies of programmers: Second workshop. chapter Comprehension Strategies in Programming, pages 100--113. Ablex Publishing Corp., Norwood, NJ, USA, 1987. Google ScholarDigital Library
- N. Ragonis and M. Ben-Ari. On understanding the statics and dynamics of object-oriented programs. SIGCSE Bull., 37(1):226--230, Feb. 2005. Google ScholarDigital Library
- P. Sutherland. The application of piagetian and neo-piagetian ideas to further and higher education. International Journal of Lifelong Education, 18(4):286--294, 1999.Google ScholarCross Ref
- D. Teague and R. Lister. Programming: Reading, Writing And Reversing. Proc. 19th ACM Conf. Innov. Technol. Comput. Sci. Educ. - ITiCSE '14, pages 285--290, 2014. Google ScholarDigital Library
Index Terms
- On the Ability to Reason About Program Behaviour: A Think-Aloud Study
Recommendations
Visible watermarking with reversibility of multimedia images for ownership declarations
Digital watermarking technology is primarily the joining of the rightful owner of the protected media. Once the media are suspected to be illegally used, an open algorithm can be used to extract the digital watermark for the purpose of showing the media'...
Multilevel reversible data hiding based on histogram modification of difference images
Reversible data hiding has drawn considerable attention in recent years. Reversibility allows original media to be completely recovered from marked media without distortion after embedded message has been extracted. In this paper we propose a multilevel ...
A New Reversible and high capacity data hiding technique for E-healthcare applications
A high capacity and reversible data hiding technique capable of tamper detection and localisation of medical images has been proposed in this paper. Image interpolation has been used to scale up the original image to obtain the cover image. The cover ...
Comments