What use is a backseat driver? A qualitative investigation of pair programming


Numerous studies have pointed to the considerable potential of pair programming, for example, for improving software quality. Using the technique, two programmers work together on a single computer, and take turns playing the role of driver, actively typing and controlling the mouse, and the role of navigator, attentively monitoring the driver's work and offering suggestions. However, being a complex human activity, there are still many questions about pair programming and its moderating factors. In this paper, we report on a qualitative study of seven pairs (14 senior undergraduate and graduate students) engaged in a debugging task. The study addressed open questions regarding partner teaching within pair programming, navigator contributions to tasks, and the impact of partner interruptions. Key findings included (1) that all pairs exhibited episodes of teaching, often covering practical development knowledge, such as how to use programming-tool features, (2) that navigators contributed numerous ideas to the task and the pairs acted upon the vast majority of those ideas without discussion, and (3) that pairs exhibited almost no indications that partner interruptions disrupted their flow. © 2013 IEEE.

Publication Title

Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing, VL/HCC