Advertisement

A Diagnostic Tool for Assessing Students’ Perceptions and Misconceptions Regards the Current Object “this

  • Ragonis Noa
  • Shmallo Ronit
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11169)

Abstract

Understanding of the object concept in Object Oriented Programming (OOP) is obviously the center of the paradigm. Many educators and researchers explored students’ difficulties and developed teaching materials targeted at this central concept. The paper presents a diagnostic tool we developed that aims to reveal students’ perception and understanding about the current object, referring to it by the this annotation. Proper conceptualization of this indicates an understanding of objects in general, and involves aspects of memory allocation and programming approaches. The tool contains five questions, each devoted to covering different aspects in various frameworks, such as: using this in constructors, using this as a visible parameter, using this in inheritance, or making necessary changes in transition from a non-static context that uses this to a static context. The questionnaire combines closed questions with a request to explain the answers and open questions. In the paper we present the purpose of each question, and address what it comes to examine. The diagnostic tool is based on known educational approaches: Bloom’s taxonomy, assessment for, as, and of learning and learning from errors. The tool can be used by educators at high school or academic levels as a teaching tool, as a base for discussions, or as an evaluation tool. A short report on the use of the tool with different populations, including high school teachers, is presented. The paper uses Java as the programming language, but it easily can be translated to other OOP languages.

Keywords

Object oriented programming The current object The this annotation 

