Abstract
Pair programming is a practice in which two programmers work together at one computer, collaborating on the same design, algorithm, code or test. Previous studies have shown that pair programmers produce higher quality code in essentially the same amount of time as solo programmers. Additional benefits include increased job satisfaction, improved team communication, and efficient tacit knowledge sharing. However, it may not always be possible for all team members to be collocated due to the rise in teleworking and geographically distributed teams. This paper analyzes the results of two distributed pair programming case studies done at UNC Chapel Hill and at NC State University. Participants used readily available off-the-shelf applications for collaborative software development. The results indicate that software development collaboratively “over the wire” is feasible, effective, and pleasant for the participants; distributed development is better done as synchronous pairs than as individuals who integrate; and distributed pairs maintain many of the advantages of collocated pairs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Baheti, P., Gehringer, E., Stotts, D.: Exploring the Efficacy of Distributed Pair Programming. In: Proceedings Extreme Programming/Agile Universe, Chicago, IL (2002)
Baheti, P., Williams, L., Gehringer, E., Stotts, D.: Exploring Pair Programming in Distributed Object-Oriented Team Projects. In: Proceedings OOPSLA Educator’s Syposium, Seattle, WA (2002)
Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Reading (2000)
Beck, K.: Test Driven Development – by Example. Addison Wesley, Boston (2003)
Cockburn, A., Williams, L.: The Costs and Benefits of Pair Programming. In: Succi, G., Marchesi, M. (eds.) Extreme Programming Examined, pp. 223–248. Addison-Wesley, Boston (2001)
Dutoit, A.H., Bruegge, B.: Communication Metrics for Software Development. In: IEEE Transactions on Software Engineering, pp. 615–628 (1998)
Foley, S.P.: The Boundless Team: Virtual Teaming. Seminar in Industrial and Engineering Systems, Master of Science in Technology (MST) Graduate Program, Northern Kentucky University MST 660, July 24 (2000)
George, B., Mansour, Y.M.: A Multidisciplinary Virtual Team. In: Proceedings Systemics, Cybernetics and Informatics, SCI 2002 (2002)
George, B., Williams, L.: An Initial Investigation of Test-Driven Development in Industry. In: Proceedings ACM Symposium on Applied Computing, Melbourne, FL (2003)
Gould, D.: Leading Virtual Teams, Leader Values (Electronic) July 9 (2000), http://www.leader-values.com/Guests/Gould.htm
Humphrey, W.S.: A Discipline for Software Engineering. Addison Wesley Longman, Inc, Reading (1995)
McMahon, P.E.: Distributed Development: Insights, Challenges, and Solutions. CrossTalk (2001), http://www.stsc.hill.af.mil/CrossTalk/2001/nov/mcmahon.asp
McMahon, P.E.: Virtual Project Management: Software Solutions for Today and the Future. St. Lucie Press, Boca Raton (2001)
Nosek, J.T.: The Case for Collaborative Programming. Communications of the ACM, 105–108 (March 1998)
Olson, G.M., Olson, J.S.: Distance Matters. In: Proceedings Human Computer Interaction (2000)
Stotts, D., Smith, J., Williams, L.A.: A Video-Enhanced Environment for Distributed Extreme Programming. Department of Computer Science. Univ. of North Carolina at Chapel Hill, Chapel Hill, NC TR–02–009, March 1 (2002)
Traub, J.: This Campus is Being Simulated. The New York Times Magazine, 88–93 (2000)
Williams, L., Kessler, R.: Pair Programming Illuminated. Addison Wesley, Reading (2003)
Williams, L., Kessler, R., Cunningham, W., Jeffries, R.: Strengthening the Case for Pair-Programming. IEEE Software 17, 19–25 (2000)
Williams, L.A.: The Collaborative Software Process PhD Dissertation, Department of Computer Science. University of Utah, Salt Lake City (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Stotts, D., Williams, L., Nagappan, N., Baheti, P., Jen, D., Jackson, A. (2003). Virtual Teaming: Experiments and Experiences with Distributed Pair Programming. In: Maurer, F., Wells, D. (eds) Extreme Programming and Agile Methods - XP/Agile Universe 2003. XP/Agile Universe 2003. Lecture Notes in Computer Science, vol 2753. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-45122-8_15
Download citation
DOI: https://doi.org/10.1007/978-3-540-45122-8_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40662-4
Online ISBN: 978-3-540-45122-8
eBook Packages: Springer Book Archive