ABSTRACT
Research on mental model representations developed by programmers during parallel program comprehension is important for informing and advancing teaching methods including model based learning and visualizations. However, there is a significant lack of empirical research on mental models formed during the comprehension of parallel programs. We present an empirical method for externalizing and mapping mental models of learners and its novel application to a programming context. Participants externalize their mental models by drawing diagrams to depict the execution of a parallel program during a code tracing task. The code tracing task is performed prior to and during instruction on parallel programming in C using OpenMP. The progression of the mental models is analyzed using a rubric to determine how they developed and changed as participants learned. This poster presents our work in progress and preliminary results.
- Eric Aubanel. 2020. Parallel Program Comprehension. In 31st Annual Workshop of the Psychology of Programming Interest Group (PPIG 2020).Google Scholar
- Leah Bidlake, Eric Aubanel, and Daniel Voyer. 2023. Progression of Programmers' Mental Models Learning Parallel Programming. https://osf.io/u29hr/?view_only=6b172c0ba55d4737baaa28e3db445910Google Scholar
- Jean-Marie Burkhardt, Francoise Détienne, and Susan Wiedenbeck. 2002. Object-oriented program comprehension: Effect of expertise, task and phase. Empirical Software Engineering, Vol. 7, 22 (2002), 115--156.Google ScholarDigital Library
- Norbert M. Seel. 2001. Epistemology, situated cognition, and mental models: ?Like a bridge over troubled water". Instructional Science, Vol. 29, 4 (Jul 2001), 403--427. https://doi.org/10.1023/A:1011952010705Google ScholarCross Ref
- Norbert M. Seel. 2017. Model-based learning: a synthesis of theory and research. Educational Technology Research and Development, Vol. 65, 4 (Aug 2017), 931--966. https://doi.org/10.1007/s11423-016--9507--9Google ScholarCross Ref
Index Terms
- Investigating the Progression of Programmers' Mental Models
Recommendations
Investigating the viability of mental models held by novice programmers
This paper describes an investigation into the viability of mental models used by novice programmers at the end of a first year Java programming course. The qualitative findings identify the range of mental models of value and reference assignment held ...
Investigating the viability of mental models held by novice programmers
SIGCSE '07: Proceedings of the 38th SIGCSE technical symposium on Computer science educationThis paper describes an investigation into the viability of mental models used by novice programmers at the end of a first year Java programming course. The qualitative findings identify the range of mental models of value and reference assignment held ...
Teaching distributed memory programming from mental models
AbstractDistributed memory programming, typically through the MPI library, is the de facto standard for programming large scale parallelism, with up to millions of individual processes. Its dominant paradigm of Single Program Multiple Data (...
Highlights- Distributed memory programming requires a different mental conception of parallel than other parallelism types.
Comments