Abstract
Success in coding exercises is deeply related to the strategy employed by the students to solve coding tasks. In this contribution, we analyze the programming assignments of 600 students from an introductory university course in object-oriented programming. The students were provided unit tests for the assessment of their code, and their editing and testing actions were recorded using an Eclipse plug-in. The primary motivation for this study is to discover the programming strategies used by students for coding exercises with different difficulty levels, and find out if any relation exists between these strategies and the success in solving the coding tasks. More insights into this process will enable educators to provide future students timely, appropriate and constructive feedback on their coding process. Thus, to predict success in the coding exercises, we used indicators from students’ testing behaviour reflecting the time and effort differences between two successive unit test runs. The results show a clear difference in the strategies employed by students within different success levels. The results also highlight ways of providing actionable feedback to the students in a timely and appropriate manner.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Alloway, T.P., Alloway, R.G.: Investigating the predictive roles of working memory and IQ in academic attainment. J. Exp. Child Psychol. 106(1), 20–29 (2010)
Barnes, D.J., Fincher, S., Thompson, S.: Introductory problem solving in computer science. In: 5th Annual Conference on the Teaching of Computing, pp. 36–39 (1997)
Barrick, M.R., Mount, M.K., Strauss, J.P.: Conscientiousness and performance of sales representatives: test of the mediating effects of goal setting. J. Appl. Psychol. 78(5), 715 (1993)
Blikstein, P., Worsley, M., Piech, C., Sahami, M., Cooper, S., Koller, D.: Programming pluralism: using learning analytics to detect patterns in the learning of computer programming. J. Learn. Sci. 23(4), 561–599 (2014)
Bruce, C., Buckingham, L., Hynd, J., McMahon, C., Roggenkamp, M., Stoodley, I.: Ways of experiencing the act of learning to program: a phenomenographic study of introductory programming students at university. In: Transforming IT Education: Promoting a Culture of Excellence, pp. 301–325 (2006)
Busato, V.V., Prins, F.J., Elshout, J.J., Hamaker, C.: Intellectual ability, learning style, personality, achievement motivation and academic success of psychology students in higher education. Pers. Individ. Differ. 29(6), 1057–1068 (2000)
Cano, F.: Epistemological beliefs and approaches to learning: their change through secondary school and their influence on academic performance. Br. J. Educ. Psychol. 75(2), 203–221 (2005)
Chamorro-Premuzic, T., Furnham, A.: Personality traits and academic examination performance. Eur. J. Pers. 17(3), 237–250 (2003)
Chamorro-Premuzic, T., Furnham, A.: Personality, intelligence and approaches to learning as predictors of academic performance. Pers. Individ. Differ. 44(7), 1596–1603 (2008)
Cooper, S., Cassel, L., Moskal, B., Cunningham, S.: Outcomes-based computer science education. In: ACM SIGCSE Bulletin, vol. 37, pp. 260–261. ACM (2005)
Corno, L., Mandinach, E.B.: The role of cognitive engagement in classroom learning and motivation. Educ. Psychol. 18(2), 88–108 (1983)
Corno, L., Rohrkemper, M.: The intrinsic motivation to learn in classrooms. Res. Motiv. Educ. 2, 53–90 (1985)
Digman, J.M.: Five robust trait dimensions: development, stability, and utility. J. Pers. 57(2), 195–214 (1989)
Diseth, Å.: Self-efficacy, goal orientations and learning strategies as mediators between preceding and subsequent academic achievement. Learn. Individ. Differ. 21(2), 191–195 (2011)
Edwards, S.H., Perez-Quinones, M.A.: Web-CAT: automatically grading programming assignments. In: ACM SIGCSE Bulletin, vol. 40, pp. 328–328. ACM (2008)
Felder, R.M., Silverman, L.K., et al.: Learning and teaching styles in engineering education. Eng. Educ. 78(7), 674–681 (1988)
Fitzgerald, S., McCauley, R., Hanks, B., Murphy, L., Simon, B., Zander, C.: Debugging from the student perspective. IEEE Trans. Educ. 53(3), 390–396 (2010)
Hattie, J., Timperley, H.: The power of feedback. Rev. Educ. Res. 77(1), 81–112 (2007)
Jadud, M.C.: Methods and tools for exploring novice compilation behaviour. In: Proceedings of the Second International Workshop on Computing Education Research, pp. 73–84. ACM (2006)
KiesmĂĽller, U.: Diagnosing learners problem-solving strategies using learning environments with algorithmic problems in secondary education. ACM Trans. Comput. Educ. 9(3), 17 (2009)
Lishinski, A., Yadav, A., Enbody, R., Good, J.: The influence of problem solving abilities on students’ performance on different assessment tasks in CS1. In: Proceedings of the 47th ACM Technical Symposium on Computing Science Education, pp. 329–334. ACM (2016)
Lister, R., et al.: A multi-national study of reading and tracing skills in novice programmers. In: ACM SIGCSE Bulletin, vol. 36, pp. 119–150. ACM (2004)
Maldonado-Mahauad, J., PĂ©rez-SanagustĂn, M., Kizilcec, R.F., Morales, N., Munoz-Gama, J.: Mining theory-based patterns from big data: identifying self-regulated learning strategies in massive open online courses. Comput. Hum. Behav. 80, 179–196 (2018)
Mitchell, C.M., Boyer, K.E., Lester, J.C.: When to intervene: toward a Markov decision process dialogue policy for computer science tutoring. In: The First Workshop on AI-supported Education for Computer Science, p. 40 (2013)
Perkins, D.N., Hancock, C., Hobbs, R., Martin, F., Simmons, R.: Conditions of learning in novice programmers. J. Educ. Comput. Res. 2(1), 37–55 (1986)
Piech, C., Sahami, M., Koller, D., Cooper, S., Blikstein, P.: Modeling how students learn to program. In: Proceedings of the 43rd ACM Technical Symposium on Computer Science Education, pp. 153–160. ACM (2012)
Pintrich, P.R.: A conceptual framework for assessing motivation and self-regulated learning in college students. Educ. Psychol. Rev. 16(4), 385–407 (2004)
Poropat, A.E.: A meta-analysis of the five-factor model of personality and academic performance. Psychol. Bull. 135(2), 322 (2009)
Rivers, K., Koedinger, K.R.: Automatic generation of programming feedback: a data-driven approach. In: The First Workshop on AI-Supported Education for Computer Science, vol. 50 (2013)
Rodriguez, C.M.: The impact of academic self-concept, expectations and the choice of learning strategy on academic achievement: the case of business students. High. Educ. Res. Dev. 28(5), 523–539 (2009)
Saeli, M., Perrenet, J., Jochems, W.M., Zwaneveld, B.: Teaching programming in secondary school: a pedagogical content knowledge perspective. Inform. Educ. 10(1), 73–88 (2011)
Simon, B., Chen, T.Y., Lewandowski, G., McCartney, R., Sanders, K.: Commonsense computing: what students know before we teach (episode 1: sorting). In: Proceedings of the Second International Workshop on Computing Education Research, pp. 29–40. ACM (2006)
Soloway, E., Bonar, J., Ehrlich, K.: Cognitive strategies and looping constructs: an empirical study. Commun. ACM 26(11), 853–860 (1983)
Soloway, E., Ehrlich, K.: Empirical studies of programming knowledge. In: Readings in Artificial Intelligence and Software Engineering, pp. 507–521. Elsevier (1986)
Stajkovic, A.D., Bandura, A., Locke, E.A., Lee, D., Sergent, K.: Test of three conceptual models of influence of the big five personality traits and self-efficacy on academic performance: a meta-analytic path-analysis. Pers. Individ. Differ. 120, 238–245 (2018)
Turkle, S., Papert, S.: Epistemological pluralism and the revaluation of the concrete. J. Math. Behav. 11(1), 3–33 (1992)
VanDeGrift, T., Bouvier, D., Chen, T.Y., Lewandowski, G., McCartney, R., Simon, B.: Commonsense computing (episode 6): logic is harder than pie. In: Proceedings of the 10th Koli Calling International Conference on Computing Education Research, pp. 76–85. ACM (2010)
Vee, M., Meyer, B., Mannock, K.L.: Understanding novice errors and error paths in object-oriented programming through log analysis. In: Proceedings of Workshop on Educational Data Mining at the 8th International Conference on Intelligent Tutoring Systems, pp. 13–20 (2006)
Vihavainen, A., Vikberg, T., Luukkainen, M., Pärtel, M.: Scaffolding students’ learning using test my code. In: Proceedings of the 18th ACM Conference on Innovation and Technology in Computer Science Education, pp. 117–122. ACM (2013)
Zimmerman, B.J., Schunk, D.H.: Reflections on theories of self-regulated learning and academic achievement. In: Self-Regulated Learning and Academic Achievement, pp. 282–301. Routledge (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Sharma, K., Mangaroska, K., Trætteberg, H., Lee-Cultura, S., Giannakos, M. (2018). Evidence for Programming Strategies in University Coding Exercises. In: Pammer-Schindler, V., PĂ©rez-SanagustĂn, M., Drachsler, H., Elferink, R., Scheffel, M. (eds) Lifelong Technology-Enhanced Learning. EC-TEL 2018. Lecture Notes in Computer Science(), vol 11082. Springer, Cham. https://doi.org/10.1007/978-3-319-98572-5_25
Download citation
DOI: https://doi.org/10.1007/978-3-319-98572-5_25
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-98571-8
Online ISBN: 978-3-319-98572-5
eBook Packages: Computer ScienceComputer Science (R0)