A task-based program comprehension framework for novices / Amal Abdulghany Qassem Al-Shargabi - Qassem Al-Shargabi, Amal Abdulghany (Institute of Graduate Studies, UiTM, 2017)
Novices face much difficulty in comprehending even small computer programs. A framework is needed to help novices’ attain sufficient program comprehension skills. To develop such framework, this research re-examines the three main factors that influence the novices’ program comprehension; the programmer, the program code, and the task. Most studies so far focused on the first two especially programmer, with tasks traditionally applied only as a measure for program comprehension. Very few studies have inverted this supplementary role of task and instead examined the task factor itself. There is a research gap on the effects of tasks on novices’ program comprehension. Moreover, current program comprehension mental models (PCMMs) have been mostly constructed for expert programmers, which do not match the novices’ mental model. To solve these two problems, the research proposes a task-based program comprehension framework for novices. Employing empirical software engineering research design approach, 1) fourteen effective programming tasks for novices have been identified, 2) a novices’ PCMM has been constructed, and 3) the effects of the tasks on the PCMM have been investigated. Consequently, the tasks were classified according to the cognitive domain of Revised Bloom’s Taxonomy. The tasks in each cognitive category were then ranked based on their effectiveness on novices’ program comprehension using a survey of instructors. Subsequently, novices’ PCMM with four core abstraction levels, i.e. Statement, Block, Module, and Program, and an extended level, i.e. Domain, was developed, and validated by experts…