Award Date
May 2016
Degree Type
Thesis
Degree Name
Master of Science in Computer Science
Department
Computer Science
First Committee Member
Andreas Stefik
Second Committee Member
Ajoy Datta
Third Committee Member
Jan Pedersen
Fourth Committee Member
Matthew Bernacki
Number of Pages
79
Abstract
Various concurrent programming paradigms have been proposed by language designers in an effort to simplify some of the unique constructs required to handle concurrent programming tasks. Despite these different approaches, however, there has been no general clear winner accepted by software developers and different paradigms are regarded to have strengths and weaknesses in certain areas. This thesis was motivated by the desire to investigate the question of whether or not there are measurable differences between two widely differing paradigms for concurrent programming: Threads vs. Communicating Sequential Processes. The mechanism for observing and comparing these paradigms was a randomized controlled trial of two groups of participants who completed identical tasks in one of the two paradigms. The study was run in Fall 2015 with 88 student participants primarily from the Department of Computer Science at UNLV. I examined programming accuracy and comprehension rates among participants in three different common shared memory problem areas introduced by concurrent programming. The results were measured using a token accuracy map algorithm which matches the token strings of a participants answer compared to a correct solution. The overall results show that for two relatively straightforward tasks using shared processes and memory, both paradigms were reasonably well understood, with a possible small learning advantage in favor of CSP in two of the tasks. In a more complex example combining task co-ordination and memory sharing, however, the participants in the CSP group struggled to grasp the guarded blocking and communication channels needed in the CSP model and performed
measurably worse.
Keywords
Concurrency; Empirical; Languages; Parallel; Programming
Disciplines
Computer Sciences
File Format
Degree Grantor
University of Nevada, Las Vegas
Language
English
Repository Citation
Daleiden, Patrick M., "Empirical Study of Concurrent Programming Paradigms" (2016). UNLV Theses, Dissertations, Professional Papers, and Capstones. 2660.
http://dx.doi.org/10.34917/9112055
Rights
IN COPYRIGHT. For more information about this rights statement, please visit http://rightsstatements.org/vocab/InC/1.0/