Evaluating Pair Programming with Respect to System Complexity and Programmer Expertise

@article{Arisholm2007EvaluatingPP,
  title={Evaluating Pair Programming with Respect to System Complexity and Programmer Expertise},
  author={Erik Arisholm and Hans Gallis and Tore Dyb{\aa} and Dag I.K. Sj{\o}berg},
  journal={IEEE Transactions on Software Engineering},
  year={2007},
  volume={33}
}
A total of 295 junior, intermediate, and senior professional Java consultants (99 individuals and 98 pairs) from 29 international consultancy companies in Norway, Sweden, and the UK were hired for one day to participate in a controlled experiment on pair programming. The subjects used professional Java tools to perform several change tasks on two alternative Java systems with different degrees of complexity. The results of this experiment do not support the hypotheses that pair programming in… 

Figures from this paper

Investigating the Effect of Pair Programming and Software Size on Software Quality and Programmer Productivity
  • Raymund C. Sison
  • Computer Science
    2009 16th Asia-Pacific Software Engineering Conference
  • 2009
TLDR
The combined results of the two experiments suggest that pair programming might increase software quality without decreasing productivity when projects are sufficiently large (or complex) for the programmers working on them.
Are Two Heads Better than One? On the Effectiveness of Pair Programming
TLDR
This article concentrates on understanding general aspects related to effectiveness, specifically project duration, effort, and quality.
Pair programming: what's in it for me?
TLDR
A longitudinal evaluation of pair programming at Microsoft Corporation finds that 22% pair program or have pair programmed in the past, and most engineers preferred a partner who had complementary skills to their own, who was flexible and had good communication skills.
Understanding the impact of Pair Programming on developers attention: A case study on a large industrial experimentation
TLDR
This paper investigates how Pair Programming affects the way developers write code and interact with their development machine and finds out that Pair Programming helps developers to eliminate distracting activities and to focus on productive activities.
Evaluating methods and technologies in software engineering with Respect to Developers' skill level
TLDR
Claiming that a technology is better than another is problematic without taking skill levels into account, and better ways to assess skills as an integral part of technology evaluation are required.
Analysing the Usage of Tools in Pair Programming Sessions
TLDR
The preliminary results indicate that developers working in pairs devote significantly more time to programming activities than developers working alone.
The Effect of Pairs in Program Design Tasks
TLDR
Pair programming involves-two developers simultaneously collaborating with each other on the same programming task to design and code a solution to solve problem solving and algorithmic design.
Pair vs Solo Programming : Students ’ Perceptions
TLDR
The results show that pair programming technique has greater impact than solo programming in terms of effort and efficiency.
Introducing Programmers to Pair Programming: A Controlled Experiment
TLDR
This work investigates pair programming behaviour of programmers without prior experience in XP and shows that the least liked aspects of pair programming were having to share the screen, keyboard and mouse and having to switch between the roles of driver and navigator.
Pair Programming: Issues and Challenges
TLDR
How different factors may affect experimental outcomes and improve experiment design are discussed to reveal how and why pair programming can be made productive, at least, in controlled situations.
...
...

References

SHOWING 1-10 OF 56 REFERENCES
Two controlled experiments concerning the comparison of pair programming to peer review
When Does a Pair Outperform Two Individuals?
TLDR
The findings indicate that simple design, refactoring, and rapid feedback provide an excellent continuous-design environment for higher productivity in pair programming.
Pair-Programming Effect on Developers Productivity
TLDR
An overview of a pair-programming experiment designed to verify how pair- programming affects programmer's technical productivity and results are given, which show pair-Programming worked well in getting early testable programming results.
Are Reviews an Alternative to Pair Programming?
  • M. Mueller
  • Computer Science
    Empirical Software Engineering
  • 2004
TLDR
This work seeks an alternative to pair programming and shows that a single developer can be assisted by an already known technique with which he produces the quality of pairs with only a fraction of the cost.
Embracing Change with Extreme Programming
TLDR
Rather than planning, analyzing, and designing for the far-flung future, XP exploits the reduction in the cost of changing software to do all of these activities a little at a time, throughout software development.
The Collaborative Software Process
TLDR
Empirical evidence is discussed that demonstrates that software developers working collaboratively using the CSP produce products with higher quality more quickly than those working individually using the PSP.
A Controlled Experiment Comparing the Maintainability of Programs Designed with and without Design Patterns—A Replication in a Real Programming Environment
TLDR
The results indicate quite strongly that some patterns are much easier to understand and use than others, and that design patterns are not universally good or bad, but must be used in a way that matches the problem and the people.
Analyzing the cost and benefit of pair programming
  • F. Padberg, Matthias M. Müller
  • Computer Science
    Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717)
  • 2003
TLDR
Results clearly show that one must consider metrics from different categories in combination to assess the cost-benefit relation of pair programming, and there also are realistic scenarios where the opposite is true.
The collaborative software process(sm)
TLDR
The research contributed a defined, repeatable process, the CSP, for collaborative programming pairs, which has the positive effects of increased problem-solving skills, better designs, augmented learning, and improved team building for collaborative pairs.
Experimental Evaluation of Pair Programming
TLDR
Two variants of individual programming are compared: one of them is based on Personal Software Process that has been proposed by W. Humphrey, and the other is a variant of eXtreme Programming tailored to individuals.
...
...