O'Reilly logo

Making Software by Greg Wilson, Andy Oram

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Pair Programming in an Industrial Setting

This section outlines some of the pair programming practices that have been demonstrated in industrial organizations and the results cited for these practices.

Industry Practices in Pair Programming

Industrial teams have reported their experiences with sustained use of pair programming. Developers often require several days (approximately 8–12 hours) to become familiar and comfortable with the dynamics and practices of pair programming when transitioning from solo programming [Vanhanen and Korpi 2007]. In the University of Utah study referenced in the previous section, the students were acclimated to pair programming after the first program, which took approximately 8–10 hours to complete. Often programmers do not work in pairs for the full work day; a suitable length of time for pairs to work together is between 1.5 and 4 hours [Vanhanen and Lassenius 2007]. Extended pair programming sessions can be difficult for developers because pairing can be mentally exhausting [Vanhanen and Lassenius 2007], [Williams and Kessler 2003], due to the rapid pace a pair can work at and the constant focus on the task at hand.

In industry teams, pair rotation is a common practice to keep the pairs dynamic, rather than having assigned pairing partners for days or weeks at a time. Many teams rotate pairs several times per day [Belshee 2005] or once per day [Frever and Ingalls 2006]. Frequent pair rotation is beneficial for knowledge transfer among the team [Vanhanen ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required