The doctoral dissertations of the former Helsinki University of Technology (TKK) and Aalto University Schools of Technology (CHEM, ELEC, ENG, SCI) published in electronic format are available in the electronic publications archive of Aalto University - Aaltodoc.
Aalto

Empirical Assessment of the Adoption, Use, and Effects of Pair Programming

Jari Vanhanen

Doctoral dissertation for the degree of Doctor of Science in Technology to be presented with due permission of the School of Science for public examination and debate in Auditorium T2 at the Aalto University School of Science (Espoo, Finland) on the 2nd of December 2011 at 12 noon.

Overview in PDF format (ISBN 978-952-60-4413-2)   [372 KB]
Dissertation is also available in print (ISBN 978-952-60-4412-5)

Abstract

Developing large software systems requires team work, which in turn calls for lots of communication within the team. However, programming is typically conducted alone by individual software developers. Pair programming, where two persons actively collaborate in the implementation of a single task, is an alternative way of developing software. It has been proposed as a means to increasing software quality, knowledge transfer and learning, among other things.

This research studied the adoption, use, and effects of pair programming through a literature study and three empirical studies. The literature study was a systematic mapping study of the previous pair programming research in the industry. The empirical studies consisted of two long industry case studies and an experiment where project teams consisting of experienced students conducted a moderately large software development project.

The systematic mapping study analyzed the content of 154 papers. It identified industrially relevant aspects of pair programming and organized them as a pair programming framework containing additional and more detailed aspects of pair programming over the previously published frameworks. The framework grouped all the identified aspects under eighteen factors of pair programming, for which their state of research was analyzed. The analysis showed that of many factors, only a few or no studies had been conducted using rigorous research approaches and data collection methods.

The adoption and use of pair programming were analyzed in the two case studies. In the larger, more established organization, there were issues with adoption, related to both infrastructure and organizing of pair programming. A separate pair programming room was a successful solution to the infrastructural issues. However, lack of time for pair programming due to insufficient organizing of its use, remained an issue at the end of the study.

The effects of pair programming on software quality and developers' knowledge were positive in all three empirical studies, but the development effort for individual tasks increased. The increase in effort occurred mainly when using pair programming for simple tasks or during the beginning of a project, when the developers were learning pair programming and getting to know one another.

This thesis consists of an overview and of the following 5 publications:

  1. Jari Vanhanen and Mika V. Mäntylä. A systematic mapping study of empirical studies on the use of pair programming by professional developers. IEEE Transactions on Software Engineering, submitted for review in March 2011, 17 pages + 15 appendix pages.
  2. Jari Vanhanen, Casper Lassenius, and Mika V. Mäntylä. 2007. Issues and tactics when adopting pair programming: A longitudinal case study. In: Bob Werner (editor). Proceedings of the Second International Conference on Software Engineering Advances (ICSEA 2007). Cap Esterel, France. 25-31 August 2007. Los Alamitos, California, USA. IEEE Computer Society. 70, 7 pages. ISBN 978-0-7695-2937-0. © 2007 Institute of Electrical and Electronics Engineers (IEEE). By permission.
  3. Jari Vanhanen and Casper Lassenius. 2007. Perceived effects of pair programming in an industrial context. In: Paul Müller, Peter Liggesmeyer, and Erik Maehle (editors). Proceedings of the 33rd EUROMICRO Conference on Software Engineering and Advanced Applications (EUROMICRO-SEAA 2007). Lübeck, Germany. 28-31 August 2007. Los Alamitos, California, USA. IEEE Computer Society. Pages 211-218. ISBN 978-0-7695-2977-6. © 2007 Institute of Electrical and Electronics Engineers (IEEE). By permission.
  4. Jari Vanhanen and Harri Korpi. 2007. Experiences of using pair programming in an agile project. In: Ralph H. Sprague, Jr. (editor). Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS 2007). Waikoloa, Hawaii, USA. 3-6 January 2007. Los Alamitos, California, USA. IEEE Computer Society. 274b, 10 pages. ISBN 978-0-7695-2755-0. © 2007 Institute of Electrical and Electronics Engineers (IEEE). By permission.
  5. Jari Vanhanen and Casper Lassenius. 2005. Effects of pair programming at the development team level: An experiment. In: Lucila Carvalho (editor). Proceedings of the 4th International Symposium on Empirical Software Engineering (ISESE 2005). Noosa Heads, Queensland, Australia. 17-18 November 2005. IEEE. Pages 336-345. ISBN 0-7803-9507-7. © 2005 Institute of Electrical and Electronics Engineers (IEEE). By permission.

Keywords: pair programming, empirical research, industry

This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.

© 2011 Aalto University


Last update 2012-03-02