Examining the mental representations formed by programmers during parallel program comprehension

dc.contributor.advisorAubanel, Eric
dc.contributor.advisorVoyer, Daniel
dc.contributor.authorBidlake, Leah
dc.date.accessioned2024-07-18T17:21:48Z
dc.date.available2024-07-18T17:21:48Z
dc.date.issued2024-06
dc.description.abstractModifying, debugging, optimizing, and extending existing code are common tasks programmers perform that require them to understand code by forming mental representations. Understanding these mental representations is important for informing instructional practices and the development of visualizations and tools that are effective in assisting programmers with these tasks. This work represents the first published empirical research on mental representations formed during program comprehension using parallel code. The systematic literature review conducted in Article I found that no empirical research on mental representations formed during program comprehension had previously been conducted using parallel code. Prior work on mental representations using sequential code found that programmers form a program model and a situation model of varying strengths depending on the task, expertise, and programming language. Given the considerable differences between sequential and parallel programming, it was not possible to determine if the results of the research using sequential code would resemble the mental representations formed during parallel program comprehension. An execution model had been proposed but had not previously been empirically studied. Due to the lack of prior work on program comprehension using parallel code, a pilot study was conducted in Article II involving expert parallel programmers. The pilot study determined that the level of difficulty of the stimuli and parameters of the study were appropriate for the target population. The pilot study was followed by the main study in Article III. The results of this study provided the first empirical evidence that programmers form an execution model during the comprehension of parallel code. Article IV studied the progression of mental representations of experienced programmers while they were learning parallel programming. This study also introduced a novel method for externalizing and analyzing mental representations formed during program comprehension. Article IV found that as programmers learn parallel programming they form a stronger execution model while their situation model becomes weaker. Article III and IV also identified themes related to the components of code programmers use to determine the presence of data races in parallel code. This work forms a basis for future research on program comprehension in the parallel programming paradigm.
dc.description.copyright© Leah Bidlake, 2024
dc.format.extentxi, 178
dc.format.mediumelectronic
dc.identifier.urihttps://unbscholar.lib.unb.ca/handle/1882/38053
dc.language.isoen
dc.publisherUniversity of New Brunswick
dc.rightshttp://purl.org/coar/access_right/c_abf2
dc.subject.disciplineComputer Science
dc.titleExamining the mental representations formed by programmers during parallel program comprehension
dc.typedoctoral thesis
oaire.license.conditionother
thesis.degree.disciplineComputer Science
thesis.degree.grantorUniversity of New Brunswick
thesis.degree.leveldoctorate
thesis.degree.namePh.D.

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Leah Bidlake - Dissertation.pdf
Size:
3.19 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.13 KB
Format:
Item-specific license agreed upon to submission
Description: