CONCEPTBASED ANALYSIS OF JAVA PROGRAMMING ERRORS AMONG LOW

CONCEPT–BASED ANALYSIS OF JAVA PROGRAMMING ERRORS AMONG LOW, AVERAGE AND HIGH ACHIEVING NOVICE PROGRAMMERS Emmanuel O. Olajubu Presentation Date In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Welcome Philip O. Jegede Institute of Education, Obafemi Awolowo University, Ile-Ife, Nigeria Emmanuel A. Olajubu Department of Computer Science & Engineering, Obafemi Awolowo University, Ile-Ife, Nigeria

Adekunle O. Ejidokun Department of Computer Science & Engineering, Obafemi Awolowo University. Ile-Ife, Nigeria. Isaac O. Elesemoyo Department of Computer Science & Engineering, Obafemi Awolowo University. Ile-Ife, Nigeria

Today’s Overview 1 2 3 4 5 6 7 8 9 • Background • Purpose of Research • Methods • Results • Contribution • Limitation • Implication For Classroom • Conclusion • References In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

BACKGROUND • Programming • Java • Error • Debugging In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

BACKGROUND CONT’D • Taxonomies of novice programming errors have been of interest to many researchers and educators [Brown et al. (2014); Denny et al. (2011); Fitzgerald et al. (2013); Johansen, 2015)]. • Causes of Such Errors [Bringula et al. (2012); Kaczmarcyk et al. (2010); Shah et al. (2017)]. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

PURPOSE OF RESEARCH • The aim is to improve code writing and debugging skills. • It is necessary to explore specifically how errors that novice programmers make vary based on their achievement level. • High achieving and average students were more effective at debugging on average than low-achieving students (Rodrigo et al. , 2014). In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

METHOD • A sequential exploratory mixed-method design was adopted for the study. • 124 students participated in the study which spanned one academic session • Introductory concepts in Java were instructed (with theory and practice) in the first semester. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

METHOD CONT’D • A summative assessment on the semester examination was done • Categorization was done ₋ Low achieving (between 0 and 49) ₋ Average achieving (between 50 and 59) ₋ High achieving (between 60 and 100) • Categorization result ₋ Low achieving – 26 students ₋ Average achieving – 33 students ₋ High achieving – 65 students In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

METHOD CONT’D • In Second Semester, students were taken through practical sessions in Java. • Concepts such as methods and class, decision making, more object concepts and looping. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

METHOD CONT’D • Following Bringula et al (2012) Submitted codes were analysed using for possible errors , using Quantitative Error Analysis. • Identified Errors were categorised into: • Invalid Symbols • Mismatched Symbols • Missing Symbols • Inappropriate Naming and • Excessive Symbols In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

METHOD CONT’D • Quantitative Analysis using descriptive statistics to determine error distribution based on concepts and achievements levels of beginner programmers. • Pearson product Correlation coefficient was used to determine the relationship between error types. • An interview was conducted to elicit information on selected students (12 in all) on reason leading to errors • Correlation is significant at the 0. 01 level (2 -tailed) In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

RESULTS Table 1: Error categorization and concept Invalid Mismatched Symbol Missing Symbol Inappropriate Excessive Naming Symbol Total Decision Making 25 61 58 4 26 174 (29. 1%) Looping 07 38 10 01 06 62 (10. 4%) Methods and Classes 16 31 75 53 41 214 (35. 8%) Other Object Concepts 23 03 52 20 48 146 (34. 1%) 71 (11. 9%) 133 (22. 2%) 195 (32. 6%) 78 (13. 0%) Total AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 121 598 (20. 2%) In. SITE 2019 Jerusalem,

RESULTS CONT’D Table 2: Error types and achievement level Invalid Mismatched Symbol Missing Symbol Low Achieving 11 (8. 7%) 33 (26%) 51 (40. 2%) 18 (14. 1%) 14 (11%) 127 (21. 2%) Average Achieving 19 (11. 1%) 45 (26. 3%) 48 (28. 1%) 14 (8. 2%) 45 (26. 3%) 171 (28. 6%) High Achieving 41 (13. 7%) 55 (18. 3%) 96 (32%) 46 (15. 3%) 62 (20. 7%) 300 (50. 2%) 71 133 195 78 121 598 Total Inappropriate Excessive Naming Symbol Total In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

