Subscribe
Issue No.01 - January/February (2010 vol.27)
pp: 50-55
Stuart Wray , Royal School of Signals Bournemouth University, Blandford
ABSTRACT
Pair programming isn't always successful, and recent studies cast doubt on the "driver-navigator" metaphor. This article presents four mechanisms that can improve pair programming performance. Readers can contribute their own experiences, confirming or contradicting these explanations, on the associated Web site.
INDEX TERMS
software psychology, software process, programming teams, agile development
CITATION
Stuart Wray, "How Pair Programming Really Works", IEEE Software, vol.27, no. 1, pp. 50-55, January/February 2010, doi:10.1109/MS.2009.199
REFERENCES
1. K. Beck, Extreme Programming Explained: Embrace Change, 1st ed., Addison-Wesley, 2000.
2. L. Williams and R. Kessler, Pair Programming Illuminated, Addison-Wesley, 2003.
3. J. Chong and T. Hurlbutt, "The Social Dynamics of Pair Programming," Proc. 29th Int'l Conf. Software Eng. (ICSE 07), IEEE CS Press, 2007, pp. 354–363.
4. S. Bryant, P. Romero, and B. du Boulay, "Pair Programming and the Mysterious Role of the Navigator," Int'l J. Human-Computer Studies, vol. 66, no. 7, 2008, pp. 519–529.
5. S. Salinger, L. Plonka, and L. Prechelt, "A Coding Scheme Development Methodology Using Grounded Theory for Qualitative Analysis of Pair Programming," Proc. 19th Ann. Workshop Psychology of Programming Interest Group (PPIG 07), Psychology of Programming Interest Group, 2007, pp. 144–157; www.ppig.org/papers/19th-Salinger.pdf.
6. M. Stephens and D. Rosenberg, Extreme Programming Refactored: The Case against XP, Apress, 2003.
7. T. Dybå et al., "Are Two Heads Better than One? On the Effectiveness of Pair Programming," IEEE Software, vol. 24, no. 6, 2007, pp. 12–15.
8. B. Kernighan and R. Pike, The Practice of Programming, Addison-Wesley, 1999.
9. J. Sturdy, "Sidebrain: A Sidekick for the Programmer's Brain," Proc. 17th Ann. Workshop Psychology of Programming Interest Group (PPIG 07), Psychology of Programming Interest Group, 2005, pp. 215–226; www.ppig.org/papers/17th-sturdy.pdf.
10. M. Chi et al., "Eliciting Self-Explanations Improves Understanding" Cognitive Science, vol. 18, no. 3, 1994, pp. 439–477.
11. R. Roscoe and M. Chi, "The Influence of the Tutee in Learning by Peer Tutoring," Presented at 26th Ann. Conf. Cognitive Science Soc., 2004; www.cogsci.northwestern.edu/cogsci2004/papers/paper278.pdf.
12. L. Hermer-Vazquez, E.S. Spelke, and A.S. Katsnelson, "Sources of Flexibility in Human Cognition: Dual-Task Studies of Space and Language," Cognitive Psychology, vol. 39, no. 1, 1999, pp. 3–36.
13. A. Newton and J. de Villiers, "Thinking While Talking: Adults Fail False-Belief Reasoning," Psychological Science, vol. 18, no. 7, 2007, pp. 574–579.
14. P. Carruthers, "The Cognitive Functions of Language," Behavioral and Brain Sciences, vol. 25, no. 6, 2002, pp. 657–726.
15. D. Simons and D. Levin, "Failure to Detect Changes to People During Real-World Interaction," Psychonomic Bull. and Rev., vol. 5, no. 4, 1998, pp. 644–649.
16. N. Charness et al., The Cambridge Handbook of Expertise and Expert Performance, Cambridge Univ. Press, 2006.
17. D.J. Simons and C.F. Chabris, "Gorillas in Our Midst: Sustained Inattentional Blindness for Dynamic Events," Perception, vol. 28, no. 9, 1999, pp. 1059–1074.
18. A. Belshee, "Promiscuous Pairing and Beginner's Mind: Embrace Inexperience," Proc. Agile Development Conf. (AGILE 05), IEEE CS Press, 2005, pp. 125–131.
19. E. Arishholm et al., "Evaluating Pair Programming with Respect to System Complexity and Programmer Expertise," IEEE Trans. Software Eng., vol. 33, no. 2, 2007, pp. 65–86.
20. L. Williams and R. Kessler, "The Effects of 'Pair-Pressure' and 'Pair-Learning' on Software Engineering Education," Proc. 13th Ann. Conf. Software Eng. Education and Training (CSEE&T 00), IEEE CS Press, 2000, pp. 59–65.
21. H. Gleitman, A.J. Fridlund, and D. Reisberg, Psychology, 6th ed., W.W. Norton & Co., 2004.
22. E. Dijkstra, "On the Cruelty of Really Reaching Computing Science," 1988; www.cs.utexas.edu/users/EWD/ewd10xx/EWD1036.PDF.
23. R. Glass, Facts and Fallacies of Software Engineering, Addison-Wesley, 2003.
24. M. Gladwell, "Game Theory," The New Yorker, 29 May 2006; www.newyorker.com/archive/2006/05/29/060529crbo_books1.
25. P. Graham, "Great Hackers," 2004; www.paulgraham.com/gh.html.
26. J. Kruger and D. Dunning, "Unskilled and Unaware of It: How Difficulties in Recognizing One's Own Incompetence Lead to Inflated Self-Assessments," J. Personality and Social Psychology, vol. 77, no. 6, 1999, pp. 1121–1134.