Learning concurrency: evolution of students' understanding of synchronization

  • Authors:
  • Yifat Ben-David Kolikant

  • Affiliations:
  • The Weizmann Institute of Science, POB 26, 76100 Rehovot, Israel

  • Venue:
  • International Journal of Human-Computer Studies
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes an investigation of high-school students' understanding of synchronization as they studied a course in concurrent and distributed computation. The research followed the students for 2 months, and consisted of both quantitative and qualitative analysis of the students' performance. We found that most of the students had a rich understanding of various synchronization problems. However, many of them developed a pattern-based technique that successfully solved synchronization problems, thus elegantly exempting them from dealing with the dynamics of the synchronization mechanisms; consequently, concepts regarding this theme became inert. Moreover, we were able to uncover reasonable, yet faulty connections that many students had made between the new knowledge and their existing knowledge; these connections were the source of their difficulties. From the findings, we were able to make valuable recommendations for the next version of the course: (a) encouraging alternative connections to existing knowledge by redesigning the instruction, such as representing semaphores in a way that resembles a complex data structure rather than as variables of type integer, and (b) integrating knowledge found to be productive by the students into the instruction to anchor more advanced knowledge, for example utilizing the pattern-based technique as a tool for correctness verification.