RESULTS CONT’D Table 3: Concept-based errors and achievement level Decision Making Looping Methods Other Object and Classes Concepts Low Achieving 29 (22. 8%) 24 (18. 9%) 31 (24. 4%) 43 (33. 9%) 127 Average Achieving 59 (34. 5%) 17 (9. 9%) 55 (32. 2%) 40 (23. 4%) 171 High Achieving 86 (28. 7%) 21 (7%) 130 (43. 3%) 63 (21%) Total 174 62 216 146 Total 300 598 In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

RESULTS CONT’D Table 4: Relationships between errors Invalid Symbols Pearson Correlation Mismatched Symbol Missing Symbol Inappropriate Naming Excessive Symbol 1 Sig. (2 -tailed) Mismatch Symbol Pearson Correlation . 218 Sig. (2 -tailed) . 050 1 . 406** . 262* Sig. (2 -tailed) . 000 . 018 Inappropriate Naming Pearson Correlation . 195 . 050 . 287** Sig. (2 -tailed) . 081 . 656 . 010 Excessive Symbol Pearson Correlation . 117 . 206 . 043 . 052 Sig. (2 -tailed) . 298 . 065 . 704 . 642 Missing Symbol Pearson Correlation *. Correlation is significant at the 0. 05 level (2 -tailed). **. Correlation is significant at the 0. 01 level (2 -tailed). AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 1 1 1 In. SITE 2019 Jerusalem,

RESULTS CONT’D Table 5: Relationships between errors made by concepts Decision Making Pearson Correlation Looping Method and Classes Other Object Concepts 1 Sig. (2 -tailed) . 234* 1 Sig. (2 -tailed) . 035 Method and Classes Pearson Correlation . 077 -. 070 Sig. (2 -tailed) . 494 . 535 Other Object Concepts Pearson Correlation . 103 . 257* . 292** Sig. (2 -tailed) . 360 . 020 . 008 *. Correlation is significant at the 0. 05 level (2 -tailed). **. Correlation is significant at the 0. 01 level (2 -tailed). AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 1 1 In. SITE 2019 Jerusalem,

RESULTS CONT’D Interview Responses: • “I give the void return type to both the getter and setter methods instead of void for setter and either int. , string etc. For getter. ” • We felt convention does not matter so far the code can run. • the IDE we used for practicing were smarter, because it gave us hints on what went wrong and how it should be fixed but the editors we used in exams were not smart, they did not give us any hint on errors. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

RESULTS CONT’D Interview Responses: • Programming is like mathematics with precise formula and steps that must be memorized. • A student should be a man of one programming language. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Contribution • Method and Classes most error prone contrary to Adair and Jaeger (2011). • Other Object Concepts are difficult • Students exposure to other programming language contributed to errors in Method and classes. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Contribution Cont’d • Unwillingness to learn another programming language. • Looping has the least number of errors • Missing Symbols accounted for most errors and invalid symbols the least Table 1. (This is in agreement with Jadud (2006) and similar to Mow (2012)) In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Contribution Cont’d • students were of the opinion that the IDE used by them for practicing were smarter than those used in the exam, as they did not give any hints on errors • It is also relevant to observe that missing symbol errors cut across achievement levels. • The opinion held by some students that “convention may not matter as long as the code can run” may also be held across achievement levels. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Contribution Cont’d • low achievers Other Object concepts, • average achievers Decision Making and • High achievers Methods and Classes • Explanation: Problems of other objects concept with low achievers grew from Method and classes. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Contribution Cont’d • It further corroborates with the fact that Pearson Correlation Coefficient showed that errors in Methods and Classes are strongly related with Other Object concepts • Errors in Missing Symbols have been found to predict errors in each of Invalid Symbols, Inappropriate Naming and Mismatched Symbols In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Contribution Cont’d • Missing Symbols form the kernel of almost all the errors. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Limitation • Array concept was scheduled part of the content was not examined. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Implication for classroom • Students misconception should be corrected in first programming class. • Instruction to students should be based on achievement levels. • The first Java programming course should assist in categorizing students into low, average and high achieving levels. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Implication for classroom • Programming instruction in the later courses should target prevalent errors for each achievement group having regard also to the concepts that have mostly specific types of error. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Implication for classroom • it takes low achievers more time to overcome the beginner errors. Their average and high achieving counterparts overcome the typical beginner errors as the class progresses. • Java programming should be taught with unintelligent editor. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Conclusion • The study analyzed Errors and patterns in Java programming • It discovered missing symbol has the commonest error while Invalid symbols has the least. • method and class concept highest errors • Looping least error In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

