Back to Search Start Over

Techniques and tools for visually introducing freshmen to object-based thread abstractions

Authors :
Andrew Wortas
Justin Do
Prasun Dewan
Samuel D. George
Source :
Journal of Parallel and Distributed Computing. 157:179-200
Publication Year :
2021
Publisher :
Elsevier BV, 2021.

Abstract

An approach to adding concurrency to an existing undergraduate course should integrate driving problems used in analogies, worked examples, and assignments; amplify the subject/topics of the existing course; and ensure that the addition does not have a negative impact on (a) conceptual focus, and (b) student learning, struggle, and engagement. When concurrency is added to a course covering object-based programming, five related design principles for meeting these, sometimes conflicting, requirements are: (a) analogies, worked examples, and assignments are all implementations of simulations of moving physical objects, (b) the user-interface components of the simulations are created automatically or implemented manually using the MVC design pattern, (c) assignment implementations are layered to follow the logical dependence among concepts, (d) the concurrency aspects of the functional components of the simulations are implemented using reusable loop and design patterns, and (e) students can experiment with concurrency extensions to implementations of worked examples and assignments. We followed these principles in multiple course offerings that added concurrency to two different courses on object-based programming. Our data-based evaluation of these offerings, using new inferencing algorithms, analyzed the number of posts and contributions to class discussion forums; the number of entries in class participation diaries; the number of times an automated test is run before it passes; and the percentage of attempts to implement different aspects of concurrency that yield no success. The results show that adding thread execution and creation, synchronization, and coordination has little or no significant effect on measures of engagement, learning, and struggle.

Details

ISSN :
07437315
Volume :
157
Database :
OpenAIRE
Journal :
Journal of Parallel and Distributed Computing
Accession number :
edsair.doi...........f8269db21041fd7c168dc30be63915e7
Full Text :
https://doi.org/10.1016/j.jpdc.2021.05.013