Abstract
We are developing a course in concurrency for high school students. The course is being developed in phases of refinement on the basis of feedback received from teachers and students. We have found persistent difficulties that students have in understanding fundamental concepts, which has led us to investigate their preconceptions of concurrency. This paper describes the results of this investigation. The work is anchored in constructivism, which stresses the importance of prior knowledge upon which new knowledge is built. The students were asked to solve concurrency problems, both prior to the course and after learning just the basics of the subject. Analysis of solutions reveals that students: (a) find that solving a problem on the order of actions is more natural than the critical section problem, (b) are divided in their preference for centralized and decentralized solutions, (c) employ inappropriate heuristics, (d) invent computational models as they work, (e) attribute parallelism where it does not exist, (f) attribute intelligence to systems. Based on these findings, we were able to modify the course to address these problems of prior knowledge.
Original language | American English |
---|---|
Pages (from-to) | 221-245 |
Number of pages | 25 |
Journal | Computer Science Education |
Volume | 11 |
Issue number | 3 |
DOIs | |
State | Published - 2001 |
Externally published | Yes |