Pair programming, two programmers collaborating on design, coding and testing, has been a controversial focus of interest as Agile Software Development continues to grow in popularity both among academics and practitioners. As a result of the many investigations into the effectiveness of pair programming in the last decade, many have come to realize that there are many hard-to-control factors in pair programming in particular and in empirical software engineering in general. Because of these factors, the results of many pair programming experiments are not easy to replicate and the relative productivity of pair and solo programming are still not fully understood. So far, it has been concluded by previous studies that pair programming productivity can vary, but few have shown how and why this is the case. In this chapter, we discuss a number of challenging factors in the adoption of pair programming and present an approach to deal with them. We discuss how different factors may affect our experimental outcomes and improve experiment design to reveal how and why pair programming can be made productive, at least, in controlled situations.
|Title of host publication||Agile Software Development|
|Subtitle of host publication||Current Research and Future Directions|
|Publisher||Springer Berlin Heidelberg|
|Number of pages||21|
|Publication status||Published - 1 Dec 2010|
ASJC Scopus subject areas
- Computer Science(all)