Measuring Cognition Load Using Eye-Tracking Parameters Based on Algorithm Description Tools.
1CogInfoCom Based LearnAbility Research Team, Department of Software Development and Application, Institute of Computer Engineering, University of Dunaujvaros, 2400 Dunaujvaros, Hungary.
Sensors (Basel, Switzerland)
|February 15, 2022
Summary
This study used eye-tracking to compare flowchart and Nassi-Shneiderman diagrams for programming. Nassi-Shneiderman diagrams proved more efficient, reducing cognitive load for programmers.
Area of Science:
- Computer Science
- Cognitive Science
- Human-Computer Interaction
Background:
- Programming is a complex cognitive task, particularly for novices.
- Effective algorithm description tools are crucial for efficient software development.
- Understanding cognitive load during programming can optimize development processes.
Purpose of the Study:
- To compare the efficiency of flowchart and Nassi-Shneiderman diagrams as algorithm description tools.
- To evaluate cognitive load during programming using eye movement parameters.
- To determine which diagrammatic tool leads to reduced cognitive effort.
Main Methods:
- Development and application of an eye-tracking system to monitor programmers.
- Recording and analyzing eye movement parameters such as fixation duration, number of fixations, and pupil diameter.
- Comparative analysis of these parameters when interpreting flowcharts versus Nassi-Shneiderman diagrams.
Main Results:
- Interpreting flowcharts resulted in significantly longer fixation durations.
- A higher number of fixations was observed when using flowcharts.
- Larger pupil diameters indicated increased cognitive load with flowchart interpretation compared to Nassi-Shneiderman diagrams.
Conclusions:
- Nassi-Shneiderman diagrams are a more efficient tool for algorithm description, leading to lower cognitive load.
- Choosing appropriate programming tools significantly impacts application development efficiency and cost.
- Eye-tracking provides valuable insights into the cognitive processes involved in programming.