Conclusion Cont’d • Error types were also found to be the same across ability levels. • expectedly low achieving students had more challenges writing bug free code in Other Object concepts. • Programming assignment instructions in Java should take into consideration the prevalent errors within the achievement cohorts as well as the concepts that are prone to a specific type of error. In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

References • • Adair, D. , & Jaeger, M. (2011). Difficulties in teaching and learning the Java programming language. Proceedings of the 17 th International Conference on Engineering Education, Northern Ireland, 21 -26. Bringula, R. , Manabat, G. M. , Tolentino, M. A. , & Torres, E. (2012). Predictors of errors of novice Java pro-grammers. World Journal of Education, 2(1), 3 -15. https: //doi. org/10. 5430/wje. v 2 n 1 p 3 Brown, N. C. C. , Kо lling, M. , Mc. Call, D. T. , & Utting, J. (2014). Blackbox: A large scale repository of novice programmers activities. Proceedings of the 45 th ACM Technical Symposium on Computer Science Education, Atlanta, Georgia, USA, 223 -228. https: //doi. org/10. 1145/2538862. 2538924 Denny, P. , Luxton-Reilly, A. , Tempero, E. , & Hendrickx, J. (2011). Understanding the syntax barrier for novices. Proceedings of the 16 th Annual Joint Conference on Innovation and Technology in Computer Science Education, 208 -212. https: //doi. org/10. 1145/1999747. 1999807 In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

References Cont’d • • Fizgerald, S. , Hanks, B. , Lister, R. , Mc. Cauley, R. , & Murphy, L. (2013). What are we thinking when we grade programs? Proceeding of the 44 th ACM Technical Symposium on Computer Science Education, Denver, Colorado, USA, 471 -476. https: //doi. org/10. 1145/2445196. 2445339 Jadud, M. (2006). An exploration of novice compilation behaviour in Blue. J. Unpublished Doctoral Dissertation, Uni-versity of Kent, UK. Johansen, M. J. (2015). Errors and misunderstandings among novice programmers: Assessing the student not the program. Unpublished M. Sc Thesis, University of Oslo, Norway. Kaczmarczyk, L. C. , Petrick, E. R. , East, J. P. , & Herman, G. L. (2010). Identifying students misconceptions of programming. Proceedings of the 41 st technical symposium on computer science education, March 10 -13, 2010, Milwaukee, Wisconsin, USA. https: //doi. org/10. 1145/1734263. 1734299 In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

References Cont’d • • • Mow, I. C. (2012). Analysis of student programming errors in Java programming courses. Journal of Emerging Trends in Computing and Information Sciences, 3(5), 739 -749. Retrieved from www. cisjournal. org Rodrigo, M. M. T. , Andallaza, T. C. S. , Castro, F. E. V. G. , Armenta, M. L. V. , Dy, T. T. , & Jadud, M. C. (2014). An analysis of Java programming behaviours, affect, perceptions and syntax errors among low-achieving, average and high-achieving novice programmers. Journal of Educational Computing Research 49(3), 293 -325. https: //doi. org/10. 2190/EC. 49. 3. b Shah, P. , Berges, M. , & Hubwieser, P. (2017). Qualitative content analysis of programming errors. Proceedings of Fifth International Conference on Information and Education Technology, Tokyo, Japan, 161 -166. https: //doi. org/10. 1145/3029387. 3029399 In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

QUESTIONS? In. SITE 2019 AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,

APPENDIX It’s a good idea to have material ready for expected questions I SITE 2019 n AN INFORMING SCIENCE INSTITUTE CONFERENCE June 30 - July 5, 2019 Jerusalem,
- Slides: 36