Analysis of a Randomized Controlled Trial of Student Performance in Parallel Programming using a New Measurement Technique

Document Type

Article

Publication Date

9-1-2020

Publication Title

ACM Transactions on Computing Education

Volume

20

Issue

3

First page number:

1

Last page number:

28

Abstract

There are many paradigms available to address the unique and complex problems introduced with parallel programming. These complexities have implications for computer science education as ubiquitous multi-core computers drive the need for programmers to understand parallelism. One major obstacle to student learning of parallel programming is that there is very little human factors evidence comparing the different techniques to one another, so there is no clear direction on which techniques should be taught and how. We performed a randomized controlled trial using 88 university-level computer science student participants performing three identical tasks to examine the question of whether or not there are measurable differences in programming performance between two paradigms for concurrent programming: threads compared to process-oriented programming based on Communicating Sequential Processes. We measured both time on task and programming accuracy using an automated token accuracy map (TAM) technique. Our results showed trade-offs between the paradigms using both metrics and the TAMs provided further insight about specific areas of difficulty in comprehension.

Keywords

Parallel programming; Threads; Communicating sequential processes; Hu- man factors evidence; Evaluation

Disciplines

Higher Education | Programming Languages and Compilers

Language

English

UNLV article access

Find in your library

Share

COinS