References

  1. 1.
    Anderson, L., Krathwohl, D.A.: Taxonomy for Learning, Teaching and Assessing: A Revision of Bloom’s Taxonomy of Educational Objectives. Longman, New York (2001)Google Scholar
  2. 2.
    Bloom, B.S.: Taxonomy of Educational Objectives Handbook I - The Cognitive Domain. David McKay Co., Inc., New York (1956)Google Scholar
  3. 3.
    Borasi, R.: Reconceiving Mathematics Instruction: A Focus on Errors. Ablex Publishing, New York (1996)Google Scholar
  4. 4.
    Borasi, R.: Using errors as springboards for the learning of mathematics: an introduction. Focus Learn. Probl. Math. 7(3), 1–14 (1985)Google Scholar
  5. 5.
    Brown, S: Assessment for learning. Learn. Teach. High. Educ. 1, 81–89 (2005). ISSN 1742-240XGoogle Scholar
  6. 6.
    Chen, C., Cheng, S., Lin, J.M.: A study of misconceptions and missing conceptions of Novice Java programmers. In: Proceedings of the 2012 International Conference on Frontiers in Education, pp. 307–313. Computer Science & Computer Engineering (2012)Google Scholar
  7. 7.
    Confrey, J.: What constructivism implies for teaching. J. Res. Math. Educ. 4, 107–122 (1990)Google Scholar
  8. 8.
    Earl, L.M.: Assessment as Learning: Using Classroom Assessment to Maximize Student Learning, 2nd edn. Corwin, Thousand Oaks (2012)Google Scholar
  9. 9.
    Eckerdal, A., Thunי, M.: Novice Java programmers’ conceptions of “object” and “class”, and variation theory. SIGCSE Bull. 37(3), 89–93 (2005)CrossRefGoogle Scholar
  10. 10.
    Gardner, L., Sheridan, D., White, D.: A web-based learning and assessment system to support flexible education. J. Comput. Assist. Learn. 18, 125–136 (2002)CrossRefGoogle Scholar
  11. 11.
    Garner, S., Haden, P., Robins, A.: My program is correct but it doesn’t run: a preliminary investigation of novice programmers’ problems. In: Proceeding of ACE 2005 (Australasian Computing Education Conference), pp. 173–180 (2005)Google Scholar
  12. 12.
    Ginat, D., Shmallo, R.: Constructive use of errors in teaching CS1. In: SIGCSE 2013-Proceedings of 44th ACM Technical Symposium on Computer Science Education, pp. 353–358. ACM New York (2013)Google Scholar
  13. 13.
    Holland, S., Griffiths, R., Woodman, M.: Avoiding object misconceptions. SIGCSE Bull. 29(1), 131–134 (1997)CrossRefGoogle Scholar
  14. 14.
    Kaczmarczyk, L.C., Petrick, E.R., East, J.P., Herman, G.L.: Identifying student misconceptions of programming. In: Proceedings of the 41st ACM Technical Symposium on Computer Science Education (SIGCSE 2010), New York, pp. 107–111 (2010)Google Scholar
  15. 15.
    Liberman, N., Beeri, C., and Ben-David Kolikant, Y.: Difficulties in learning inheritance and polymorphism. ACM Trans. Comput. Educ. 11(1), 23 (2011). Article 4CrossRefGoogle Scholar
  16. 16.
    Melis, E., Sander, A., Tsovaltzi, D.: How to support meta-cognitive skills for finding and correcting errors. In: Proceedings of the AAAI Fall 2010 Symposium, pp. 64–68 (2010)Google Scholar
  17. 17.
    Newman, F.M.: Higher order thinking in teaching social studies: A rationale for the assessment of classroom thoughtfulness. J. Curric. Stud. 22, 41–56 (1990)CrossRefGoogle Scholar
  18. 18.
    Ohlsson, S.: Learning from performance errors. Psychol. Rev. 103, 241–262 (1996)CrossRefGoogle Scholar
  19. 19.
    Paul, R., Elder, L.: The Thinker’s Guide to the Nature and Functions of Critical and Creative Thinking. Foundation for Critical Thinking Press (2008). http://www.criticalthinking.org/files/CCThink_6.12.08.pdf
  20. 20.
    Pinkerton, K.D.: Learning from errors. Phys. Teach. 43(8), 510–513 (2005)CrossRefGoogle Scholar
  21. 21.
    Ragonis, N., Ben-Ari, M.: A long-term investigation of the comprehension of OOP concepts by novices. Comput. Sci. Educ. 15(3), 203–221 (2005)CrossRefGoogle Scholar
  22. 22.
    Ragonis, N., Ben-Ari, M.: On understanding the statics and dynamics of object-oriented programs. SIGCSE Bull. 37(1), 226–230 (2005)CrossRefGoogle Scholar
  23. 23.
    Ragonis, N., Shmallo, R.: On the (Mis) Understanding of the “this” reference. In: Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education (SIGCSE 2017), pp. 489–494. ACM, New York (2017)Google Scholar
  24. 24.
    Resnick, L.: Education and Leaning to Think. National Academy Press, Washington D.C (1987)Google Scholar
  25. 25.
    Sajaniemi, J., Kuittinen, M., Tikansalo, T.: A study of the development of students’ visualizations of program state during an elementary object-oriented programming course. In: Proceedings of the 3rd International Workshop on Computing Education Research (ICER 2007), pp. 1–16. ACM, New York (2007)Google Scholar
  26. 26.
    Sanders, K., Boustendt, J., Eckerdal, A., McCartney, R., Mostrצm, J. E., Thomas, L., Zander, C.: Student understanding of Object-Oriented programming as expressed in concept maps. In: Proceedings of SIGCSE 2008, pp. 332–336 (2008)CrossRefGoogle Scholar
  27. 27.
    Sanders, K., Thomas, L.: Checklists for grading object-oriented CS1 programs: concepts and misconceptions. SIGCSE Bull. 39(3), 166–170 (2007)CrossRefGoogle Scholar
  28. 28.
    Shmallo, R., Ragonis, N., Ginat, D.: Fuzzy OOP: expanded and reduced term interpretations. In: Proceedings of ITiCSE 2012, pp. 309–314. ACM Press, New York (2012)Google Scholar
  29. 29.
    Sorva, J.: The same but different – students’ understandings of primitive and object variables. In: Proceedings of the 8th International Conference on Computing Education Research (Koli Calling 2008), New York, pp. 5–15 (2008)Google Scholar
  30. 30.
    Sorva, J.: Students’ understandings of storing objects. In: Lister, R., Simon (eds.) Proceedings of the Seventh Baltic Sea Conference on Computing Education Research (Koli Calling 2007), Koli National Park, Finland, CRPIT, vol. 88, pp. 127–135. ACS (2007)Google Scholar
  31. 31.
    Teif, M., Hazzan, O.: Partonomy and taxonomy in object-oriented thinking: Junior high school students’ perceptions of object-oriented basic concepts. In Working Group Reports on ITiCSE on Innovation and Technology in Computer Science Education (ITiCSE-WGR 2006), pp. 55–60. ACM, New York (2006)Google Scholar
  32. 32.
    Xinogalos, S: Object-oriented design and programming: an investigation of novices’ conceptions on objects and classes. ACM Trans. Comput. Educ. 15(3) (2015). Article 13CrossRefGoogle Scholar
  33. 33.
    Yerushalmi, E., Polingher, C.: Guiding students to learn from mistakes. Phys. Educ. 41, 532–538 (2006)CrossRefGoogle Scholar
  34. 34.
    Zohar, A.: The nature and development of teachers’ meta-strategic knowledge in the context of teaching higher order thinking. J. Learn. Sci. 15, 331–377 (2006)CrossRefGoogle Scholar
  35. 35.
    Zohar, A., Ben David, A.: Explicit teaching of meta-strategic knowledge in authentic classroom situations. Metacognition Learn. 3(1), 59–82 (2008)CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  1. 1.Beit Berl CollegeKfar SabaIsrael
  2. 2.Technion Israel Institute of TechnologyHaifaIsrael
  3. 3.Shamoon College of EngineeringAshdodIsrael

Personalised recommendations